Handler procedures are not only called from the GUI but can also be invoked through other SQL code.
For example, creating a sales order can be initiated by a user via the GUI or triggered by a received EDI message.
Currently, handlers include output parameters for identity values. This allows the identity—when it serves as the primary key—to be reused, for instance, to create the corresponding sales order lines.
However, there are also models where the primary key is not set as an identity. This can occur, for example, in data models with a company structure, where the primary key is a sequential number within the context of the company.
In such cases, it would also be desirable to make the primary key generated in the handler, and potentially other columns as well, available as output parameters.
A possible solution is to allow, per column in the model, the specification that it is an output parameter—similar to how defaults, layout, and context procedures are configured. By default, this setting could be enabled for all primary key columns and optionally enabled by the developer for non-primary key columns.