Runtime recipes
Documentation status: guide — see Maturity and evidence.
These recipes summarize recurring runtime operations while keeping implementation classes out of the public surface.
Create a conceptual object
item := ObjectsContainer.CreateObjectItem('app#work_item', 1, '');
item.Name := 'Example';
item.PostData();
The concept identifier determines what is created. The developer does not construct a historical runtime class directly.
Resolve a concept
Resolve a class/concept by its stable conceptual identifier when an action must work at type level. Keep the identifier in configuration or metadata rather than embedding implementation class names.
Work with a provider through a DataSet
items := Self.PageControler.DataSetsManager.DataSetByName('Items');
items.Refresh();
The view works through the DataSet/provider abstraction rather than owning a database, HTTP, or RPC protocol directly.
Persist through the normal object contract
item.Name := 'Updated';
item.PostData();
Page validation and model constraints should run through the normal lifecycle instead of being bypassed by a direct storage write.
Execute a process
process := ObjectsContainer.CreateObjectItem('app#approval_process', 1, '');
process.Subject := item;
process.Start();
The process owns cross-object coordination.
Build/send events
Prefer declared event mappings and PageControler/runtime event facilities. Carry semantic source, sender, and parameters explicitly; do not encode component ids or implementation classes in event names.