Dictionary
Updated
A dictionary is master data: customers, items, warehouses. A list of records plus their fields. It has no subtypes. State that changes over time belongs on a document or an information register.
Note
Do not declare
ID. The server creates it (andParentIdwhen the dictionary is hierarchical). Do not declare author fields — see Identity.
A field's type is an EDT or an inline baseType. Integer is Integer, not Int. An optional Boolean is generated non-nullable: unset equals false. Name the flag so the working value is false (IsDisabled, not IsActive).
The event handler may be empty. The owner does not call next. A command on a dictionary appears on the card; it does not need a menu item.
Without a menu item the table exists and the user cannot open it.
Display format ({Name} ({Code})) is the closed-field text of a reference
to this dictionary. Lookup properties (lookupProperties) are the columns of
the dropdown — the designer tab of the same name, also a Lookup tick on each
field. Empty defaults to Code plus the display-format fields. Another model
overlays extras and hides via lookupPropertiesAdd / lookupPropertiesHide
on its extension aggregate. See
the reference lookup.
Objects of this kind#
- Customer
- Bank
- Item
- LegalEntity
- PriceType
- UnitOfMeasure
- ItemUnit
- TaxProfile
- SalesContract — behaves like a catalog on the card; treat it as this kind until a separate contract kind exists
See also#
- EDT
- Number sequence
- Menu
- Model
- Document — operations that point at this catalog