Designing Workflows (JOBP)

Workflows serve as containers for objects that must be executed in a specific sequence and with specific parameters. An object that is inserted in a Workflow is a task. A Workflow can also be embedded in another Workflow. By linking the tasks in a Workflow, you establish the sequence of the executions. Thus, the tasks in a Workflow have a predecessor (the previous task in the sequence) and a successor (the next task). Workflows also have a START and an END node. You design them in the Workflow editor on the Workflows definition page.

A Workflow and its tasks have a parent/child relationship. The Workflow has its own properties, which its tasks inherit. However, the tasks also have their own properties, which can override the definitions in the Workflow.

The sequence of the tasks in the Workflow is part of the Workflow logic. However, you can set other parameters that contribute to build that logic. Some of the properties that you can define in the tasks also play an important role to decide when they are executed. For more information, see:

This page includes the following:

Types of Workflows

The Automation Engine provides the following templates to create different types of Workflows:

Special Case: Unlinked Tasks

You can insert tasks in Workflows without linking them to any other task or to the START or END nodes. Unlinked tasks start when the Workflow starts. They are generated immediately because they do not have any dependency to a predecessor task.

This special use of tasks in Workflows lets you take advantage of the Calendar conditions and of the external dependency functions. These functions are available for the tasks within Workflows. For more information, see Calendar Tab and External Dependency Tab.

Notes:

External Dependencies

You can assign external dependencies to Workflows. They are tasks that start outside the Workflow, therefore, they do not have a predecessor. They must execute and end with a specific status for another task in the Workflow (the successor) to be able to start.

For more information, see External Dependencies in Workflows and External Dependency Tab.

Conditions in Workflows

Conditions serve to orchestrate the execution of tasks depending on external situations, for example system resources, files that are available or not, and so on. For example, a Job can only execute if a file is present in a particular directory.

Next Steps:

This list depicts a possible roadmap to design and work with Workflows. It provides short descriptions of the actions you can take. It also gives additional information that can help you understand how they work and links to topics that describe them:

  1. Define the Workflow general settings:

    • The basics, on the General Page
    • If necessary, apply a Sync object to the Workflow. For more information, see Sync Page.
    • On the Runtime Page, specify the settings to be used for runtime calculations.

      This information is relevant for planning tasks and monitoring them. It is also used in forecasts and autoforecasts.

    • Administrator user can fine-tune access rights at object level on the Authorizations Page. This page is only visible if you have the necessary rights.
    • Specify important object Attributes on the Attributes Page. Among other important settings, here you assign the Agent and the Login object that allows the access to it.

      Important!

      • Your definition in the Generate Task at: Activation time / Runtime attribute can have an important impact in the execution times of your jobs. Have a look at Generating at Activation or at Runtime, where the implications of either option are described.
      • The generation time of the tasks in the Workflow plays an important role in the overall behavior of the Workflow and on the execution sequence. Read the following topic to learn more about it: General Tab (Task Promtp/Evaluation section)
    • You may want to use variables or prompts. You do so on the Variables Page and Prompt Sets Page. Read Inheriting Object and PromptSet Variables and Examples: Inheriting Object Variables to understand how variables, VARA objects, and PromptSets assigned to Workflows behave and are inherited by their tasks.

      Have a look at Variables and VARA Objects to get acquainted with the various types of variables and VARA objects.

    • You may want to define the settings to backup and restore a Job task when included in a Workflow. Doing it is useful to recover the last successful status when processes fail. You define these settings on the Rollback Page.
    • The Version Management Page lists all the versions of an object and allows you to restore it to an older version.
    • Enter information about the Job you are defining on the Documentation Page.
  2. Add and arrange the objects in the Workflow using the Workflow Editor.
  3. Apply properties to the tasks in the Workflow. Properties affect the order and outcome of the Workflow executions. See Task Properties in Workflows.

    Have a look at Workflow Logic. This topic describes the validation checks that take place during the execution of a Workflow. The graphic at the bottom of the topic illustrates how and when the task properties affect the order and outcome of the executions.

  4. After you have defined the Workflow parameters and the properties of its tasks, you can execute it. For more information, see Executing Workflows.

  5. Check whether the Workflow behaves as expected in the Process Monitoring perspective. For more information, see Monitoring Workflows.
  6. If necessary, you can modify the design and properties of the Workflow at runtime. See Modifying Workflows at Runtime.

See also: