Much like every site on the internet, we use cookies to help analyze traffic and improve our website. As outlined in our privacy policy, any information is only used internally and is not shared with outside organizations.
Learn More

User Activity

Overview

Much like a Process, a User Activity is one or more Activities executed in a sequence to automate a task. What makes User Activities so powerful is that you can define a sequence once, and then use it from any Process or even other User Activities!

Topics:

One of the biggest challenges with automation, especially automation of a user interface, is responding to change. User interfaces change over time. Sometimes the steps we take to complete a task change. If our automated processes were littered with copies of the same set of activities over and over, any change would require a significant effort to track down all those references and repeat the updates. User activities allow you to define that sequence once, and then reuse it everywhere you need it. If the sequence changes, all you must do is update the one user activity and all your processes will work again.

Not only can user activities reduce maintenance, they also make it easier to understand your processes. Think of all the steps necessary to perform a checkout of an online store including all the fields that must be filled out and potential navigation of multiple pages. For a user who looks at a process for the first time, all the activities must be read and understood. Now imagine you could replace all those activities with a single activity called "Checkout". That's exactly what you can do with user activities!

Activity Library

An Activity Library is a collection of one or more User Activities. Typically, all the User Activities in a library are related, but they do not have to be. You can create as many or as few libraries as you wish to meet your organizational needs.

Creating a New Activity Library

From the Command Ribbon, click the File tab to open the Backstage Menu, select the Home tab if it is not already selected, and click the New Activity Library button. This will open a new, blank Activity Library Editor.

Opening an Existing Activity Library

From the Command Ribbon, click the File tab to open the Backstage Menu.

File Open

Note: The example screenshot may differ slightly from the current product.

On the Home tab, recently opened libraries will appear in the Recent Files list (1). Alternatively, click the Open command (2) to open a standard File Open dialog to select the file to open. An Activity Library file is stored on the file system using the .ablibrary file extension.

Tip!
You can use the Pin (3) to pin any file to the top of your Recent Files list for easy access.

Command Ribbon

When an Activity Library is the selected document, a special File Tools tab will be displayed on the Command Ribbon:

Activity Library Tools Group

Note: The example screenshot above may differ slightly from the current product.

The following commands are available:

Reload Library
The library will be reloaded from the file. Useful if you need to revert your changes or if the file has been modified externally.
Library Properties
Opens the Properties dialog for the library.
Add User Activity
Adds a new User Activity to the library.
Delete User Activity
Deletes the User Activity from the library.
User Activity Properties
Opens the Properties dialog for the selected User Activity.
Activity Calls Group
This group contains additional commands used to insert activity calls into the selected User Activity.

Add User Activity / User Activity Properties

Select the Add User Activity command from the Activity Library tools on the Command Bar. This will open the User Activity Properties dialog for the new activity. The same dialog is shown when using the User Activity Properties command for an existing User Activity. Populate the properties for User Activity and click OK to add it.

New User Activity Properties Dialog

Note: The example screenshot above may differ slightly from the current product.

General

This tab displays general properties for the User Activity:

Name
The name to be given to the User Activity.
Category
The category where your User Activity will be organized. You can create nested categories by including the backslash character between category names (e.g. Application\Shopping Cart).
Description
If the name alone is not enough to fully understand what your User Activity does, a description can be provided. Users who utilize your library will not be productive if they must open and view the activities to understand what it does, so provide a description when needed. In general, it is best to describe what your User Activity does, not how it does it.

Advanced

This tab displays advanced properties:

Kind
A unique identifier for the User Activity. This is how your User Activity is tracked and is provided for informational purposes only.

User Activity Editor

The Activity Library Editor is almost identical to the Process Editor. The only difference is the drop-down control at the top of the editor. When you have multiple User Activities defined, the control at the top is used to display the current activity and allow you to switch to other activities.

Activity Library Editor Screenshot

Note: The example screenshot may differ slightly from the current product.

Activity Selection

The Activity (1) drop-down at the top of the editor allows you to switch between the different User Activities defined in the library.

Activity Calls

The Activity Calls (2) that will be performed when executing the User Activity are displayed in the top half of the editor (by default). The following columns display information about the Activity Call:

Activity
The category and name of the Activity that is being called.
Element
Defines any user interface Element that will be interacted with by the Activity. If an Element Nickname was provided, it will be displayed here. Otherwise, the identifying information you provided will be displayed instead. If the value n/a is displayed, that indicates that the Activity does not interact with a user interface Element.
Input & Output
A list of any significant Input or Output Arguments and their corresponding values. An Argument is significant if a value has been defined or if the corresponding Parameter is required. Rarely, some Activities may also mark a Parameter as significant even if the value is not required or populated.
Options
A list of any non-default options that might impact how the Activity is executed.

Instructions

The Instructions Pane (3) is displayed in the bottom half of the editor (by default) for the selected Activity Call. This is where you provide the details needed by the Activity during execution. The tabs along the left of the Instructions Pane organize the details into these categories (when supported by the Activity):

Identification
How to identify the user interface Element.
Arguments
The values being passed as Input and Output Arguments to the Parameters defined by the Activity.
Options
Additional options related to the Activity Call.

Interface Customization

The Activity Library Editor provides several features to customize the user interface to meet your individual needs or tastes.

Activity Library Properties

The Library Properties command on the Command Ribbon will open the Activity Library Properties dialog where properties are represented on individual tabs.

Activity Library Properties Dialog

Note: The example screenshot above may differ slightly from the current product.

General

This tab displays general properties for the Activity Library:

Default activity category
User Activities are organized by categories. This setting determines the default category that will be assigned to new User Activities.

Libraries

The User Activities in a library can use User Activities defined in other libraries, but they must be referenced. This tab allows you to manage those references. The following commands are available.

Add
Prompts you to select an Activity Library file to be added as a reference.
Remove
Removes the reference to the selected Activity Library.
Reload
Reloads the referenced Activity Library that is selected. Useful if the library has been modified outside of the tool since it was opened.
Open
Opens the editor for the referenced Activity Library that is selected.

UI Elements

To allow User Activities to interact with elements defined in a shared UI Repository they must be referenced. This tab allows you to manage those references. The following commands are available.

Add
Prompts you to select a UI Repository file to be added as a reference.
Remove
Removes the reference to the selected UI Repository.
Reload
Reloads the referenced UI Repository that is selected. Useful if the repository has been modified outside of the tool since it was opened.
Open
Opens the editor for the referenced UI Repository that is selected.

Input and Output Arguments

Most User Activities will require data to be passed to the activity. For example, a Login activity for an application would typically allow the user name and password to be passed. By allowing data to be passed in, your activity will be more flexible in what it can do.

Creating Variables

You must define a variable that will hold the value which is passed to your activity. Use the Variables Tool Window to create one or more variables that will be available as input. For the login example, you might create a variable called UserName and another called Password.

Promote Variable to Input Parameter

After you create your variables, you will need to promote them to Parameters. This will expose the variable to be populated when calling the activity.

Promote Variable to Input Parameter

Note: The example screenshot may differ slightly from the current product.

  1. Expand the Parameter Details section of the Variable Properties.
  2. Check the Allow values to be passed as Input Parameter option.

Now any time your User Activity is called, you can define the initial values for those variables. If you also check the Require value to be populated option, that will force the value to be defined when calling the User Activity. If not required and a value is not explicitly defined, the Default Value defined for the variable will be used.

Promote Variable to Output Parameter

Sometimes you may also need to pass data back from your User Activity. An activity designed to checkout of an online shop may need to output an Order Number that could be used by other activities. Just as with Input Parameters, you accomplish this by creating a variable to hold the value. In the Parameter Details section, check the Expose final value as Output Parameter option and the value of the variable after execution of your User Activity will be passed back.

Working with User Activities

The best part of User Activities is that you use them just like the built-in activities! When your Activity Library is loaded, your User Activities will be displayed in the Activity Tool Window using the Category you defined. When selected, all the details you provided will be visible as well. You can pin your activities as favorites for easy access and drag-and-drop the User Activity into a Process to call it.