Skip to content

Metadata tree

nouverbe edited this page Oct 7, 2026 · 1 revision

The metadata tree

The tree on the left of the designer is the whole configuration. Its root is the configuration itself, with its name and properties. Under it are the Common objects that belong to no single business object, then the business objects in the order they are usually read.

Business objects

Group What it holds Example
Constants One value each, for the whole base Company name, base currency
Catalogs Lists of things, flat or hierarchical, with predefined items Products, clients, warehouses
Documents Events with a date and a number; posting writes them into registers Receipt, invoice, payroll sheet
Enumerations A closed set of values, fixed in the configuration Order status, VAT rate kind
Data processors Tools with forms and code, but no stored data of their own Import, bulk update
Reports Questions about the data, with their own composers Stock balance, sales by month
Charts of characteristic types Kinds of analytics a value can be "Analytics of an account"
Charts of accounts Accounts, their hierarchy and what each is broken down by A general ledger
Charts of calculation types Kinds of accrual and deduction, and how they interact Salary, bonus, sick leave
Information registers Facts by key, optionally over time Prices, exchange rates, an employee's position
Accumulation registers Quantities and amounts that add up to balances or turnovers Stock, settlements
Accounting registers Double-entry bookkeeping over a chart of accounts The ledger
Calculation registers Payroll results over periods: displacement, base, recalculation Accruals
Sequences The order documents were posted in, for reposting from a point Cost calculation order

Which register to choose:

  • a value that changes at points in time (a price, a rate, a position) → information register;
  • amounts that add up (stock on hand, what a client owes) → accumulation register;
  • double entry → accounting register over a chart of accounts;
  • accruals that cut and feed each other (sick leave cuts salary, a bonus is a share of salary) → calculation register over a chart of calculation types.

Inside an object

Open any object and it has some of these groups:

Group What it is
Attributes Its fields. Each has a type: a string, a number, a date, a reference to another object…
Tables Its tabular sections: the lines of an invoice, the members of a group
Dimensions / Resources For registers: what a record is keyed by, and what it holds
Enum values For enumerations: the values
Forms Windows to show it in; without them the platform generates one. See Forms
Commands Actions the object offers on its forms and in the navigation
Templates Print forms and other layouts
Composers For reports: what to read and how to group and total it
Modules The object module (code run when the object is written or posted) and the manager module (code for the whole kind). See Modules and the language

Common

Group What it holds
Common modules Code shared by the whole configuration
Common forms Forms that belong to no object
Common commands, Command groups Actions and how they are grouped in the interface
Common templates Layouts that belong to no object
Scheduled jobs, Predefined jobs Code run on a schedule, in a session of its own
Event handlers One handler for the same event of many objects
Session parameters Values set at login and read by code for the rest of the session
Functional options Switches that show or hide parts of the configuration
Common attributes One attribute added to many objects at once
Pictures Icons and images
Sections The navigation panel: what users see first
Roles Rights per object and operation. A role either grants or restricts; row-level rules live in the role's code
Languages The languages captions are written in

How the tree becomes tables

Each stored object becomes database tables, and each attribute becomes a column. When you apply (Save metadata), the designer compares the configuration with the base and changes only what differs. You never write table definitions by hand.

Clone this wiki locally