Reports consist of several components. The following table describes how these components work.

Report Components

Component Description

Report Description

A complete description of the report including how data is collected, and how it is presented on paper when the report is run. The report description is stored in the database.

Data Item

Corresponds to a table. To retrieve information from tables, you define data items that refer to tables. When a report uses more than one table, you must set relations between the data items so that you can retrieve and organize the data the way that you want.


In a report that is going to be printed, each data item has one or more sections. A section can be thought of as a block of information that should be printed. The complete report is composed of a number of sections. Some sections are printed only once, for example, headers. Other sections are printed for each record retrieved from the database. The information printed in the sections is composed of controls. The available controls are:

  • Text boxes – for printing the result of the evaluation of any valid C/AL expression, such as the contents of a table field (also used for complex calculations).

  • Labels – for printing static text such as a caption for a column of data.

  • Shapes, images and picture boxes – for printing graphical elements (lines, circles) and bitmap pictures.

Request form

A form that is run before the report starts to execute. You use request forms to enter requests and select options for the report, for example, the sort order or the level of detail that you want in the report.


An attribute of an object such as a report, data item, section and so on. The attribute may be for example, color, size, and whether or not it is displayed. Properties are set in the Properties window of the object.


Certain predefined events that cause the system to execute a user-definable C/AL function. The event triggers the function. The report itself, the data items, the sections, the request form, and the controls all have triggers.

See Also