Reporting Support

The PPJ Framework supports all SAM_Report messages with the exception of SAM_ReportNotify. See Ported Reports for more information about the structure of ported reports.

With the support of multiple reporting engines, starting from PPJ Framework 2009, the engine to use is automatically recognized using the report file extension:

  • .rpt for Crystal Reports

  • .lst for List & Labels

  • .rdlc for Reporting Services

  • .mrt for Stimulsoft Reports

However, when the application uses the pre-existing .qrp file extension the library always uses the default reporting engine, which is Crystal Reports. The default engine can be changed using the syntax:

Sal.SalReportType = typeof(LLReport);

The engine can be switched at any time and multiple engines can run in the same application.

Configure the Reporting Engine

For known extensions the PPJ Framework always selects the reporting engine automatically.

However, when the file name argument passed to the Sal.ReportPrint/View() function call ends with ".qrp", the reporting engine is selected using the type saved in Sal.SalReportType.

Sal.SalReportType can be set programmatically or externally through the application's configuration file. See example below:

<?xml version="1.0"?>
<configuration>
   <appSettings>
        <add key="Sal.SalReportType" value="PPJ.Runtime.Reports.RS.SalReport, PPJ.Runtime.Reports.RS.46"/>
   </appSettings>
</configuration>

The external app.exe.config file to select the default reporting engine can be used to change it without recompiling the application.

List & Labels Specific Properties

Each supported reporting engine may have additional settings that are specific to the engine. All settings can be changed by code using static properties on the SalReport class. Some settings are also supported externally in the App.config file.

For List & Labels we have the following properties:

<?xml version="1.0"?>
<configuration>
   <appSettings>
        <add key="ListLabel.LicensingInfo" value="{Your LL License String}" />
        <add key="ListLabel.ListLabelType" value="combit.ListLabel15.ListLabel, listlabel15.unicodeVS2005" />
   </appSettings>
</configuration>

QuickReport Library

The QuickReport library (qckrpt.apl) is not supported in the PPJ Framework.

The library is based on using Report Builder as an ActiveX object and there is no direct equivalent that can be used for automated porting.

Last updated