0
0
mirror of https://github.com/fralx/LimeReport.git synced 2024-12-23 16:22:58 +03:00

Fix #48 the error about "initDatasources"

This commit is contained in:
Arin Alexander 2016-09-18 12:05:46 +04:00
parent 2cc1cc0d13
commit 7c4d3bf8da
2 changed files with 13 additions and 1 deletions

View File

@ -168,6 +168,16 @@ void ReportRender::initDatasources(){
}
}
void ReportRender::initDatasource(const QString& name){
try{
if (datasources()->containsDatasource(name))
datasources()->dataSource(name)->first();
} catch(ReportError &exception){
QMessageBox::critical(0,tr("Error"),exception.what());
return;
}
}
void ReportRender::renderPage(PageDesignIntf* patternPage)
{
m_curentNameIndex = 0;
@ -191,7 +201,7 @@ void ReportRender::renderPage(PageDesignIntf* patternPage)
BandDesignIntf* lastRenderedBand = 0;
for (int i=0;i<m_patternPageItem->dataBandCount() && !m_renderCanceled;i++){
lastRenderedBand = m_patternPageItem->dataBandAt(i);
initDatasources();
initDatasource(lastRenderedBand->datasourceName());
renderDataBand(lastRenderedBand);
if (i<m_patternPageItem->dataBandCount()-1) closeFooterGroup(lastRenderedBand);
}

View File

@ -85,6 +85,7 @@ public slots:
private:
void renderPage(PageDesignIntf *patternPage);
void initDatasources();
void initDatasource(const QString &name);
void initRenderPage();
void initVariables();
void clearPageMap();
@ -169,6 +170,7 @@ private:
QList<PagesRange> m_ranges;
QVector<BandDesignIntf*> m_columnedBandItems;
unsigned long long m_curentNameIndex;
};
} // namespace LimeReport
#endif // LRREPORTRENDER_H