Robotic Task Definition
This content applies solely to Appian RPA, which must be purchased separately from the Appian base platform.

Robotic tasks follow a definition, or a sequence of tasks. The robotic task definition is the guide that leads the robotic task's operation, determining its starting point and driving it through a series of tasks and actions.

A robotic task definition can be compared to a sequence of tasks performed by a human. Visually, the robotic task definition makes it easy to monitor a robotic task's operation. It enables a global view of all execution phases and allows you to analyze what action the robot is on, when it began, its duration, and its result. The console draws the robotic task definition as the corresponding robotic task operates.

For example, let's suppose one person should perform a task that involves gathering names and contact information from people who have sent their résumés through the company's website. This data then needs to be documented and saved in Notepad, using one line for each name.

Assuming that the data source will always contain at least one résumé, the definition could look like:

rpa-workflow-example.png

The robotic task definition mimics how a human would go through the process: The person would open Notepad first, then read a résumé, then write the candidate's name and contact information in Notepad. If there are more résumés, the cycle would go back and the person would read the next résumé. If there are no résumés left, the Notepad document would be be saved and closed, reaching the end of the whole process.

Defining the robotic task definition is the first and one of the most important steps for building robotic tasks. A good design will make the robot easier to develop.

Looking to speed up your low-code robotic task development? Use the task recorder to capture your interactions in a web browser and automatically create actions in the robotic task definition.

At the top of the robotic task definition, you'll find options to help you find what you're looking for:

  • Collapse all action groups to see the task at a high level.
  • Expand all action groups and conditions to see the whole hierarchy of the robotic task definition.
  • Search to locate specific actions in the robotic task definition. Search is helpful when you need to make targeted changes in larger tasks, such as bulk changes or refactors. Search reveals which actions have configurations that match your search query, so you know which actions to update to keep the robotic task operational. The search capability also looks for matches in expressions within action configurations.

rpa-workflow-navigation.png

Actions

Similar to the Interface Designer, the Actions Palette shows you the actions that are available to add to the robotic task. Use the search bar to quickly find an action by name, or browse the list of actions within each low-code module.

rpa-new-designer-palette.png

To add an action to the robotic task definition:

  1. Click and hold an action in the Actions Palette.
  2. Drag and drop it to the section or action group where you want to add the action.
  3. Click and drag the action to reorder it relative to the other actions in the section or action group.

That's it! You can configure the action in the Configuration Pane.

Action groups

Action groups help you organize actions that work together to achieve a desired outcome. For example, you may want to organize your robotic task definition so that login actions are contained in an action group.

To add an action group to the robotic task definition, click and drag Action Group from the Actions Palette to a section.

Loops

Loops repeat actions until a condition is satisfied. Use the Loop action to process items in a list such as files in a directory or line items on an invoice. RPA supports the following loop types:

  • While: Executes the loop until the loop expression returns false.
  • Repeat: Executes the loop a fixed number of times, equal to the integer in the Iterations field.
  • For Each: Executes the loop for each item in a list.

Loops can't repeat more than 1000 times.

In the following example, the loop will execute the Create a folder and Copy a file or folder actions until the Loop Expression returns false.

Screenshot of the loop action in the system

To add and configure a Loop action:

  1. Click and hold the Loop action in the Actions Palette.
  2. Drag and drop the action to a section or action group.
  3. Select a loop type from the Configuration Pane.
  4. Configure additional properties from the Configuration Pane depending on the loop type.
    • While loops must have a loop expression.
    • Repeat loops must have a number specified in the Iterations field.
  5. Drag and drop additional actions from the Actions Palette into the loop action. Actions will only repeat when inside the Loop action.

Action expressions in loops can reference function variables. Supported function variables in loops include:

Function Variable Description While Repeat For Each
fv!index The current iteration of the loop, starting at 1. Yes Yes Yes
fv!isFirst true for the first iteration of a loop, otherwise false. No Yes Yes
fv!isLast true for the last iteration of a loop, otherwise false. No Yes Yes
fv!itemCount The total number of loop iterations. No Yes Yes
fv!item The current item. No No Yes

Conditions

The robotic task designer allows you to quickly configure conditional flows. Conditional flows are decision points for a robotic task's execution, where the path of the flow adjusts based on specified conditions. The results of conditional actions determine the path the robotic task will follow. Use conditional actions to make your robotic tasks more dynamic. For example, if a web element is present, copy the value; otherwise, add an error message to the log.

Conditional actions only return true or false and include:

When you place conditional actions in the robotic task definition, they automatically generate Yes or No flows to configure. Actions that return true map to Yes flows; actions that return false map to No flows. Add actions to the resulting flows just as you would for the main robotic task definition.

Conditional action screenshot

Task recorder

The robotic task designer supports the task recorder tool. The task recorder can automatically record your browser interactions and translate them into robotic task actions. You can start a recording from a section, action group, or conditional flow path.

To start a recording:

  1. Hover over a section or an action group heading to reveal the Start Recording task-recorder-icon.png icon.
  2. Click Start Recording task-recorder-icon.png.
  3. Before you can begin recording, choose an available Robot and Browser.
  4. Enter the webpage to visit in the Navigate to URL field.
  5. Click OK.

Sections

By default, every robotic task definition has a Setup, Main Section, and a Clean up section. Click the arrow in the section's toolbar to expand or collapse that section.

Setup section

Certain tasks may need to be completed to prepare the robot for an item execution. You can define those actions in the setup section of the robotic task definition.

If you use credentials in a setup section, the credentials are reserved and won't be released until the clean up section successfully completes. This may impact credential availability if the setup and clean up sections are skipped for consecutive executions. See Execution Settings to learn more about how the robotic task behaves when the setup and clean up sections are skipped for consecutive executions.

Clean up section

Whether the robotic task ended successfully or not, the end of an execution is a good moment to close the applications that the robotic task has opened or send the files generated during execution to the server. It's important to reset the robot to its previous conditions so subsequent robotic tasks can execute successfully. Without consistent starting conditions, other robotic tasks may not be able to start or complete.

rpa-cleanup-section.png

In the clean up section, you can configure the steps the robotic task should take when it's complete, such as closing programs it opened. Remember that the steps you configure in this section only apply to the robotic task you're currently configuring.

You don't need to add the clean up section to your main robotic task definition. The robotic task will always execute the clean up actions.

If the same robotic task executes multiple times consecutively, you have the option to skip the setup and clean up sections for faster executions.

Configure a robotic task definition

Required role: Developer or Administrator

Looking to speed up robotic task definition design? Create robotic task definition sections using the task recorder.

To configure a robotic task definition:

  1. Go to the Robotic tasks tab.
  2. Find the robotic task you want to configure in the list.
  3. Click Configure 2236505.png in the Actions column.
  4. Go to the Task tab of the robotic task configuration page.
  5. Add actions to the robotic task definition.
  6. Add conditions and loops.
  7. Configure the actions you added.
  8. Move actions or delete actions as needed.
  9. Click SAVE CHANGES in the page toolbar.

Configure an action

When you add an action to the robotic task definition, the configuration options appear in the Configuration Pane within the designer. The configuration options vary based on the action you're adding.

rpa-new-designer-config.png

See the action documentation for details on each action's configuration options:

  1. If your selected method includes CONFIGURATION parameters, configure the parameters as appropriate:
    • Enter a static value.
    • Select a robotic task variable from a picker.
    • Use the Expression editor to write an Appian expression. You can reference a robotic task variable in the Expression editor using pv! and concatenate variables as needed.

    For example:

    rpa-method-configuration-parameters

  2. If your selected method includes OUTPUT parameters, configure the following parameters:
    • Operator: Select an option to store the value as a single-value variable (is stored as) or add the value as a multiple-value variable (is appended to).
    • Target: Enter the name of the robotic task variable where you want to store or append the value. If your variable is type CDT, you can specify which field of a CDT to store the value into using dot notation.
  3. Configure the AFTER COMPLETION parameters:
    • Wait before executing next action: Enter the number of seconds the robotic task waits before it continues to the next action in the robotic task definition.
    • Take a screenshot: If you select this option, the robotic task takes a screenshot of the host machine immediately after the action completes successfully.
  4. Click SAVE CHANGES in the page toolbar.

Robotic task variables

You can use robotic task variables to pass data between robotic task definition actions and other design objects like process models and interfaces. The new robotic task designer includes an improved variable grid that should look familiar if you've worked with rule inputs in the Expression Editor or Interface Designer. All of your variables are neatly located in the VARIABLES section of the designer.

rpa-variable-grid.png

To create a variable in a robotic task:

  1. Click New Variable rpa-add-variable in the VARIABLES section.
  2. Configure the variable details:
    • Name: The name you will use to reference the variable. Only letters, numbers, and underscores are supported.
    • Type: The data type of the variable. The Credential type is used to reserve credentials for use in robotic subtask.
      • Note: The following system types cannot be selected for a robotic task variable type: Encrypted Text, Time, complex system data types, and hidden CDTs. See the Data Types page for a complete list of system data types.
    • Array (multiple value): Optional. Indicates if the variable can contain multiple values.
    • Initial Value: Optional except for variables of type Dropdown. The default value of the variable at the start of the task.
    • Parameter: Optional except for variables of type Password and Dropdown. Indicates if the variable can pass values to the robotic task before it executes. Before the robotic task executes, the user will be prompted to provide an input.
    • Required: Optional. Requires a parameterized variable to have a value before a robotic task starts.
  3. Click Create.

It's simple to reference your variables in a robotic task. Text fields that are found in the configuration options for robotic task actions now allow you to select from a variable picker. Use the variable picker to choose a variable as a value for your robotic task. What's more, when you rename variables, Appian automatically updates their names throughout your entire robotic task.

rpa-variables.png

See Robotic taks variables for more information.

Move an action

To move a single action within a robotic task definition section, drag and drop the action to a new position.

Delete an action

To delete an action, hover over the action and click Delete action.

Robotic task execution

The robotic task execution page matches the robotic task definition. Your execution flow will display vertically, the same as it appears in the designer. Read-only views of the robotic task variables display beside the execution.

To execute your robotic task:

  1. Go to your robotic task.
  2. Click Execute rpa-execute-icon.png.
    • Note: Do not select the Debugging? option on the Execution options menu. The redesigned robotic execution page doesn't support debugging yet.
  3. The execution flow automatically displays on the Robotic Task Definition tab.

As the robotic task executes, actions, loops, and action groups clearly show the flow of execution via icons:

  • rpa-executing-icon.png : Animates while the action is executing. Action groups and loops that contain the executing action also display this icon.
  • rpa-completed-icon.png : The action is complete.
  • rpa-loop-icon.png : The current iteration of the loop. In this example, the loop executed five times. The count continues to update as the loop executes, and when you re-execute the robotic task, the loop counter resets.

rpa-execution.png

In the preceding example, you can see that the main execution flow executed successfully. We know that the No flow for the Does browser window title match? action did not execute because there is no green checkmark rpa-completed-icon.png beside it.

Open in Github Built: Thu, Feb 23, 2023 (02:59:22 PM)

On This Page

FEEDBACK