There are eight basic objects available in Microsoft Dynamics
NAV 2009.
General C/SIDE Concepts
Terminologies
·
Tables
·
Forms
·
Pages
·
Reports
·
Dataports
·
XMLports
·
Codeunits
·
MenuSuites
Tables: Used to describe
how data is stored in the database and how it is retrieved. Understanding
tables is the key to using all of the other objects in C/SIDE.
Forms: Used to display
data to users in the Microsoft Dynamics NAV Classic client. Forms allow users
to add records to a table, and to view and modify records.
Pages: Used to display
data to users in the Microsoft Dynamics NAV RoleTailored client. Pages allow
users to add records to a table, and to view and modify records.
Reports: Used to summarize
and print detailed information by using filters and sorting, which are selected
by the users.
Dataports:
Used to export or import table data in text format. Not supported in the
RoleTailored client.
XMLports: Used to export or
import table data in XML format. In the RoleTailored client, XMLports replace
Dataports as a means to export and import data, even in text format.
Codeunits:
Used to organize and group code which is written by the developers.
MenuSuites: Used
to contain menus that are displayed in the Navigation Pane in the Classic
client and the Departments page in the RoleTailored client.
Use the…
|
When
working on…
|
Table
Designer
|
Tables
|
Form
Designer
|
Forms
|
Page
Designer
|
Pages
|
Report
Designer
|
Reports
|
Dataport
Designer
|
Dataports
|
XMLport
Designer
|
XMLports
|
C/AL
Editor
|
Codeunits
|
Navigation
Pane Designer
|
MenuSuites
|
The eight
application object types are based on some general concepts. Some of these
concepts are restricted to one type of application object whereas others apply
to several types.
The following table
summarizes how the application objects are related to these general concepts
and explains for what each type of application object is used.
Application
Object Type
|
Uses
|
Uses Concepts
|
Table
|
A
table is used for storing the actual data. Typically a business application
has a Customer table that stores information such as name, address, phone
number, and contact person for each customer.
|
Properties,
Fields,
Field
Groups, Keys,
C/AL,
Triggers
|
Form
|
A
form is used to access the
information
contained in tables in the Classic client. Forms are used when users enter
new information and when they view
existing information.
|
Properties,
C/AL,
Controls,
Triggers
|
Page
|
A
page is used to access the information contained in tables in the
RoleTailored client. Pages are used when users enter new information and when
they view
existing
information.
|
Properties,
C/AL,
Controls,
Triggers
|
Report
|
A
report is used to present data that contains summary information. For
example, use a report to print a list of customers.
|
Properties,
C/AL, DataItems, Sections, Controls, Triggers,
RequestForm,
RequestPage, Client Report Definition (
RDLC)
report layout.
|
Dataport
|
A
dataport is used to import and export information to and from other programs
in a text format (for example, a commaseparated text
file). Dataports are used only
in the Classic client.
|
Properties,
C/AL, DataItems,
RequestForm,
Triggers
|
XMLport
|
An
XMLport is used to import and export information to and from other programs
in an XML format. XMLports simplify and streamline the process of exchanging
data in XML documents. In the RoleTailored client, XMLports are also used to
import and export information in a text format.
|
Properties,
C/AL,
NodeNames, NodeTypes,
XMLport
Events,
RequestPage
|
Codeunit
|
A
codeunit contains user-defined functions
written in C/AL code. These functions can be used from the other objects in
the application. This minimizes the size of the application because the same
code can be reused.
|
C/AL,
Triggers
|
MenuSuite
|
A
MenuSuite contains the menus displayed
in the Navigation Pane and in the Departments Page.
|
Menu
Node, Menu Group, Menu Item
|
The following shows
descriptions of several terms in the third column:
Properties: Properties control
the appearance and behavior of application objects and all sub-objects.
Properties are used to control the appearance of data, specify default values,
specify colors, and define relationships.
C/AL: C/AL is the
language used for writing functions in C/SIDE. In the previous table, C/AL
refers to functions written in this language.
Triggers: When specific
things happen to the application objects, the system automatically activates a
trigger. Inside a trigger, developers can add C/AL code if they want to modify
the default behavior of the application object or extend its functionality.
Fields: A field is the
smallest unit of information in the database. A field typically stores
information such as a name or a number.
Keys: A key defines the
order in which data is stored in the tables. Speed up searches in tables by
defining several keys to sort information in different ways.
Controls: Controls are
objects on a form or report that display data, perform actions or decorate the form.
Typical examples are command buttons and text labels.
Request Form: A
request form is a form used in a report or a dataport. Before a report or a
dataport is run, a request form appears to let the user specify filters and
options for the report or the dataport.
Request Page:
A request page is the request form equivalent in the RoleTailored client.
Data Items: A data item is a
building block used for defining a model of data when creating a report or a
dataport. By using a hierarchy of data items, developers define which data to
include in the report. A data item represents a table and when a report is run,
the system cycles through the records in the associated table.
In a report, a data item can have one or more sections.
Sections: A section is a substructure
of a data item. A section is where controls are placed to display information.
Generally, sections are used to define the body, header, and footer in the
report.
NodeName: NodeNames are used
to specify the name of a node in an XML document. The name specified is
inserted in the NodeName field
of the XMLport Designer of the element or attribute in question.
NodeTypes: This property is
used to specify whether an XML object is an element or an attribute.
Menu Node: A Menu Node can be
either a Menu Group or a Menu Item.
Menu
Group: A Menu Group is a collection of Menu Nodes.
Menu Item: A Menu Item is the
lowest level of the menu tree. It is associated with a specific application
object.