Working with inline user tasks

Inline user tasks are extensions of regular user tasks. Each inline user task implements a specific interface that is implicitly defined by what is exposed to it. When you create a process, an inline user task is automatically generated for the process. The inline user task is already implemented by a hidden and non-editable client-side human service. As a result, you can run your new process immediately after you create it.

About this task

Inline user tasks enable you to quickly create the process structure without having to worry about designing and implementing any user interface (UI) for each of the tasks. A generated client-side human service with a single page renders the UI that is necessary to work with the data exposed to the inline user task in the process editor. The UI associated with an inline user task can be customized by using page templates that can dictate where widgets for inputs and outputs are laid out. A default template is shipped with the UI toolkit.
Note: The UI for inline user tasks is generated using UI views. As a result, inline user tasks are only supported when the process app has a dependency on the UI toolkit. If the UI toolkit is not in the dependency list, the task UI will not be generated and a runtime error will be displayed.

Procedure

  1. Create a process. An inline user task is automatically generated and is wired into the process.

    The UI generated for an inline user task is based on the default page template that is included in the UI toolkit. However, you can configure a custom template to modify the inline user task. Information about templates for inline user tasks is found in the topic Configuring coach templates for inline user tasks.

  2. If you need another inline user task, select it from the palette and wire it into the process.
  3. Go to Variables, and create the required input, output, and private variables. These variables will be used to simultaneously create the interface and data map for the inline user task.
  4. In the process diagram, select the inline user task and then open the Data Mapping properties. At this point, the properties content differs from that of a regular user task because there is no interface yet.
  5. In the Data Mapping properties, add input and output variables and define the interface by completing the following substeps:
    1. Beside the Input Mapping section, click the Add a new input icon (+) to add the input variables. This opens a list of the variables that you defined.
    2. In the list, select a variable. It is added under the Input Mapping section.
    3. If you need to add more variables to the input mapping, click the Add a new input icon (+) again. (You can delete any input variable from the mapping by clicking the X icon to the right of the variable name.)
    4. Beside the Output Mapping section, click the Add a new output icon (+) to add the output variables. This opens a list of the variables that you defined.
    5. In the list, select a variable. It is added under the Output Mapping section. (You can delete any output variable from the mapping by clicking the X icon to the right of the variable name.)
    6. If you need to add more variables to the output mapping, click the Add a new output icon (+) again.
    You can expose a process variable as an input, output, or both. Input variables will be generated as read-only fields in the UI.
    Note: When you select a child parameter of a variable for an input or output mapping, the parameter is mapped to or from the ANY type. If the inline task is converted to a stand-alone implementation, the type of the generated variable will be replaced with the actual data type at the time of the conversion.
    Note: Inline user task pages are automatically generated for the variables. If you change a variable in the Variables page, the variable is automatically changed in the Data Mapping properties. Any changes to the mapping causes a regeneration of the affected page in the backing client-side human service.

What to do next

When you have finished adding inline user tasks, you can convert one or more of them to use a stand-alone implementation. This is especially useful for developing advanced user interfaces. See Converting inline user tasks to use stand-alone implementations.