Runs a unit of work: opens its transaction, hands it the seal, and records the run in the change log once it
commits. An audited command or job calls run() once per unit of work — a nightly run looping over its invoices
runs one unit of work per invoice, each in a transaction of its own.
The trigger resolves who acts before it starts — the session's person, the job's initiator, the automation actor —
and hands that over as the SdkContext; the runner reads nothing from the container. It refuses a unit of work no
module declares, and a catalogue unit of work outside an automation command.
| Methods | ||
|---|---|---|
public
|
run(WorkUnitInterface $unit, BusinessContextInterface $context, SdkContext $sdk): Outcome
|
# |