--- pdfexport: true alias: tutorials-futureactions timetoread: true tutorial: full glightbox: false description: "Critical Manufacturing MES Future Actions automate processes by triggering actions based on material flow and context, covering definition, precedence, and" --- # Future Actions **Future Actions** in Critical Manufacturing MES are predefined actions that will be triggered when a specific context is met during the journey of a **Material** through a process **Flow**. These actions facilitate operations by automating activities such as changing **Flow** or **Step**, placing **Materials** on hold, executing **Rules**, setting **Services** or **Resources**, splitting or merging **Materials**, and more — all based on specific triggers. ## Overview The goal of this tutorial is to provide a comprehensive understanding of how **Future Actions** work within Critical Manufacturing MES, by covering the following key topics: - **Definition**: Learn how to define **Future Actions** that are directly tied to individual **Materials**, or set at the **Step** level. - **Precedence**: Understand how **Future Actions** behave when defined at multiple levels. - **Future Action Types**: Get familiar with the different types of **Future Actions** available in the system. - **Manage vs Special Manage**: Learn how to manage **Future Actions**, including how to create, edit, and delete them. - **Scenarios**: Watch guided videos demonstrating examples of configuring and executing **Future Actions**. ## Topics ### Definition The **Future Actions** section in the Material Details View allows users to view planned actions specifically defined for the **Material**, which will be triggered when the appropriate context is met. Also, the **Future Actions** section in the Step Details View displays actions defined at the **Step** level, which will be applied to all **Materials** passing through the step under the right conditions. From both views, **Future Actions** can be managed and edited. Additionally, in the Material Details View, even terminated **Future Actions** can be displayed for reference. === "Material Future Actions" ![MaterialFutureActions](images/future_actions_1.png) === "Step Future Actions" ![StepFutureActions](images/future_actions_2.png) !!! note "For more information, see these pages" - Material - [[manage-material-future-actions]] - Step - [[user-guide-manage-future-actions]] - [[user-guide-perform-future-action]] ### Precedence **Future Actions** can be defined at the **Material** or **Step** level. When multiple actions are configured for the same context, the system needs to determine which one should be executed, this is where precedence comes into play. Precedence defines the execution priority of overlapping actions. By default, Experiment-level **Future Actions** take precedence, meaning they will override actions defined at the **Material** or **Step** level if a conflict occurs. However, it is possible to manually adjust this behavior. When configuring a **Future Action** on a **Material** or **Step**, selecting the `High` precedence option in the Action details will elevate its priority above the default. ![Future Actions Precedence](images/future_actions_3.png) !!! info You can find the predefined **Future Actions** precedence keys listed here: [[user-guide-future-actions-precedence-keys]]. ### Future Action Types The system supports a wide range of **Future Actions** that can be triggered based on defined conditions. These actions are used to facilitate the production process and user experience, by triggering common tasks such as changing **Flow** and **Step**, setting **Resources** or splitting **Materials**. The following table outlines the available types of **Future Actions**, indicating whether each action can be configured at the **Step** or **Material** level, along with relevant notes or requirements for its execution. | Future Action | On Step Entity | On Material Entity | Comments | |------------------------------|----------------|--------------------|--------------------------------------------------------------------------------| | **Change Flow And Step** | Yes | Yes | Configuration of **Flow** and **Step** is required | | **Collapse** | Yes | Yes | Applicable for Sub **Materials** | | **Create Send-Ahead Run** | Yes | Yes | | | **Execute Rule** | Yes | Yes | Configuration of the **Rule** is required | | **Hold** | Yes | Yes | Configuration of the Hold **Reason** and optionally a Release Role is required | | **Merge** | No | Yes | Execution can be automatic or manual | | **Send Mail** | Yes | Yes | | | **Set Note** | Yes | Yes | | | **Set Resource** | Yes | Yes | Configuration of the **Resource** to be used is required | | **Set Service** | Yes | Yes | Configuration of the **Service** to be used is required | | **Skip Process** | No | Yes | **Step** should be skippable | | **Split** | No | Yes | Execution can be automatic or manual | | **Split For Step** | No | Yes | Execution can be automatic or manual | | **Temporary Off Flow** | No | Yes | Configuration of the Off Flow **Reason** and **Flow** and **Step** is required | | **Terminate** | Yes | Yes | Configuration of the Loss **Reason** with Terminate option is required | ### Manage vs Special Manage Within both the **Step** and **Material Detail Views**, users have access to a Manage **Future Actions** option. This functionality allows users to create, edit, or remove **Future Actions** associated with the selected **Step** or **Material**. It is typically used to manage actions that the user has previously created. In addition, the system provides a Special Manage **Future Actions** option. This extended capability enables users to manage **Future Actions** that were created by other users. However, this option is only available if the user has been granted the `FutureAction.SpecialEdit` feature. !!! note "For more information, see these pages" - [[user-guide-special-manage-material-future-actions]] - [[user-guide-special-manage-future-actions]] ### Scenarios This section includes a series of short video demonstrations showcasing how to create and manage **Future Actions** at both the **Step** and **Material** levels. These examples illustrate practical use cases and guide you through the expected behavior and execution logic. #### Create Future Actions on a Step In this scenario, we walk through a process flow composed of five **Steps**, where the first is a line **Step**, each configured with specific **Future Action**: - Step 1 (Line Step): Collapse action triggered when the **Material** is Processed - Step 2: Set Note when the **Material** is Queued, and Hold when it is Processed - Step 3: Set **Service** on when the **Material** is Queued, and Execute **Rule** when it is Processed - Step 4: Set **Resource** when the **Material** is Queued, and Detach when it is Processed - Step 5: Change **Flow** and **Step** when the **Material** is Queued - New Flow Step: Terminate action triggered when the **Material** is Queued Watch how this scenario unfolds in the video below. {% set video_id = '35670a425136160a526215e2f5a90888' %} {% include-markdown 'includes/cloudflare_stream.md' %} #### Create Future Actions on a Material In this scenario, the **Material** follows a **Flow** composed of three **Steps**, with configured **Future Actions**: - Step 1: Send to Temporary Off Flow when the **Material** is Processed. - Off Flow Step: Split the **Material** when the it is in the Queued state. - Step 2: Skip Process, followed by an Automatic Merge when the **Material** is Processed. - Step 3: Split for **Step** action is triggered. Take a closer look at how this scenario plays out in the video below. {% set video_id = 'e3cc7b8d86509fb451937a70979b34c1' %} {% include-markdown 'includes/cloudflare_stream.md' %}