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
- 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.
- If you need another inline user task, select it from the palette and wire it into the
process.
-
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.
-
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.
-
In the Data Mapping properties, add input and output variables and define
the interface by completing the following substeps:
-
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.
-
In the list, select a variable. It is added under the Input Mapping
section.
-
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.)
-
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.
-
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.)
-
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.