Home » Blog

Low Code Business Workflows: What is this all about?

 · 4 min · Sofia Rodrigues

Who said logic needs code? Meet Business Workflows - drag, drop, done.

Low Code Business Workflow V11.1

This post takes a closer look at the Business Workflows feature. It promises to bring simplicity and power to designing logic in Critical Manufacturing MES without writing code. It’s a feature that makes life easier for more functional profiles and citizen developers alike.

So the question is: how easy is it, really? Let’s take a look.

Introduction to Business Workflows

Before this feature existed, implementing straightforward automatic actions required scripting or configurations that could be out of reach for non-technical users.

Business Workflows changed that. It allows you to model and automate logic using a drag-and-drop visual interface, as it creates a DEE action to be triggered by business events such as Material Dispatch, Release, Abort, Step Change, just to name a few, or even Resource State changes.

From there, it’s possible to perform a variety of operations represented by tasks, for example: Send Material to Rework, Terminate Material, Ship Material and Resource State Change.

These tasks can be combined and sequenced visually, enabling quick implementation of logic that would otherwise require code.

The result? Less dependency on developers which all parties are thankful for. 😊

Things to look out for

Before putting this feature to use, here are a few key things to look out for:

  1. Available triggers

    Business Workflows can be triggered by business events such as:

    • Material.Dispatch.Post or Material.Dispatch.Pre
    • Material.ChangeStep.Post or Material.ChangeStep.Pre
    • Material.Abort.Post or Material.Abort.Pre
    • Resource.ChangeState.Post or Resource.ChangeState.Pre

    Each event corresponds to a specific action happening in the system, so choosing the right trigger is essential to ensure your workflow behaves as expected.

  2. Available tasks

    Once the trigger is defined, you can build logic using predefined tasks, including:

    • Logic Tasks: If
    • MES Material Tasks: Change Flow and Step, Dispatch, Hold, Move Next, Retrieve, Rework, Ship, Store, Terminate, Track In, Track Out.
    • Notification Tasks: Create Notification
    • Resource Tasks: Change State

    These tasks are designed to handle common MES actions and can be combined to create powerful workflows without code.

    If you’d like to explore more examples and see a scenario for each task, check out the Product Documentation.

  3. Understand the syntax

    Referencing data within workflows follows a specific structure based on C#. To reference an input or output this is the syntax: {{$task_name.input_or_output_name}}

    Example: To reference the input “Material” of a task with the name “MaterialTrackOutPost_1”, the syntax would be: {{$MaterialTrackOutPost_1.Material}}

    This syntax ensures that the correct data flows through your workflow logic.

    Check out the Product Documentation for more details on the syntax Product Documentation.

  4. Which information is available

    Data used in tasks can either be hardcoded or accessed through direct properties of the entities passed to them. This means:

    • Information available: Properties like Material.Name, Resource.State, Material.Type.Name etc.
    • Information not available: Inherited Product Characteristics and attributes.

Let’s see it

In the following videos we will walk through a use case. First we will see the modeling phase, and then we will see it working.

Consider the scenario with the following requirement: if a Material of type Production is dispatched and the primary quantity of that Material is below 10 units, the production of the Material should be prevented and two actions should take place:

  • The Material should be put on hold with the reason “Quantity Below Minimum”
  • A notification should be sent indicating that the Material has been prevented from starting production. This notification must have the information about the Product, Step, and Facility associated with the Material.

Let’s build the Business Workflow together: Business Workflow Model

Let’s see the magic happening:

Business Workflow Execution

What makes this feature so helpful

Here are a few things that stand out:

  • It’s low-code. Drag tasks, set conditions, map inputs. That’s it.
  • It’s clean. Visual logic is easier to understand and maintain.
  • It’s functional analyst friendly. You don’t need to write scripts or debug code.
  • Bonus: you can even override task settings using dynamic inputs, giving you flexibility to personalize content like notification messages without editing core logic.

Final thoughts

This post is a short intro into a feature that packs a lot of potential. Whether you’re automating production flows, improving exception handling, or simply reducing manual steps, Business Workflows gives you the tools to do it with ease.

It’s not just about building logic visually - it’s about putting that power in the hands of more people.

If you’d like to go deeper, check out the product documentation or explore the Business Workflow tutorial.

Here’s a Tutorial and the User Guide on Business Workflows.




Author

Hi! My name is Sofia Rodrigues. ☺️

I joined the Critical Manufacturing family back in the striking year of 2020 as an MES Consultant/Functional Analyst. In 2023, I transitioned to the Product Documentation team, where I now focus on designing and creating content.

You can check me on LinkedIn

Skills: Functional Analysis | System Testing | User Training | Technical Writer

Sofia Rodrigues
MES Consultant