Recorder package

Recorder package captures a series of tasks in a process and then automates them. You can automate your business applications (for example, desktop, Web, SAP, and Java applications) using the Recorder to capture actions performed on application objects such as a text box, button, table, radio button, combo box, and list view.

Automation 360 extension setting

If the bot execution takes longer when you use the Recorder to automate a static page running on the Google Chrome or Microsoft Edge browser, then follow these steps to enable the setting in the Automation 360 extension:
  • Click the extensions icon at the top right corner of the browser window.
  • Click the vertical ellipses next to the Automation 360 plugin and select Manage extension.
  • Enable the Allow access to file URLs option.
  • Restart the browser and run the bot.

Benefits of using Recorder package instead of SAP package

We recommend that you use the Recorder to automate SAP applications. When you use the Recorder to automate SAP applications, you have the following benefits:
  • You can automate objects without creating a session. When you use the SAP package you must create a session.
  • You can automate the object directly without generating the field paths or having any prior knowledge of the field paths. When you use the SAP package, the package will execute actions directly on control field paths when properties in the search criteria match the object that the bot searches during execution.
  • If the Recorder runtime window overlaps the object that you want to automate, then the Recorder hides the runtime window before you automate the object.
  • Recorder supports actions in the If, Loop, and Wait packages that enables you to check if an object exists in the specific browser or window.
Note: When compared to the Recorder package, the SAP package enables you to automate an application without activating the application window.

Capture using Recorder

Use the Capture action to capture an interaction with a user interface (UI) object. This action enables you to add a single interaction when you are building a bot.
Note:
  • The Capture action replaces the Object Cloning command from Version 11.3.
  • If you launch any supported browser or application with a user account that is different from the one used to log in to the computer, the Recorder might not capture and play the control actions accurately.
  • To capture objects reliably when using dual monitors, ensure that the screen resolution on both the monitors is same.
  • When you use the Recorder package (version 2.3.0-20210806-215200 or earlier) with the Bot Agent (version 21.250 or later) released with Automation 360 v.29, you might encounter issues while capturing an object. We recommend you use Recorder package (version 2.4.0-20211118-080716 or later) with the Bot Agent (version 21.250 or later) to capture objects successfully.
  • When the Bot Agent is installed at the user level, that is for user-specific installation type, Citrix, Java, and SAP will not be configured since the session in which the Bot Agent is running might not have the required privileges. Only VMWare plugin will be configured for the current user.

Using the Capture action

When you are automating web pages running on Google Chrome and Microsoft Edge browsers, the Recorder > Capture action no longer scrolls down the web page if the target object is visible on the screen. This improves the user experience and the reliability of automation when there is a fixed top pane on the web page and if some physical actions such as mouse clicks do not work as expected.

Use the Recorder > Capture action to automate objects successfully when your device credentials are entered in the UPN format.

Manual configuration of Silverlight technology

With the Recorder package (version 2.17.2 and later) and new Bot Agent (version 22.1.22) that was released with Automation 360 v.31, we will no longer configure Silverlight technology. If you want to configure Silverlight technology, perform the following steps to run the check.exe file manually.
Note: Ensure that you add the check.exe file to the allowed list before running it.
  1. Navigate to C:\ProgramData\AutomationAnywhere\GlobalCache\embedded-resources
  2. Search for ec0db824-25eb-4c57-ab44-f77ef67d2579.

    The search results display a list of Recorder packages.

  3. Select the Recorder package that you use.
  4. Run check.exe file as administrator from that folder.
Alternatively, you can also perform the following steps to run the check.exe file manually from Windows PowerShell.
  1. Click the File menu.
  2. Navigate to Open Windows PowerShell > Open Windows PowerShell as administrator.

    Open Windows PowerShell

  3. Enter .\Check.exe in the script and click Enter.
Perform the following steps to run the check.exe file manually from the Command Prompt.
  1. Open the Command Prompt and run as administrator.
  2. Enter C:\ProgramData\AutomationAnywhere\GlobalCache\embedded-resources\ followed by the Recorder package version that you use.
  3. Enter Check.exe in the script and click Enter.

Supported applications

You can automate the following applications running on Microsoft Edge Chromium with IE mode:
  • Java web applications
  • Applications that are accessed through the Citrix Workspace app.
  • Citrix Virtual Apps
    Note: Citrix Virtual Apps and Desktop Version 2303 is certified with Recorder package (version 2.16.0-20231101-165457 and later)
Note:
  • To accurately capture or automate objects on SAP applications, we recommend that you enable scripting. If scripting is not enabled, the following prompt message is displayed below the bot runtime window:

    SAP scripting disabled: Enable scripting for more reliable captures

    If you do not enable scripting, instead of using SAP technology, the Recorder uses MSAA technology for capturing objects.

  • When automating an Electron application, the Recorder captures specific controls on the application using the Microsoft UI Automation (COM) technology by default. This enables you to automate Electron applications seamlessly without having to recapture the object with a specific technology.

Citrix XenApp support

You can now launch the Google Chrome or Microsoft Edge browser window from a Citrix XenApp application, access the Control Room from the specific browser, and automate other virtual applications which are run as XenApps. This enables reliable object-based automation when you deploy and launch both Control Room and business applications as virtual applications from the same system.
Note:
  • Ensure that you install the Bot Agent in the same Citrix XenApp server from where you launch your business applications.
  • When you launch the Control Room as a XenApp, Automation Anywhere remote agent for Citrix is not required.
You can successfully execute parent and child bots that use different versions of the Recorder package in a Citrix XenApp environment.
Note: To use and execute multiple versions of the Recorder package in a bot effectively, ensure that your bots, both parent and child, use the Recorder package (version 2.16.0-20231101-165457 and later). Using earlier versions might not support this feature and could cause inconsistencies or errors during bot execution in Citrix environments.

Supported control types

You can automate the following control types when you are automating a web page on a Google Chrome, Microsoft Edge Chromium, or Mozilla Firefox browser:
  • Pop-up windows
  • Alert dialog boxes
  • Confirmation dialog boxes
  • Prompt dialog boxes
Note: When you want to automate an alert dialog box on a web page, we recommend that you add a delay before the Recorder > Capture action because sometimes, the alert dialog box appears after a delay on the application window.

Cross-domain support

You can capture and automate objects inside a cross-domain IFrame that has multiple IFrames with same frame source and IFrames that are loaded dynamically during runtime in Google Chrome and Microsoft Edge Chromium browsers. After you have captured an object inside a cross-domain IFrame, the frame path is stored in the FrameDOMXPath property, by default.

Capture using FrameDOMXPath property

The new FrameDOMXPath property identifies the frame in which the object is located. You must select this property to run the bot successfully to automate objects on a cross-domain IFrame.
Note:
  • When you select the FrameDOMXPath property from the search criteria, do not change the value of this property.
  • If you clear the FrameDOMXPath property from the search criteria, the Recorder fails to identify the frame.
Important: In the Google Chrome browser, you can capture and automate objects inside a cross-domain and use multiple frames with the same frame source.

Automate applications running as an admin user

You can capture objects on applications that are running as an administrator by selecting the Capture and run with admin privileges option from the Bot editor.

Before you automate applications running as an admin user, ensure the following:
  • Bot Agent is installed in system profile.
  • Bot Creators and Bot Runners have admin rights on the device to automate the applications.
When you select the Start recording option in the Bot editor to record multiple applications, and switch applications running in elevated and non-elevated mode, the bot might not be able to identify the change between modes. In such cases, for all captures on applications in elevated mode, select the Capture and run with admin privileges option and then re-capture the object.
Note: Elevated mode gives you permission to run applications as an administrator.
Important: When you try to automate any Java or SAP application that is non-elevated by using the Recorder in elevated mode, the bot encounters an error.

To avoid this error, de-select the Capture and run with admin privileges option from the Bot editor and run the Recorder in non-elevated mode to capture Java or SAP applications.

Automate applications requiring multi-user access

You can successfully automate browser applications that are running on the same user session but requires varying application-level access within the same automation workflow. For example, non-admin users can perform record creation and validation, and admin users can now provide approvals within the same process automation.
Note:
  • This capability is supported for automation of web applications running on Google Chrome, Microsoft Edge, and Microsoft Edge with IE mode browsers.
  • This capability is supported with Recorder package (version 3.2.1-20240606-105427 and later) and Bot Agent (version 22.60.23 and later).
  • Ensure that you capture and run your automation in elevated mode when you are automating browser applications opened with other user privileges.
  • When your Bot Agent is updated, you must restart your browser application.
  • Advanced time-out option is currently not supported.

Automate Java applications

When automating controls that have similar properties in Java applications, for example Oracle EBS applications, the path property changes significantly and hence is not reliable. To reliably automate controls in such a scenario, use the Occurrence object property.

When you use the Occurrence property, the controls with similar properties are detected and are arranged in a top to bottom and left to right format and the specific control based on the occurrence value is detected.
Note:
  • The Occurrence property is not a part of default search criteria.
  • The Occurrence property is fetched only during runtime and not at the time of capture.
  • The maximum value of the Occurrence property will depend on the number of similar controls visible on the screen. For example, if 15 controls of Description type are visible on the screen, then the maximum value of occurrence will be 15. The maximum value of occurrence will remain 15 even if you scroll through the controls on the screen.
  • The occurrence value ranges from 1 to 999.
You can use the Frame name property to automate controls by locating the specific frame in which the object resides. This improves the performance and reliability of automations.
Note:
  • If the frame name for a specific control within an internal frame is blank, then the Frame name property of the captured object appears blank and will not be added as the default search criteria.
  • If the object is not within an internal frame, then the property will not appear in the list.
  • The Frame name property supports both wildcard character and variables.
  • We recommend that you use wildcard (*) character to identify the internal frame objects as the Frame name might change for some windows.
Note:
  • For your existing automations, ensure that you recapture the controls if you want to use the new properties.
  • Note that this capability has no impact on existing bots , which continue to run unchanged.

Object properties

When you select an object to capture, the Universal Recorder collects data on the object's properties in order to identity the object during run time. You can do the following with the object properties:
  • Verify that the captured object properties match your intended object.

    For example, when capturing a table from a website, ensure the Control Type and HTML Tag values are TABLE.

    Properties of control type Table

  • Retrieve a property value. Use the Get property action and enter the name of the property in the Property name field or select an object property from the list of available properties. The list includes suggested property values from the search criteria in the Object Properties table. To select an object property from the list of properties, move the mouse pointer to the right of the Property name field and click the arrow.

    For example, to retrieve the text of a link, use the Get property action and enter HTML InnerText in the Property name field or select HTML InnerText from the list of properties.

  • You can select a combination of properties for the bot to search the object in your business application window uniquely.

TOP Object property

The top object property is used when you want to use the Click, Right click, Double click, Set text, or Get property actions.

Example of how Top object property displays data

During design time, the element's location is determined by calculating the document points from the top (3) and left of the DOM area (1). For instance, when you captured the Last Name element, the TOP property value was recorded as 131, calculated from the top (3) of the DOM. However, during runtime, the TOP property value for this Last Name element appears as 216. This discrepancy occurs because, at runtime, the extension calculates the element's location from the navigation bar (2) instead of the top (3) of the DOM.

Search algorithm

The search algorithm for the Recorder package ensures that when you run a bot an object is captured only if its properties match the exact search criterion that you selected in the Object properties table. If the properties of the object do not match the search criterion exactly, then the bot fails with an error message. However, if the search criterion includes a wildcard character, then the bot captures the first object that matches the criterion.

For example, to capture a text box from an application that has three text boxes named firstname1, firstname2, and firstname3, if you select HTML name as the search criterion, enter the value firstname in the HTML name field, and run the bot, then the bot fails with an error message because a text box with the HTML name firstname does not exist. However, in the HTML name field, if you enter firstname*, and run the bot, then the bot captures the first text box that matches the criterion.

Note: This functionality is available for the bots you create using the 2.4.0-20211016-070100 version of the Recorder package starting from Automation 360 v.23. If you have created bots using a previous version of the Recorder package, you must recapture the objects to use this functionality.

Actions performed on captured objects

After capturing the object, specify the action for the bot to perform on the object at run time. For example, when you capture a hyperlink, you can select to click the link or to retrieve the link text. To see table of all objects and possible actions, see Actions performed on objects captured with Universal Recorder.
Note: If you encounter an error when running a bot that captures an object from Internet Explorer and the error message is about Google Chrome, see Your Chrome Plug-in is either not installed or disabled (A-People login required).

Background processing

Background processing enables an automation that involves interacting with an application in the foreground (such as mouse clicks) to run in the background. We recommend that you use the option to run in background to increase the visibility of the target object and improve bot accuracy. The following actions support background processing:
  • Click
  • Set Text
  • Get Text

Secure recording

When secure recording mode is enabled, bots do not display the target object images after capture. This ensures that sensitive data is not shown.
Note: Although the bots do not display the target images after capture, the images are still stored in the Control Room because they are required to run the bots.

When you record a task in secure recording mode, the Preview window temporarily shows an image of the captured area. This image is hidden after you navigate away from the Bot editor window or refresh it.

For new automations, when you capture objects in secure recording mode, you can choose to automatically delete the values of the unused object properties by enabling the Automatically delete unused object properties on save option. When you enable this option, the values of the object properties that are not a part of the search criteria will be discarded when you save the automation and refresh it. This ensures that personally identifiable information (PII) is not accidentally stored in the automation. For more information on how to enable the secure recording settings, see Secure recording.
Note: If you are using Generative Recorder to automate your tasks, and you have enabled the Automatically delete unused object properties on save option, then the Generative AI fallback is not supported.
Note:
  • This capability is supported with Recorder package (version 3.2.1-20240606-105427 and later) and Bot Agent (version 22.60.23 and later).
  • If you want to use this option in your existing automation, you must recapture the controls.
  • The value of the Left, right, height, and width properties will not be discarded.

A user with admin privileges must enable this setting. See Configure Settings.

Proxy support

If your device is configured with a proxy, all outbound requests from this package are routed through the proxy server. See Connect Bot Agent to a device with a proxy.

Use cases on how to use recorder

Use these example tasks to become familiar with the use of the recorder in building bots.