There are three major parts of a report: Data structure, Data binding and Report layout.

Data Structure

All ported reports always have two tables: InputItems and ReportVariables. All the input items from the original report are generated as fields in the InputItems table, while all the report variables are fields in the ReportVariables table.

Data binding

At runtime, the PPJ Framework takes care of building a DataSet by generating and handling all the SAM_Report* events in the correct order. The dataset is then passed to the List & Label object to print the report.

Report layout

List & Label reports may have a report container with an embedded table, which is the equivalent to the structure of a Report Builder report. Without the report container, List & Label is able to support other powerful features, such as label printing. Depending on the source report it might make sense to keep some items outside of the report container, such as the page header, the page footer and the report header. There are corresponding project properties in order to instruct Ice Porter with the rules to apply during conversion.

Last updated