I am integrating Crystal Reports into a Visual Foxpro application using data sources created in the application and connecting with ODBC. Currently this is about 300 reports run as reports, letters, statements, and coupons.
The Report Viewer loads immediately after the data processes but there is a large lag time before the data is populated to the viewer.
Running a report with 265 records the Viewer takes 15 sec. to display the report contents.
I have checked the ODBC Tracking and it is not tracking.
I have upgraded the latest .dll's from Business Solutions.
The methods for opening the Viewer and Reports are:
PUBLIC CRApplication
PUBLIC CRReport
CRApplication=CREATEOBJECT('CrystalRuntime.Application')
CRReport=CREATEOBJECT('CrystalRuntime.Report')
SELECT PRINTSET
*!* PRINTSET STORES THE NAMES OF THE REPORTS IN THE REPORTS DIRECTORY.
IF !SEEK(Thisform.LCREP)
WAIT WINDOW Thisform.LCRep+ 'Not Found in Printset.DBF'
RETURN
ENDIF
Rptform=ALLTRIM(Company.CRYSTLPATH)+ALLTRIM(PRINTSET.CRYSTALREP)
IF FILE(Rptform)
ELSE
=bottom5(rptform+'Not Found')
ENDIF
CRReport=CRApplication.OpenReport(RptForm,1)
THISFORM.OLEControl1.reportsource=CRReport
Thisform.OLEControl1.ViewReport()
DO WHILE Thisform.OleControl1.isbusy
WAIT WINDOW'Please Wait'nowait
ENDDO
Any ideas for improving performance will be appreciated.
Ed
The Report Viewer loads immediately after the data processes but there is a large lag time before the data is populated to the viewer.
Running a report with 265 records the Viewer takes 15 sec. to display the report contents.
I have checked the ODBC Tracking and it is not tracking.
I have upgraded the latest .dll's from Business Solutions.
The methods for opening the Viewer and Reports are:
PUBLIC CRApplication
PUBLIC CRReport
CRApplication=CREATEOBJECT('CrystalRuntime.Application')
CRReport=CREATEOBJECT('CrystalRuntime.Report')
SELECT PRINTSET
*!* PRINTSET STORES THE NAMES OF THE REPORTS IN THE REPORTS DIRECTORY.
IF !SEEK(Thisform.LCREP)
WAIT WINDOW Thisform.LCRep+ 'Not Found in Printset.DBF'
RETURN
ENDIF
Rptform=ALLTRIM(Company.CRYSTLPATH)+ALLTRIM(PRINTSET.CRYSTALREP)
IF FILE(Rptform)
ELSE
=bottom5(rptform+'Not Found')
ENDIF
CRReport=CRApplication.OpenReport(RptForm,1)
THISFORM.OLEControl1.reportsource=CRReport
Thisform.OLEControl1.ViewReport()
DO WHILE Thisform.OleControl1.isbusy
WAIT WINDOW'Please Wait'nowait
ENDDO
Any ideas for improving performance will be appreciated.
Ed