Jump to content
Software FX Community

Please Help !!!


User (Legacy)

Recommended Posts

Hi!

The application I'm working on can extract data from different sources (like

databases or text files) and then plot specified (by the user) columns and

records on charts. Then, the charts may be printed.

Such operations may be automated by running the app by a scheduler. But this

means that the source data may vary between runs. Particularly, the source

DB may have no records or the source file become empty (no columns).

In such a case the app have to display an empty chart, either a chart with

non-zero number of series and zero number of points or a chart with "no data

available" text only.

To achieve this, I do the following.

// create the chart control

...CreateInstanceLic(...&m_pChartFX);

...

// clear series legend

m_pChartFX->ClearLegend((CfxLegend)CHART_SERLEG);

if (nSeries == 0 || nPoints == 0)

{

// empty chart

m_pChartFX->ClearData(CfxDataMask(CD_VALUES|CD_XVALUES));

m_pChartFX->LegendBox = AFX_OLE_FALSE;

return;

}

// pass extracted data to the chart

...

then I create and show a chart window, if it is not already created

m_pChartFX->CreateWnd(...);

And this is the point where the Chart FX library crashes with a Divide by

Zero exception.

I've posted the sample MFC application (see ChartFX crash post) but nobody

(especially tech. support) replied.

Not hoping to get a reply from the tech support any more, at least, could

somebody please suggest something to change (or add) in the code to work

around the crash.

Please note that I can't just do nothing (i.e. CreateInstanceLic followed by

immediate CreateWnd) because the application allows users to re-extract

data. That is, a user may extract data and create a chart from them

(non-zero number of points and series at this time). And then, after some

period of time, he/she may request the app to re-extract data and update the

chart. But at this time the data source may change to contain no records, so

the app will have to "clear" the chart somehow.

Thanks in advance,

Serge

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...