Introduction
I. Purpose
akaBot Studio is one of 3 components of akaBot suite.
akaBot Studio is a solution for application integration, business processes automation. It provides a wide range of activities to model almost of the business processes within one organization – from simple to complex.
The tool pre-builds hundreds of activities to perform the actions of automations on web, on desktop, working with data base, generating the PDF files, sending emails…
This document aims to guide you how to use the akaBot Studio.
II. Audience
This document targets to the developers who will use the akaBot Studio to develop the automating business process.
akaBot Studio User Interface
akaBot Studio contains multiple panels which allows you to easily access to specific functionalities as below:
# | Panel | Description |
---|---|---|
1 | File | Display the functionalities which you can use to operate on the file. |
2 | Home | Display the functionalities which you can use to work on the automation projects. |
3 | Actitvities | Show all available activities which can be added to your automation projects. The activities are grouped into different categories such as: Excel, XML, ControlFlow, Primitives, Care, HTTP... |
4 | Designer | Display you automation projects in a visual manner. It allows you to access, configure the variables, value inside the activities to make them do the automation actions. |
5 | Properties | Display the properties of current focused activities, enable you to change the value of properties and automatically save new value when focusing out. |
6 | Workflow Outline | Display the project hierarchy of current project. |
7 | Error List | Display the error list with error details while running the project. |
8 | Output | Display the output of the project. |
9 | Debug | Display the variable values and other debugged information. |
I. File Panel
To access the File panel, click File at the top left corner of the screen:
The User Interface of File panel is as below:
The File panel allows you to perform some below actions:
# | Tab | Description |
---|---|---|
1 | New | Create a new workflow project. Refer to section: 2.2.1 Create a new workflow project for detailed user guide. |
2 | Open | Open an existed workflow project. Refer to section: 2.2.2 Open a project for detailed user guide. |
3 | Options | Change some configuration parameters related to: Debugging, References Directories. Refer to section: 2.2.3 Change configuration options for detailed user guide. |
4 | About | View the version details of akaBot Studio Refer to section: 2.2.4 View version details for detailed user guide. |
5 | Exit | Close akaBot Studio Refer to section: 2.2.5 Close akaBot Studio for detailed user guide. |
1. Create a new workflow project.
Each business process may be represented by an akaBot project which enables you to automate rule- based processes, by giving you full control of the execution order and the relationship between a set of predefined activities in akaBot Studio.
To create a new workflow project, you should follow below actions:
Step 1: Click ‘New’
Step 2: Choose type workflow: Blank or General Business Process
Step 3: Enter name project
Step 4: Click button ‘Create’ to finish.
After clicking, by default a sequence activity will be shown up in the Designer panel allowing you to start developing your project.
2. Open a Project
To open an existed workflow project, you can follow below actions:
Step 1: Click Open
Step 2: Choose file with format file is *.xaml
Step 3: Click button ‘Open’
3. Change configuration options
This window to support them setup: Debug mode, and add references Directories
Debug
Step 1: Click ‘Options’
Step 2: Press to up or down size milliseconds between debug ste Step 3: Press button ‘Ok’ to submit the change configuration / ‘Cancel’ to close this window
and cancel this process.
4. References Directories
Step 1: Click ‘Options’
Step 2: Choose tab ‘References Directories’
Step 3: Click button ‘Add’
Step 4: Click ‘Ok’ to choose a folder
Step 5: Press button ‘Ok’ to submit the change configuration / ‘Cancel’ to close this window and cancel this process.
4. View the version details
You can view the version of akaBot Studio by click in tab ‘About’:
About akaBot Studio screen will be previewed Product details as below:
5. Close akaBot Studio
When click Exit, akaBot Studio will be closed.
II. Home Panel
To access the Home panel, click Home at the top of the screen:
The Home panel allows you to perform some below actions: New, Save, Start, Debug, Stop, Open Logs, Publish, Add activity
# | Item | Description | More Details |
---|---|---|---|
1 | New | Create new sequence, flowchart, State Machine | 2.2.1 New |
2 | Save | Save project | 2.2.2 Save |
3 | Start | Run BOT | 2.2.3 Start |
4 | Debug | Debugging is the process of identifying and removing errors from a given project | 2.2.4 Debug |
5 | Stop | Stop BOT when it’s running | 2.2.5 Stop |
6 | Open Logs | Open folder that have log file | 2.2.6 Open Logs |
7 | Publish | Publishing automation project | 2.2.7 Publish |
8 | Add activity | Adding a activity | 2.2.8 Add activity |
9 | Show or hide tools | Show or hide the functions window | 2.2.9 Show or hide tools |
1. New
There are 3 main types of projects:
- Flowcharts - suitable to a complex business logic which needs to integrate decisions and connect activities by using multiple branching logic operators.
- Sequences - suitable to defined linear processes from one activity to another without cluttering your project.
- State Machines – suitable for very large projects which have number of states triggered by a transition condition.
In this item, you can create new these three types
a. State machine diagram
- Step 1: Choose New + State machine diagram
- Step 2: Enter name diagram
- Step 3: Click button ‘Create’
b. Flowchart
- Step 1: Click 'new' > Flow Chart
- Step 2: Enter name flowchart diagram
- Step 3: Click button ‘Create’
c. Sequence
- Step 1: Click 'new' > Sequence
- Step 2: Enter name flowchart diagram
- Step 3: Click button ‘Create’
2. Save
- Step 1: Edit activity, control flow,… in project
- Step 2: Click 'Save' > Save if only save changes or Click Save as if save with different *.xaml file.
- Step 3: Enter name *.xaml file > click button Save
3. Start
Click button
to run BOT. Wait a few minutes for the BOT to finish and see result in Output Window
4. Debug
Click
to identify and remove errors from a given project. Coupled with logging, it becomes a powerful functionality that offers you information about your project and step-by-step highlighting, so that you can be sure it is error-free.
5. Stop
When starting or debugging the process, you can click
to stop this process.
6. Open Logs
Click
to open folder have log file - display details about what is happening in your project
7. Publish
- To publish an automation project:
- Step 1: Create / Open a new project.
- Step 2: In the Home ribbon tab, click Publish. Theo Publish project window opens
Step 3: In the Publish Location category, set the project to be published to Orchestrator
8. Add Activity
- To add activity
- Step 1: In the akaBot Studio click File menu, chose Options.
- Step 2: In the table Options, click References Directories tab, click Add button and chose directory containing the activity library (.dll Files) to load activities.
- Step 3: In the akaBot Studio click Add Activities. , chose activities from the list and press Add.
9. Show or hide tools
- Check or uncheck box to show or hide tool in screen of akaBot Studio.
III. Activities
This panel displays all the built-in activities which aid in the creation and the execution of automation projects. These activities enable robots:
- Manipulate the data by adding/extracting/reading information.
- Directly interaction with websites, windows applications…to simulate the human actions.
The activities are grouped in different categories such as: Flow chart, Control Flow, Primitives, Core, Excel, XML, Browser…
You may quickly add an activity into the project workflow by searching by activity name and drag the activity in the Designer panel.
Please refer to section III. akaBot Studio Activities for details of each activity.
IV. Designer
The Designer panel allows you to design your automation projects by designing the workflow, defining logic, creating variables/arguments or importing the namespaces.
You may design the workflow or defining business logic of the workflow by using activities in Activities panel then connect these activities by the arrow.
To connect activity A to activity B, you need to click to activity A, hold the mouse and drag to the activity B to create a link (represented by an arrow) between these 2 activities.
You may set what activities will be the starting point by connecting Start activity to selected one.
Depending on the activity, you may place an activity inside another activity such as: Parallel, If, Flowchart, Sequence…
1. Create a variable
To create a variable, follow below steps:
- Step 1 - Click Variables tab.
- Step 2 – Fill variable properties.
Variable Properties:
# | Property | Desrciption |
---|---|---|
1 | Name | Variable name |
2 | Variable Type | The type of variable: String, Int32, Boolean… |
3 | Scope | Scope of variable defines where the variable works in. |
4 | Default Value | Default value of variable. |
2. Create an argument
To create an argument, please follow below steps:
- Step 1 – Click Arguments tab
- Step 2 – Click Create Argument option.
The new argument will be displayed with all default values. You may customize these values for the created argument.
3. Import a namespace
To import a namespace, please follow below steps:
- Step 1 – Click Imports tab
- Step 2 – Find the namespace you want to import
- Step 3 – Double click the namespace to import.
V. Properties
This panel is contextual and enables you to view and change the properties of a selected activity.
- Step 1: Double click an activity in Designer panel.
Properties of that activity will be showed in Properties panel.
- Step 2: Change the properties
VI. Workflow Outline
This panel display the hierarchy of the workflow listing all the used activities and their connection.
You can double click on an activity to quickly open it.
VI. Verify output, error, debug
1. Verify output
When run akaBot Studio, you can see result in each step.
- Step 1: Click 'Start' to run akaBot Studio
- Step 2: Click the “Output” button at bottom left to see.
2. Verify error
Click the “Error List” button at bottom left
3. View debugging information
- Step 1: Choose “Debug” when running
- Step 2: Check the debugging information in the Debug tab as below:
Akabot Studio Activities
I. Core actitivies
1. Message Box
The Message Box* activity allows you to display a message in e debug dialog box.
Property Column:**
# | Property | Description |
---|---|---|
1 | Buttons | The buttons to be included in the message box that appears. |
2 | Caption | The text to be displayed as the title of the message box. It is a string, so it has to be encased in quotation marks. E.g. “Title”. |
3 | Text | The text to be displayed in the message box. It is a string, so it has to be encased in quotation marks. E.g. “Hello World”. |
4 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
5 | Top Most | This property allows you to choose whether to focus on the message box when it appears. By default, it is set to True. |
6 | Chosen Button | This returns the string of the button selected by the user. |
2. Path Exists
The Path Exists activity checks whether a exists or not
Property Column
# | Property | Description |
---|---|---|
1 | Path | The full path to be checked. |
2 | Path Type | Specifies if the destination is a file or a folder. |
3 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
4 | Exists | States whether the path is found. It only supports Boolean variables. |
3. Select File
The Select File activity lets the user select a file. The full path of the file will then be returned as a string variable.
Properties Column:
# | Property | Description |
---|---|---|
1 | Filter | Allows the developer to filter the types of file that the user can select. |
2 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
3 | Selected File | The full path of the selected file. |
4. Select Folder
The Select Folder activity allows the user to select a folder. The full path of the folder will then be returned as a string variable.
Property Column
# | Property | Description |
---|---|---|
1 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
2 | Selected Folder | The full path of the selected folder. |
5. Comment
The Comment activity allows the developer to insert comments or notes into the coding of the program.
Properties Column:
# | Property | Description |
---|---|---|
1 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
2 | Text | Comments to be shown in the Comment activity. |
6. Comment Out
The Comment Out activity allows the developer to ignore, effectively skipping, any activities that are placed inside the Comment Out activity.
Properties Column:
# | Property | Description |
---|---|---|
1 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
7. Append Line
The Append Line activity enables you to append a line of text to a file
Properties Column:
# | Property | Description |
---|---|---|
1 | Encoding | The encoding type to be used by this activity. If the field is left blank, the activity will search for the file's Byte Order Marks to decide the type of encoding to be used. If no Byte Order Marks are detected, the system ANSI code page will be selected. It is a string, so it has to be encased in quotation marks. |
2 | File Name | The full path or relative path from the Main.xaml to the selected file. |
3 | Text | The text to be appended into the file. It is a string, so it has to be encased in quotation marks. E.g. “Append this line”. |
4 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
8. Read Text File
The Read Text File activity allows you to extract the texts inside a text file and store it in a string variable.
Properties Column:
# | Property | Description |
---|---|---|
1 | EnCoding | The encoding type to be used by this activity. If the field is left blank, the activity will search for the file's Byte Order Marks to decide the type of encoding to be used. If no Byte Order Marks are detected, the system ANSI code page will be selected. It is a string, so it has to be encased in quotation marks. |
2 | File Name | The full path or relative path from the Main.xaml to the selected file. |
3 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
4 | Content | The string of text that is returned from the activity. |
9. Write Text File
The Write Text File activity allows you to overwrite a text file. If the destination path does not exist, it will be created by this activity.
Properties Column:
# | Property | Description |
---|---|---|
1 | EnCoding | The encoding type to be used by this activity. If the field is left blank, the activity will search for the file's Byte Order Marks to decide the type of encoding to be used. If no Byte Order Marks are detected, the system ANSI code page will be selected. It is a string, so it has to be encased in quotation marks. |
2 | File Name | The full path or relative path from the Main.xaml to the selected file. |
3 | Text | The comments you want to assign into this activity. |
4 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
10. Copy File
The Copy File activity allows you to copy a file from one locale to another.
Property Comlumn:
# | Property | Description |
---|---|---|
1 | Continue On Error | This is a Boolean variable and it is used to allow the rest of the process to continue execution if there is an error with this activity. If it is set to True, the program will continue execution even if an error is encountered. By default, it is set to False. |
2 | Path | The full path or relative path from the Main.xaml to the selected file. |
3 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
4 | Overwrite | A Boolean variable that decides whether you want to overwrite a file with the same name in the destination path. By default, it is set to False and will not overwrite the file in the destination path. |
5 | Destination | The full path, or relative path from the Main.xaml to the desired destination for the file to be copied to. |
11. Move File
The Move File activity allows you to move a file from one locale to another.
Properties Column:
# | Property | Description |
---|---|---|
1 | Continue On Error | This is a Boolean variable and it is used to allow the rest of the process to continue execution if there is an error with this activity. If it is set to True, the program will continue execution even if an error is encountered. By default, it is set to False. |
2 | Path | The full path or relative path from the Main.xaml to the selected file. |
3 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
4 | Overwrite | A Boolean variable that decides whether you want to overwrite a file with the same name in the destination path. By default, it is set to False and will not overwrite the file in the destination path. |
5 | Destination | The full path, or relative path from the Main.xaml to the desired destination for the file to be copied to. |
12. Get Files
The Get Files activity allows you to retrieve the data of multiple files.
Properties Column:
# | Property | Description |
---|---|---|
1 | Create Time (From) | This property lets you choose to filter the earliest creation date and time of the files to be selected. |
2 | Create Time (To) | This property lets you choose to filter the latest creation date and time of the files to be selected. |
3 | Directory | The full path of the directory to obtain the files from. |
4 | Filter | Allows the developer to filter the types of file that the user can select. |
5 | Search Option | Top Directory Only – Sets the search option to only select the best matching directory searched for in (4). All Directories – Sets the search option to select all the directories that matches the directory searched for in (4). |
6 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
7 | Files | This property returns all the data of the files that the Get Files activity obtains. This property only supports FileData[] (Array of FileData) type. |
13. Create Directory
The Create Directory activity allows you to create a new directory.
Properties Column:
# | Property | Description |
---|---|---|
1 | Continue On Error | This is a Boolean variable and it is used to allow the rest of the process to continue execution if there is an error with this activity. If it is set to True, the program will continue execution even if an error is encountered. By default, it is set to False. |
2 | Path | The full path or relative path from the Main.xaml to the selected file. |
3 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
II. Window actitivies
1. Open Window
Open Window is a container that opens an application that allows numerous of activities to be written in the Do section.
A pathway to the application must be written in the file path in order for this activity to open the application.
Open Window Properties:
# | Property | Description |
---|---|---|
1 | Continue On Error | This property only accepts Boolean values, true or false. By default, it is already false. If this option has been changed to true and the program has an error in between the multiple activities, the program would continue running otherwise it would stop. |
2 | Timeout MS | Default timeout for all activities within the scope. |
3 | File Name | The full path to your file. |
4 | Display Name | The name on top of the activity. |
5 | Arguments | The parameters that can be passed to the application at startup. |
6 | Automation Base | Specify the version of Automation library. This option goes together with Process argument. |
7 | Working Directory | The path to the working directory, only accept in strings. |
8 | Output Window | Output of type WindowApp. Output variable can be used in another Window Scope or Use Window property of other Window Activities. |
2. Window Scope
Window scope is a container that allows you to attach it to an already opened window. It allows you to do numerous of activities alongside with the Open Window.
Window Scope Properties:
# | Property | Description |
---|---|---|
1 | Continue On Error | This property only accepts Boolean values, true or false. By default, it is already false. If this option has been changed to true and the program has an error in between the multiple activities, the program would continue running otherwise it would stop. |
2 | Timeout MS | Default timeout for all activities within the scope. |
3 | Process | Input Process for the Window Scope to attach. |
4 | Window (Input) | Input WindowApp for the Window Scope to attach. |
5 | Display Name | The name on top of the activity. |
6 | Automation Base | Specify the version of Automation library. This option goes together with Process argument (UIA2 or UIA3). |
7 | Output Window App | Output of type WindowApp. Output variable can be used in another Window Scope or Use Window property of other Window Activities. |
Note: If this is placed in a try and catch and the Continue On Error is true, the try and catch would not produce any errors even if the program has errors.
3. Click
Allows you to click a specific interface in your program, eg: a button, textboxes etc
Click Properties:
1 | Continue On Error | This property only accepts Boolean values, true or false. By default, it is already false. If this option has been changed to true and the program has an error in between the multiple activities, the program would continue running otherwise it would stop. |
---|---|---|
2 | Click Type | 4 options are available, a normal left click, right click, double left clicks and double right clicks. By default, it is a left click. |
3 | Element | Input of type AutomationElement. If this field is provided, operations would be executed on the input Element. |
4 | From Desktop Root | Specifies whether the automation element is searched for from the Desktop Root Element. |
5 | Get Top Level Windows | Specifies whether all windows with same level of the root would be searched. |
6 | Timeout MS | Timeout for activity to find the search for the element before throwing an exception. |
7 | Use Window | Specifies the scope of the activity to search for the element. |
8 | Display Name | The name on top of the activity. |
9 | Key Modifier | Allows you to add a key modifier, there are 4 key modifiers. Alt, Ctrl, Shift and Win. |
10 | Selector | String variable to specify which element to find. Selector can be generated using “Pick Target Element” button on the Activity Designer. |
Note: If this is placed in a try and catch and the Continue On Error is true, the try and catch would not produce any errors even if the program has errors.
4. Type Into
Type Into sends keystrokes to a editable field, special keys can also be used in the dropdown box.
# | Property | Description |
---|---|---|
1 | Click | Specifies whether target field would be clicked before typing. |
2 | Double Click | Specifies whether target field would be double clicked before typing. |
3 | Empty Field | Specifies whether target field would be cleared before typing. |
4 | Set Focus | Specifies whether Target Field would be focused before typing. |
5 | Continue On Error | This property only accepts Boolean values, true or false. By default, it is already false. If this option has been changed to true and the program has an error in between the multiple activities, the program would continue running otherwise it would stop. |
6 | Element | Input of type AutomationElement. If this field is provided, operations would be executed on the input Element. |
7 | From Desktop Root | Specifies whether the automation element is searched for from the Desktop Root Element. |
8 | Text | The text you want to write in the target field. |
9 | Timeout MS | Timeout for activity to find the search for the element before throwing an exception. |
10 | Use Window | Specifies the scope of the activity to search for the element. |
11 | Display Name | The name on top of the activity. |
12 | Get Top Level Windows | Specifies whether all windows with same level of the root would be searched. |
13 | Selector | String variable to specify which element to find. Selector can be generated using “Pick Target Element” button on the Activity Designer. |
Note: If this is placed in a try and catch and the Continue On Error is true, the try and catch would not produce any errors even if the program has errors. Strings must be placed in between quotation marks.
5. Send Hot Key
Send Hot Key triggers keyboard shortcuts.
If you click on any of the key property, the robot would act accordingly to it.
Send Hot Key Properties:
# | Property | Description |
---|---|---|
1 | Display Name | The name on top of the activity. |
2 | Element | Choose the element you want to send a hot key to. |
3 | Key | Hot Key to send to the input element. If no element is provided, keys would be sent to current cursor position. |
4 | Alt/Ctrl/Shift/Win | Key Modifier to use additionally. |
III. System activities
1. While
The While activity allows you to execute a specific process repeatedly, while a specific condition is met. In the While activity, the condition is reviewed before the sequences in the loop is executed.
Properties Column:
# | Property | Description |
---|---|---|
1 | Condition | The condition to be met in order for the loop to repeat. It can be any expression, however the final value of the expression must be of Boolean type. E.g. x > 5 which can either be True or False. |
2 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
2. Do While
The Do While activity allows you to execute a specific process repeatedly while a condition is met. When the specified condition is no longer being met, the program exits the loop. In the Do While activity, the sequences in the loop is executed before the condition is reviewed.
Properties Column:
# | Property | Description |
---|---|---|
1 | Condition | The condition to be met in order for the loop to repeat. It can be any expression, however the final value of the expression must be of Boolean type. E.g. x > 5 which can either be True or False. |
2 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
3. For Each
The For Each activity allows you to step through arrays, lists, data tables, dictionaries or other types of collections, so that you can skim through the data and process each piece of information individually.
Properties Column:
# | Property | Description |
---|---|---|
1 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
2 | Type Argument | Type of the item inside the collection. |
3 | Values | Data collection input. |
4. Sequence
The Sequence activity allows you to transition from one activity to another easily. It executes the activities inside the sequence in a linear fashion and the sequence can also be easily manipulated to chain multiple sequences together.
Properties Column:
# | Property | Description |
---|---|---|
1 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
5. Flowchart
Flowcharts can be used in a variety of situations and is much more versatile than a sequence. The most prominent feature of flowcharts is that they present multiple branching logical operators that enable you to create complex business processes and connect activities in a multitude of ways that a sequence just can’t do.
Properties Column:
# | Property | Description |
---|---|---|
1 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
2 | Validate Unconnected Nodes | This is a Boolean variable. If it is set to True, it will check for errors in all the sequences and activities, even those not connected to the start node. If set to False, it will only check for errors in all the sequences and activities connected to the start node. By default, it is set to False. |
6. If
The If activity is used to make decisions. It the condition is met, “Then” would be executed while “Else” would be ignored. However, if the condition is not met, “Else” would be executed while “Then” is ignored.
Properties Column:
# | Property | Description |
---|---|---|
1 | Condition | The condition to be met for the program to proceed to the “Then” route. If this condition is not met, the program will execute the “Else” route. It can be any expression. However, the final value of the expression must be of Boolean type. E.g. x > 6 which can be True or False. |
2 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
7. Switch
The Switch activity enables you to select one route for the process to execute, out of multiple possible routes, based on the value of a specified expression.
Properties Column:
# | Property | Description |
---|---|---|
1 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
2 | Expression | The argument expression to be evaluated. |
3 | Type Argument | Type of the value to be evaluted by the Switch Activity. |
8. Assign
The Assign activity is a vital activity that allows you to assign a value to a variable.
Properties Column:
# | Property | Description |
---|---|---|
1 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
2 | To | The variable to assign a value to. |
3 | Value | The value to be assigned to the variable listed in To |
9. Invoke Workflow File
The Invoke Workflow File activity is used to invoke a workflow file with an XAML extension. Arguments can be passed in or out the workflow using the “Import Arguments” tab.
Properties Column:
# | Property | Description |
---|---|---|
1 | Continue On Error | This is a Boolean variable and it is used to allow the rest of the process to continue execution if there is an error with this activity. If it is set to True, the program will continue execution even if an error is encountered. By default, it is set to False. |
2 | Arguments | To access the arguments, click on the “Edit Arguments” or “Import Arguments” button on the activity. |
3 | Workflow File Name | The destination of the Workflow File to be invoked. You can use absolute path or relative path. |
4 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
10. Delay
The Delay activity enables you to pause the automation for a custom period of time. This is useful in getting certain timing-based automation right.
Properties Column:
# | Property | Description |
---|---|---|
1 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
2 | Duration | The amount of time to pause the automation for. It uses a hh:mm:ss format. |
IV. Browser activities
1. Open Browser
The Open Browser activity allows you to navigate to a specific Url by launching a specified browser.
Properties Column:
# | Property | Description |
---|---|---|
1 | Continue On Error | This is a Boolean variable and it is used to allow the rest of the process to continue execution if there is an error with this activity. If it is set to True, the program will continue execution even if an error is encountered. By default, it is set to False. |
2 | Browser Type | The choice of browser for this activity to use. There are four choices: Chrome, Firefox, IE, Other. |
3 | Timeout MS | Timeout for the page to load. If the timeout has expired, the page would not be loaded further. |
4 | Url | Starting URL when the browser is opened. |
5 | 1.HttpProxy | IP address of the site you’re trying to access. It is a string, so it has to be encased in quotation marks. E.g. “127.0.0.0” |
6 | 2.UserName | Username of the user account used to access the proxy. It is a string, so it has to be encased in quotation marks. |
7 | 3.Password | Password of the user account used to access the proxy. It is a string, so it has to be encased in quotation marks. |
8 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
9 | Maximize | his is a Boolean variable and it is used to maximize the browser window when the browser first starts up. If it is set to True, the browser window will be maximized. By default, it is set to False. |
10 | Output Browser | Output type of Browser that is wrapper for the Web Driver of the Scope. |
11 | Ensure Clean Session | Specifies whether the session would be cleaned before opening browser. Default Value is false. |
12 | Hide Command Prompt Window | Hide Command Prompt window of the Web Driver. Default value is true. |
13 | Quit Browser on Completed or Faulted | Specifies whether the browser is closed when execution is finished or faulted. Default value is true. |
2. Browser Scope
The Browser Scope activity creates a container that lets you to attach to an already opened Browser
and execute actions within the Browser.
Properties Column:
# | Property | Description |
---|---|---|
1 | Continue On Error | This is a Boolean variable and it is used to allow the rest of the process to continue execution if there is an error with this activity. If it is set to True, the program will continue execution even if an error is encountered. By default, it is set to False. |
2 | Browser | Input of type Browser. The input can be gotten from the output of the Open Browser activity. |
3 | Timeout MS | Timeout for the page to load. If the timeout has expired, the page would not be loaded further. |
4 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
5 | Output Browser | Output type of Browser that is wrapper for the Web Driver of the Scope. |
6 | Browser Type | The choice of browser for this activity to use. There are four choices: Chrome, Firefox, IE, Other. |
7 | Quit Browser on Completed or Faulted | Specifies whether the browser would close when execution is completed or faulted. Default value is true. |
3. Navigate To
The Navigate To activity allows you to navigate to another website on the current tab.
Properties Column:
# | Property | Description |
---|---|---|
1 | Continue On Error | This is a Boolean variable and it is used to allow the rest of the process to continue execution if there is an error with this activity. If it is set to True, the program will continue execution even if an error is encountered. By default, it is set to False. |
2 | Url | URL of the website that you want to navigate to. It is a string, so it has to be encased in quotation marks. |
3 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
4. Switch To
The Switch To activity allows you to switch between different UI Elements within a browser.
# | Property | Description |
---|---|---|
1 | Continue On Error | This is a Boolean variable and it is used to allow the rest of the process to continue execution if there is an error with this activity. If it is set to True, the program will continue execution even if an error is encountered. By default, it is set to False. |
2 | Switch To Type | Type of HTML element to switch to FRAME – An iframe. DEFAULT_CONTENT – Main webpage. PARENT_FRAME – To be used if there is a nested iframe. WINDOW – To switch between tabs. |
3 | Switch To Value | FRAME – Id or name attribute of the iframe tag. DEFAULT_CONTENT – Text must be quoted. PARENT_FRAME – Id or name attribute of the parent iframe tag. WINDOW – Text must be quoted. |
4 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
5 | Timeout MS | Timeout for the Web Driver to try finding the element to switch to. |
5. Click
The Click activity is used to send a click action into the webpage.
Properties Column:
# | Property | Description |
---|---|---|
1 | Continue On Error | This is a Boolean variable and it is used to allow the rest of the process to continue execution if there is an error with this activity. If it is set to True, the program will continue execution even if an error is encountered. By default, it is set to False. |
2 | Timeout MS | The amount of time, in milliseconds, to wait for the activity to run before an exception is thrown. |
3 | Click Type | CLICK_SINGLE – A single click. CLICK_DOUBLE – Two clicks in quick succession. CLICK_DOWN – A click where you hold down the mouse button. CLICK_UP – A click where you release the mouse button. |
4 | Mouse Button | Chooses between Left or Right click. MOUSE_LEFT will set the action to click using the left mouse button while MOUSE_RIGHT will set the action to click using the right mouse button. |
5 | Selector | String variable to specify which element to find. Selector can be generated using “Pick Target Element” button on the Activity Designer. |
6 | Wait Visible | This is a Boolean variable. When set to True, the automation will wait for the target to be visible before executing the activity. By default, it is set it False. |
7 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
6. Type Into
The Type Into activity allows you to type texts into any text field within the webpage.
Properties Column:
# | Property | Description |
---|---|---|
1 | Continue On Error | This is a Boolean variable and it is used to allow the rest of the process to continue execution if there is an error with this activity. If it is set to True, the program will continue execution even if an error is encountered. By default, it is set to False. |
2 | Timeout MS | The amount of time, in milliseconds, to wait for the activity to run before an exception is thrown. |
3 | Selector | String variable to specify which element to find. Selector can be generated using “Pick Target Element” button on the Activity Designer. |
4 | Text | The text to type into. It is a string, so it has to be encased in quotation marks. E.g. “I am very happy today!” |
5 | Wait Visible | This is a Boolean variable. When set to True, the automation will wait for the target to be visible before executing the activity. By default, it is set it False. |
6 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
7. Wait Element Exist
The Wait Element Exist activity waits for a selected element to appear in the webpage.
Properties Column:
# | Property | Description |
---|---|---|
1 | Continue On Error | This is a Boolean variable and it is used to allow the rest of the process to continue execution if there is an error with this activity. If it is set to True, the program will continue execution even if an error is encountered. By default, it is set to False. |
2 | Timeout MS | The amount of time, in milliseconds, to wait for the activity to run before an exception is thrown. |
3 | Selector | String variable to specify which element to find. Selector can be generated using “Pick Target Element” button on the Activity Designer. |
4 | Wait Visible | This is a Boolean variable. When set to True, the automation will wait for the target to be visible before executing the activity. By default, it is set it False. |
5 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
6 | Found Element | This will return a Boolean variable. When the target elements vanishes |
8. Wait Element Vanish
The Wait Element Vanish activity waits for a selected element to disappear from the webpage.
Properties Column:
# | Property | Description |
---|---|---|
1 | Continue On Error | This is a Boolean variable and it is used to allow the rest of the process to continue execution if there is an error with this activity. If it is set to True, the program will continue execution even if an error is encountered. By default, it is set to False. |
2 | Timeout MS | The amount of time, in milliseconds, to wait for the activity to run before an exception is thrown. |
3 | Selector | String variable to specify which element to find. Selector can be generated using “Pick Target Element” button on the Activity Designer. |
4 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
5 | Vanished | This will return a Boolean variable. When the target elements vanishes before the timeout, it will return True. However, when the target element does not vanish before the timeout, it will return False. |
9. Get Web Attribute
The Get Web Attribute activity allows you to get the value of an attribute that belongs to a UI element
Properties Column:
# | Property | Description |
---|---|---|
1 | Continue On Error | This is a Boolean variable and it is used to allow the rest of the process to continue execution if there is an error with this activity. If it is set to True, the program will continue execution even if an error is encountered. By default, it is set to False. |
2 | Timeout MS | The amount of time, in milliseconds, to wait for the activity to run before an exception is thrown. |
3 | Attribute Name | The expression of the attribute to be selected from. It is a string, so it has to be encased in quotation marks. E.g. “//*[@id=’main’]/div[3]” |
4 | Wait Visible | This is a Boolean variable. When set to True, the automation will wait for the target to be visible before executing the activity. By default, it is set it False. |
5 | Selector | String variable to specify which element to find. Selector can be generated using “Pick Target Element” button on the Activity Designer. |
6 | Display Name | The name of this activity. You can edit the name of the activity to organize and structure your code better. |
7 | Output Value | The web attribute that will be outputted. |
10. Select Item
The Select Item activity allows you to select an item from a combo box or list box.
Properties Column:
# | Property | Description |
---|---|---|
1 | Continue On Error | This is a Boolean variable and it is used to allow the rest of the process to continue execution if there is an error with this activity. If it is set to True, the program will continue execution even if an error is encountered. By default, it is set to False. |
2 | Timeout MS | The amount of time, in milliseconds, to wait for the activity to run before an exception is thrown. |
3 | Select Type | Selec Type (By Index, Value or Text). |
4 | Select Value | The value, based on the type of selection you want to use. It is a string, so it has to be encased in quotation marks. |
5 | Selector | String variable to specify which element to find. Selector can be generated using “Pick Target Element” button on the Activity Designer. |
6 | Wait Visible | This is a Boolean variable. When set to True, the automation will wait for the target to be visible before executing the activity. By default, it is set it False. |
V. Excel activities
1. Build Data Table
This activity allows you to create a data table according to a specific schema in a visual manner.
You may customize the data table to be created by clicking DataTable button. After clicking, the Build Data Table windows is opened as below:
There are two columns and two rows by default. The default column titles and variable types cannot be edited. Instead, the columns may be removed and then replaced by new ones.
To add a column into your table, click + icon. A pop up window is displayed to customize the properties as below:
Column Properties:
# | Property | Description |
---|---|---|
1 | Column Name | The title of the column. Only strings are allowed. |
2 | Data Type | The type of values that the new column is going to accept. There are many types of values such as: Boolean, String, Int32, Object, Array of [T] or a .Net type. |
3 | Allow Null | If selected, null values can be added to the rows of this column. |
4 | Auto Increment | Only available if Data Type = Int32. If selected, the value of this column will be automatically incremented by 1 when a new row is added. |
5 | Default Value | Default value when a new row is added. |
6 | Unique | If selected, all the rows in this column need to have unique values |
7 | Max Length | By default, -1 means that you do not set the max length for value of column. Otherwise, the number of accepted characters will be value of this property. |
Click OK button at New Column window to attach the column into table.
To remove a column, click x icon beside the column name. To remove a row, click x icon at the beginning of the row.
Click OK button to save the new data table or abort it by clicking Cancel button.
2. Read Range
Read Range reads the value of an Excel range and stores it in a DataTable variable. Read Range can only be used in an Excel Application Scope activity. If a range is not specified, the whole excel sheet would be read. However, if a cell number is specified it would read from the cell number to the rest of the sheet. Otherwise, a range is specified as per example given below, it would read from the specific range.
A workbook path means the excel file has to be inserted in this activity. The sheet you want the read range to read has to be specified as per in your excel file.
Read Range Properties:
# | Property | Description |
---|---|---|
1 | Range | The numbers of rows or cells to be specified in order to be read. |
2 | Sheet Name | The sheet name you want the Read Range to read. |
3 | Workbook Path | The path to the Excel file. |
4 | Display Name | Display name on top of the activity. |
5 | Add Headers | If this button is checked, the Read Range activity will include the headers to be read. |
6 | Data Table | Output into a DataTable variable. |
Note: Strings must be placed in between quotation for Range, Sheet Name and Workbook Path.
3. Write Range
Write Range writes value into an excel sheet by using a DataTable variable. It has to be in an excel application scope.
If the starting cell is not specified, it would write starting from the A1 cell and would be overwritten if there were some previous texts. If the sheet name is not specified, the activity would be create a new spreadsheet with the sheet name as mentioned.
Write Range Properties:
# | Property | Description |
---|---|---|
1 | Data Table | The data table you want to write into. |
2 | Sheet Name | The sheet name you choose to be written or create a new one. |
3 | Starting Cell | The range you choose to write into. |
4 | Display Name | Display name on top of the activity. |
5 | Add Headers | If this button is checked, the Write Range activity will include the headers to be written. |
Note: Strings must be placed in between quotation for Sheet Name and Starting Cell.
###3.5.4 Append Range
Append Range Activity Add the input data after the last line of the excel file.
Append Range Properties
# | Property | Description |
---|---|---|
1 | Data Table | The data table you want to append to. |
2 | Sheet Name | The sheet name you choose to append or create a new one. |
3 | Display Name | Display name on top of the activity. |
Note: Strings must be placed in between quotation mark for the Sheet Name.
5. Output Data Table
Output Data Table writes a data table to a string into a csv scheme.
Output Data Table Properties:
# | Property | Description |
---|---|---|
1 | Data Table | The data table you want to convert to a string. [DataTable] variable] |
2 | Display Name | Display name on top of the activity. |
3 | Output Text | Write your DataTable variable here as it is already converted into a string. |
6. Add Data Row
Add Data Row adds another row to a Data Table.
If you use an Array Row then the Data Row can be ignored, vice versa.
Add Data Row Properties:
# | Property | Description |
---|---|---|
1 | Array Row | An array of [T] to be added into the row that matches the corresponding columns. |
2 | Data Row | The DataRow object to be added in the row. |
3 | Data Table | The data table you want to add rows to. |
7. For Each Row
For Each Row Activity performs an action for each row in a specified DataTable variable.
For Each Row Properties:
# | Property | Description |
---|---|---|
1 | Data Table | The data table you want to perform an action on each row. |
2 | Display Name | Display name on top of the activity. |
8. Get Row Item
Get Row Items gets a value from a DataRow variable from a specified column.
If the Column Name is set, the Column Index can be ignored. If the Column is set, the Column Name
and Column Index can be ignored.
Get Row Item Properties:
# | Property | Description |
---|---|---|
1 | Column | The data column for the object to be set to retrieve the row. |
2 | Column Index | Column Index of Row Item. |
3 | Column Name | Column Name of the Row Item. |
4 | Row | Input Data Row to get Row Item from. |
5 | Display Name | The name on top of the activity. |
6 | Value | Value of the row item to be retrieved. |
VI. Word activities
1. Word Application Scope
Word Application Scope opens up a word document or creates a new document if there is no document found. It also acts as a scope for other word activities. If the word activity ends, so does the document and word application.
This activity only works if Microsoft Word is installed on your computer.
Word Application Scope Properties:
# | Property | Description |
---|---|---|
1 | File Path | Full path to the document or if the word file is in a folder, a relative path can be used. [String variables and Strings are supported] |
2 | Display Name | The name on top of the activity. |
Note: All strings has to be placed in between quotation marks.
2. Read Text
Read Text reads off a text from a word document and stores it in a string variable. It can only be used in a Word Application Scope activity.
Read Text Properties:
# | Property | Description |
---|---|---|
1 | Display Name | The name on top of the activity. |
2 | Text | The text extracted from the word document. [String variable] |
3. Append Text
Append Text adds text at the end of the word document. It can only be used in a Word Application Scope activity.
# | Property | Description |
---|---|---|
1 | NewLineBefore | If this is false, the sentence will continue from the last sentence of your word document. Else, it would have a new line from the last sentence write it below. |
2 | Text | The text you want to input at the end of the word document. |
3 | Display Name | The name on top of the activity. |
Note: Strings must be placed between in quotation marks.
4. Replace Text
Replace Text activity replaces a string in the word document with another string. It can only be used in a word application scope activity.
Replace Text Properties:
# | Property | Description |
---|---|---|
1 | Replace | The string you want to replace with. |
2 | Search | The string you are searching to get replaced. |
3 | Display Name | The name on top of the activity. |
4 | Found | A Boolean to show whether the text was found or not. |
Note: All strings must be placed in between quotation marks.
5. Add Image
Activity used to add images from your computer to insert in the word document. It can only be used in word application scope activity.
Get Images Properties:
# | Property | Description |
---|---|---|
1 | OutputFolder | The folder path where you want to retrieve your images. |
2 | Display Name | The name on top of the activity. |
3 | ImagesFile Name | The output variable of the image you have gotten. It should be in List |
Note: All strings must be placed in between quotation marks.
6. Export to PDF
Export To PDF converts a word document into a PDF document. It can only be used in a word application scope activity.
Export To PDF Properties:
# | Property | Description |
---|---|---|
1 | File Path | The file path to the PDF document you want to save in. |
2 | Password | If you want to add a password to your PDF file to create a safer place. You could do it with this option. |
3 | Display Name | The name on top of the activity. |
Note: All strings must be placed in between quotation marks.
VII. Email activities
1. Send Mail
Send Mail sends email messages using the SMTP protocol.
Send Mail Properties:
# | Property | Description |
---|---|---|
1 | Attachments | If you want to add attachments to the email along with a message. |
2 | Timeout MS | This property means accepts only milliseconds, therefore if a number is put in. This property would wait for the amount of seconds before throwing an error. |
3 | Body | What you want to write in the body of the email. |
4 | Subject | Subject name |
5 | Mail Message | The message that is to be forwarded. |
6 | Port | The port that the email message is sent through |
7 | Server | The email server that is to be used |
8 | The email used to send the message. | |
9 | Password | The password to the email to log in. |
10 | Display Name | The name on the top of the activity. |
11 | Is Body Html | If this checkbox is checked, the email will be formatted into a HTML style. |
12 | Secure Connection | Specifies the SSL and/or TLS encryption to use for the connection. |
13 | BCC | The hidden recipients of the email message |
14 | CC | The secondary recipients of the email message. |
15 | To | The main recipients of the email message. |
16 | From | Email address of the sender |
17 | Name | The name of the sender. |
Note: All strings must be placed in between quotation marks.
2. Send Outlook Mail
Send Outlook Mail sends an email from Outlook itself.
Send Outlook Mail Properties:
# | Property | Description |
---|---|---|
1 | Attachments | If you want to add attachments to the email along with a message. |
2 | Timeout MS | This property means accepts only milliseconds, therefore if a number is put in. This property would wait for the amount of seconds before throwing an error. |
3 | Body | What you want to write in the body of the email. |
4 | Subject | Subject name |
5 | Mail Message | The message that is to be forwarded. |
6 | Account | The account you want to use to send the message. |
7 | Display Name | The name on the top of the activity. |
8 | Is Body Html | If this checkbox is checked, the email will be formatted into a HTML style. |
9 | Is Draft | If this checkbox is checked, the email will be saved as draft too. |
10 | BCC | The hidden recipients of the email message |
11 | CC | The secondary recipients of the email message. |
12 | To | The main recipients of the email message. |
Note: All strings must be placed in between quotation marks.
3. Get Outlook Mail Messages
Get outlook mail messages allows you to fetch messages from outlook.
Get Outlook Mail Messages Properties:
# | Property | Description |
---|---|---|
1 | Timeout MS | This property means accepts only milliseconds, therefore if a number is put in. This property would wait for the amount of seconds before throwing an error. |
2 | Account | The account you want to use to send the message. |
3 | Mail Folder | The mail folder you want to fetch messages from. |
4 | Display Name | The name on the top of the activity. |
5 | Filter | If you want to retrieve a certain message you can use this filter box. |
6 | Mark As Read | If this checkbox is checked, once the message has been retrieved, it would be marked as read. |
7 | Only Unread Messages | If this checkbox is checked, this activity would fetch unread messages. |
8 | Top | The number you put in this property would allow you to fetch the number of emails starting from the top. |
9 | Messages | Output of the messages retrieved. |
Note: All strings must be placed in between quotation marks.
VII. Error handling activities
1. Try and Catch, Throw and Rethrow
Try and Catch allows you to catch a certain specified type of exception and shows you the type of error or it could also be dismissed to continue the program.
he program that you want to find the bug should be placed into the Try Section while under the Catch Section, you have got to mention the type of exception you are looking for.
Throw Property allows you to throw and find an exception providing you enter the type of exception.
Under the ReThrow property, it would allow you to re-throw the type of bug you are finding for if it does not pop out the first time.