Models

The models define the content in a report and contain the data structures necessary to determine the presentation of the objects at the viewer level. The data definition model provides a definition for the report's database and data; the report definition model determines the appearance and layout of the report objects that appear in a report document.

Note: To modify these data structures, and to ensure that changes you make are committed to the server, use an appropriate controller.
Model
Objects
Description
DataDefinition
Fields, Parameters, Groups, Sorts, Filters, CustomFunction
Defines the data structures in the report.
ReportDefinition
Areas, Sections, ReportObjects
Defines the layout and content of the report.
Database
Tables, TableLinks
Defines the database representation in the report.
Rowset
RecordBatches
Defines the unformatted data in the report.
DataDefinition
The DataDefinition model contains the data structures necessary to define the data that the report contains. It is concerned with the following:
  • How data is retrieved.
  • Where and how data is stored.
  • The structures used to store the data while processing it.
  • The structures used to store the data once it is processed.
The report's data definition is not concerned with the layout of the report; it stores no information about graphics, charts, borders, text objects, and so on.
The primary class used to contain the entire data definition is the DataDefinition class. It is the class from which most other data structures in report can be retrieved.
ReportDefiniton
The ReportDefinition model manipulates the appearance of the report objects that you see on the report. Report objects are the visible entities that define a report. That is, they store information such as size, position, and color, all of which form a blueprint that is used by the SAP Crystal Reports Print Engine (CRPE) to construct a formatted report. The functionality to apply formatting options to report objects is implemented in this object model.
The ReportDefinition model uses the DataDefinition model as its data source to define the structure and format of the report. For example, a report can consist of a TextObject object, which displays either static text or text (information) that is taken from a data source (for example, from the DBField object).
Rowset
The Rowset model is the data in the processed report. It stores a set of rows from a table of data it has retrieved and filtered in a flat format.
The RAS SDK retrieves rows from the RAS server in batches of generally equal size. A batch is only retrieved when it is needed or explicitly requested. The batches are stored in the RecordBatches class.
You can use the CreateCursor method of the RowsetController class to create, navigate, and retrieve the rowset object for a report. However, it is designed to retrieve records in batches, rather than to return all records on the system. For example, it could be used to display a certain number of records per web page.