Typically, form letter reports are using the preprocessing logic in their data providers, extending the SrsReportDataProviderPreProcess
class.

Example – SalesPackingSlip
As one result of this, all changes in temporary data source tables in the data provider class should be carried out with a separate database connection – just as in standard code.
This separate database connection object is defined in the preprocessing base class and is used by the standard code for each report table.

Example – SalesPackingSlip
Important
If this concept is not used for extensions to the data providers, several issues (especially around blocking) can arise.