You use C/SIDE to create accounting and business management applications. A C/SIDE application consists of different types of application objects that are tied together to form a coherent whole.

Application Objects

The different types of C/SIDE application objects are based on some general concepts. Some of these concepts are restricted to one type of application object, but others apply to several types. When you understand these fundamental concepts, you have a good foundation for creating your own applications.

The following table shows what each type of application object is used for.

Application object type Description C/SIDE concept


A table is used for storing the actual data. Typically a business application will have a Customer table that stores information such as name, address, phone number, and contact person for each of your customers.

Properties, Fields,

Keys, C/AL


A form is used to access the information in your tables. Forms are used both when you enter new information and when you view existing information.

Properties, C/AL,



A report is used to present data that contains summary information. For example, you will use a report to print a list of customers.

Properties, C/AL,

Controls, DataItems,

Sections, Templates,



A dataport is used to import and export information to and from other programs, such as a comma-separated file from a spreadsheet.

Properties, C/AL, DataItems, RequestForm

XML port

An XMLport is used to import and export data in XML format.

Properties, C/AL


A codeunit contains user-defined functions written in C/AL code. These functions can be used from the other objects in your application. This minimizes the size of the application because the same code can be reused.



A MenuSuite object contains the menus that are displayed in the navigation pane.



Pages have the same functionality as forms but are intended to run on the RoleTailored client. A page can be role tailored to suit a users needs.

Properties, C/AL

Description of C/SIDE Concepts


Properties control the appearance and behavior of the application objects and all their sub-objects. Properties are used to control the appearance of data, specify default values, specify colors, and define relationships.


C/AL is the language you use to write functions in C/SIDE. In the previous table, "C/AL" refers to functions written in this language.


A trigger is a mechanism that is built into an application object. When certain actions are performed on the application object, the trigger initiates an action. You can add your own C/AL code to the trigger to modify the default behavior of the application object or extend its functionality.


Keys define the order in which data is stored in your tables. You can speed up searches in tables by defining several keys which sort information in different ways.


A field is the smallest building block in your database. A field typically stores information such as a name or a number.


Controls are objects on a form or report that display data, perform actions, or enhance the appearance of the form, such as command buttons and text labels.

Request Form

A request form is a form that is used in a report. Before a report is run, a request form is displayed to let the user specify filters and options for the report.


A template defines the overall layout of a report.

Data Items

A data item is a building block for defining a model of your data when you create a report. You use a hierarchy of data items to define which data the report will contain. A data item represents a table, and when you run a report, the system cycles through the records in the associated table. A data item can have one or more sections.


A section is a substructure of a data item, where you place controls to display information. You will typically use sections that define the body, header, and footer in your report.

See Also