Workflow#

Configurable approval / routing flows. Used most heavily by ECO approval, PO approval, and any tenant-defined document that requires sign-off before it releases.

Structure#

  • WFConfigHelper — the workflow definitions (steps, approvers, transitions).
  • WFHeaderHelper — the header of a specific workflow instance running against a document.
  • MnxWFMetaDataHelper — metadata about workflow-eligible document types.

Flow#

  1. A workflow-eligible document is created (e.g. an ECO).
  2. WFHeader is opened and the first step is set based on the WFConfig.
  3. The approver at the current step sees the document in their queue.
  4. Approve → transition to the next step; Reject → route back per the config.
  5. Final approval releases the document (calls the appropriate module helper, e.g. ECMainHelper for ECO application).

Business rules#

  • A workflow is a policy, not a lock — direct changes to the underlying document are still policed by the module’s own rules.
  • Approvers are resolved dynamically per step (user, role, or group) — the queue view respects the resolved list at read time.
  • A workflow definition change does not retroactively apply to in-flight instances.

Where it lives#

LayerFile
ControllerWFHeaderController, WFRequestController, WFSetupController
HelperMnxEFModel/Helper/Workflow/WFConfigHelper.cs, WFHeaderHelper.cs, MnxWFMetaDataHelper.cs
RelatedECO