1952354 - Poor Btrieve performance in CR 2008 SDK

SAP Knowledge Base Articles - public

1952354 - Poor Btrieve performance in CR 2008 SDK


Running report in a .NET application and connecting to a Pervasive Data source using the native Btrieve Driver can have very poor performance.


Crystal Reports for Visual Studio - 2008, 2010 and 2012

Reproducing the Issue

  1. Open existing reports that uses the Btrieve PC database driver in CR Designer
  2. Verify the report and save.
  3. In .NET application set location to some of the DDF's to a different folder structure and preview.


Due to changes in our database dll's we have threaded the connections to each table

The results of these changes cause a performance issue when previewing at runtime due to linking.


To work around this performance issue convert your reports to use a System ODBC DSN connection using the Pervasive ODBC driver.

ODBC will link the tables in it's own methods and performance will be significantly improved.

This issue has been tracked ADAPT01681029 and the results are as best as we can do.

One other registry key may help also:

  • HKCU\Software\Business Objects\Suite 12.0\Crystal Reports\Database\QueryEngine\AllAtOnce_BackwardCompatible
  • Add String Value "AllAtOnce_BackwardCompatible" under HKEY_LOCAL_MACHINE\SOFTWARE\ Business Objects\Suite 12.0\Crystal Reports\Database\QueryEngine.
  • When setting 1 to the value, we can see the old behavior.
  • When setting 0 to the value, we can see the new behavior.
  • You will need to create the key under both trees.


Crystal Reports for Visual Studio, Pervasive, Btrieve, performance, multiple data sources , KBA , BI-DEV-NET , BI Software Development Kits (SDKs) - .NET or Other , Problem


SAP Crystal Reports, developer version for Microsoft Visual Studio ; SAP Crystal Reports, version for Visual Studio .NET 2008