Managing a Workflow Group

Managing a Workflow Group

 This section includes the following topics:    

Opening a Workflow Group Configuration

You create a new workflow group configuration from the Build view of the Desktop User Interface. To open the workflow group configuration, click Build → New Configuration. Select Workflow Group from the Configurations dialog.

To open an existing workflow group configuration, click Build and select the workflow group configuration in the Configuration Browser, or right-click a workflow configuration and then select View Configuration.

Creating a Workflow Group

You create a workflow group by adding a workflow or a workflow group as a member to the group.

To create a workflow group:

  1. In the Available To Add pane, select a workflow or a workflow group.

Note!

An invalid workflow member will not affect the validity of the workflow group.

  1.   Click the button. The member is added to the Group Members list.

Note!

Batch, task, and system task workflow members can be combined in a workflow group, but real-time workflow members can only be combined with other real-time workflow members. However, for real-time workflows, we recommend that only one workflow is included in each workflow group, unless you have selected the Continuous Workflow Execution checkbox in the Execution tab, which will allow you to have multiple real-time workflows in the same group.

  1.   Click the Save As button and give the new workflow group a name.

Removing a Member from a Workflow Group

When you remove a member from a workflow group, the member does not cease to exist:

  • A workflow member may still be running according to its configuration, or as a member of a workflow group in the system.

  • A workflow group member may still run as a member of another workflow group in the system.

  To remove a member from a workflow group:

  1. Select the member that you want to remove in the Group Members list in the Members tab in workflow group configuration. 

  2. Click the (Remove) button. You will get a question if you are sure you want to remove the member.

  3. Click Yes if you are sure. The member is removed from the group.

Executing a Workflow Group

Execute the Workflow group either manually, from the Execution Manager, see Execution Manager or, schedule an automatic execution - see the section below, Scheduling.

Configuring a Workflow Group

Configuring a workflow group includes:

  • Planning members' execution order

  • Setting the workflow group execution parameters

  • Setting the workflow group scheduling parameters 

Members' Execution Order

When planning the execution order of the members in your workflow group, use the Prerequisites column in the Group Members table. By doing so you ensure:

  • A linear execution

  • A certain execution order

  • That every member is fully executed before the next member starts running

Note!

If you use the Continuous Workflow Execution setting, you can override this behavior by allowing scheduled workflows to execute even though not all workflow members are finished. See the section below, Execution, for further information. 

To configure members' execution order:

  1. Select a member in the Group Members pane in the Members tab.

  2. Click the Edit button.
    The Prerequisites dialog box opens.

    WFgroupEditorPrereqs.png
    The Prerequisites dialog box
  3. Select the checkboxes for the members that the current member should follow.

  4. Click OK. See the image below for an example of how it may look.

    WFgroupEditorExePrereqs.png
    Workflow Group members' execution prerequisites


You can rearrange the members' order of appearance in the Group Members list, by using the Up and Down buttons. When rearranging a list, that is already configured with Prerequisites you notice that the Prerequisites parameter is removed and a yellow warning icon appears instead. Note that this does not affect the workflow group validity. To remove the notification sign, either open the Prerequisites dialog box and click OK, or - to remove all the notification signs - save the workflow group configuration, and reopen it.

Execution

Click the Execution tab in the workflow group configuration.

WFgroupEditorExeTab.png
The Workflow Group Execution tab

 

Entry

Description

Entry

Description

Max Simultaneous Running Workflows

Enter the maximum number of workflows you want to be able to run concurrently.

Note!

If you do not specify a limit, your specific work environment and equipment will determine the maximum number of workflows that can run simultaneously. This value applies only to the workflow group that you are defining and does not affect members that are workflow groups.

Startup Delay

If Max Simultaneous Running Workflows is set to a value larger than 1, enter the delay (in seconds) of the execution start for each of the workflows that may run simultaneously.

Note!

  • If you do not enter any value, a very short delay will be applied by the system, by default.

  • You can assign a Startup Delay regardless of the members' status. Once the delay is up, if the member in turn is disabled, the Workflow group attempts to execute the next member.

Continuous Workflow Execution

Select this checkbox if you want to allow members in scheduled workflow groups to execute on schedule even though all workflow members in the group have not finished execution.

This may be useful in case one member is delayed for some reason. In that case remaining workflow members will not be prevented from executing on schedule. 

Note!

This feature is not supported for nested group members, only workflow members.

For a workflow group with a member that is delayed over the next scheduled time, this setting makes the member execute immediately when it is finished, and the group will be in a continuous Running state, not switching to Idle in between executions as is the default behavior.

This needs to be considered when making configurations based on workflow group states.  

Continue

This option activates the default behavior on member abort, which means that the workflow group will run until all its members are fully executed and/or all are aborted.

Note!

This means that groups with real-time workflow members continue to run until all the members are aborted or stopped manually.

Stop

Select this option to have the workflow group stop when a member aborts. A batch Workflow will finish the current batch and then stop.

Stop Immediately

Select this option to have the workflow group stop immediately when a member aborts. A batch workflow will stop even in the middle of processing a batch.

Enable

Select this checkbox to enable the workflow group execution settings.

Note!

  • Execution settings that you configure here, only apply to workflow members for which execution settings have not been enabled in the configurations that they are part of.

  • Workflow groups cannot run as stand-alones, and will be executed on the Platform. For further information about stand-alone, see Execution Context in the Desktop User's Guide.

Distribution

A workflow executes on an EC. You can specify which EC Groups to use, or the system can select them automatically.

The Distribution rules are applied to all included workflow group members, such as workflows and workflow group configurations. When there are conflicting settings, the members that are lowest in the workflow group hierarchy have precedence.

When the Distribution rules of the workflow group configurations are set on the same level in the hierarchy, they do not conflict with each other.

Note!

If you configure the distribution using EC Groups, the selected distribution type is also applied to the ECs within those groups.

Note!

The scheduling logic for selecting an EC to run the workflow occurs in two phases:

  1. The system selects all available ECs that match any of the groups specified in the configuration and are not marked for shutdown.

  2. From the filtered list, the system selects an EC to start the workflow based on the specified distribution type.

The following options exist:

Sequential - The scheduler selects the first available EC from the list of EC Groups, checking each group in order. If no EC is available in the first group, it proceeds to the next group, and so on. Within a group, the order in which ECs are checked is undefined but typically consistent between runs.

Workflow Count - The workflow starts on the EC with the fewest running workflows. Only ECs within the specified EC Groups are considered if the EC Groups list contains at least one entry.

Machine Load - The workflow starts on the EC with the lowest machine load. Only ECs within the specified EC Groups are considered if the EC Groups list contains at least one entry. Selection is based on information from the System Statistics sub-system.

Round Robin - The scheduler distributes workflows across the available ECs in a round robin fashion. All matching ECs from the specified EC Groups are included in the rotation. ECs in the rotation are in an undefined order, and if an EC is unavailable, the workflow is started on the next available EC in the sequence.