Working with data in Robots

Automation in Robots typically requires performing operations with data. You input data to an automated process, and the process is very often designed to output data as a result.

Categories of Robots data

The data associated with Robots can be generally categorized as either input data or output data:

  • Input data data input by a script as part of an automated process

  • Output data data output by a script as part of an automated process

Within the general categories of input and output data are several sub-categories of data, summarized below.

Data general category Data sub-category Description
Input data External data Data input by a script from a source outside Diligent One
Diligent One data Data input by a script from a Diligent One app other than Robots (where supported)
Stored data

Data input by a script from the data storage area in a robot

Data can be stored in Robots using any of the following methods:

  • Data output by running a previous script in Robots (see working data below)

  • Data uploaded by running a previous script in Robots (see exported data below)

  • Data manually uploaded to Robots

Output data Working data

Data output by a script that is configured to save data to the data storage area in a robot.

Working data remains dynamic (writable) and can be updated by a subsequent task run (script run).

Results data

Data output by a script that is configured to output results.

The results data associated with each task run (script run) is unique and separate from the results data in any other run of the same task. Results data is a read-only end product that you can download to view. You cannot update results data in Robots.

Exported data

Data output by a script that is configured to export data.

Data can be exported to two different locations:

  • Another robot

    If your organization uses an on-premise Robots Agent, you can use an ACL robot to export the data in a local Analytics table to a cloud-based HighBond or Workflow robot.

  • The Results app in Diligent One

Data that is both output and input

Depending on the point in an automation process, two sub-categories of data described above can be either output data or input data.

Data sub-category Data general category Description
Working data Output A script imports external data and prepares it. The prepared data is output as working data to the data storage area in a robot.
Input A subsequent script inputs the stored working data. The script performs analysis on the working data and outputs results data.
Exported data Output An on-premise Robots Agent runs an ACL script in an ACL robot that exports data from a locally stored Analytics table. The exported data is uploaded as working data to a cloud-based HighBond or Workflow robot.
Input A subsequent script in the HighBond or Workflow robot inputs the stored working data. The script performs analysis on the working data and outputs results data.

Data flows in Robots

The diagram below illustrates the different ways that data can flow into, around, and out of a robot.

A diagram showing the different ways that data can flow into, around, and out of a robot.

Development mode and production mode

Robot tasks, and all input and output data contained in a robot, are segregated by mode. Data that is output in one mode, or manually uploaded in one mode, is not available in the other mode. For more information, see Development mode and production mode in Robots.

Supported data formats

The two types of scripts that you can use for Robots automation – ACL scripts and Python/HighBond Command Language scripts – let you work with a wide range of data formats.

You can input data from:

  • on-premise data sources

  • cloud-based data sources

  • file-based data sources such as Excel, CSV, and delimited text files

  • Analytics tables

You can output data to:

  • Analytics tables

  • Excel, CSV, delimited text files, and PDF

  • any other file output format supported by Python

For detailed information about the types of data that you can work with when using ACL scripts, see Data sources you can access with Analytics and Exporting data. Consult Python resources for the types of data that you can work with when using Python.

For ACL scripts, the type of Robots Agent (scripting engine) that you use with Robots also impacts the type of data that you can access. For more information, see Robots specifications and limits.

Robots data in detail

The different types of Robots data are explained in detail below.

Note

Location in Robots in the tables below refers to the user interface location where icons representing the data are displayed and where you can initiate various operations with the data. The actual data may be stored on your network behind a firewall, depending on your organization's particular Robots implementation. For more information, see Data – specifications and limits.

Input data in detail

Note

The table below summarizes the input data capabilities for the entire Robots app. Support for specific capabilities differs somewhat depending on the type of robot, and for ACL robots, the type of Robots Agent.

Sub-category of input data Location in Robots Can be updated in Robots Details of data access

External data

Input examples:

  • SAP

  • Active Directory

  • Amazon DynamoDB

  • other cloud-based or on-premise external databases

  • JSON

  • other externally stored file-based data sources

Not located in Robots
  • ACLScript

    Access the data using an ACLScript command:

  • Python/HCL

    Access the data using Python data access methods, or API connections.

Diligent One data

(other than Robots)

Input examples:

  • table in the Results app in Diligent One

  • table in the Projects app in Diligent One

Not located in Robots

Stored data

  • output or uploaded by a previous script

  • manually uploaded

Input examples:

  • Analytics table

  • Excel file

  • CSV file

  • Text file

  • Input/Output tab

    (ACL robot)

  • Working data tab

    or

  • Working data panel in script editor

    (HighBond robot/Workflow robot)

Output data in detail

Note

The table below summarizes the output data capabilities for the entire Robots app. Support for specific capabilities differs somewhat depending on the type of robot, and for ACL robots, the type of Robots Agent.

Sub-category of output data Location in Robots Can be updated in Robots Details of data production

Working data

Output examples:

  • Analytics table

  • Excel file

  • CSV file

  • Input/Output tab

    (ACL robot)

  • Working data tab

    or

  • Working data panel in script editor

    (HighBond robot/Workflow robot)

  • ACLScript

    Produce the data using any ACLScript command that outputs a table + the //DATA analytic tag

    (On-premise Robots Agent only)

  • Python/HCL

    Produce the data using any Python method that outputs a file + the HCL save_working_file() method

Results data

Output examples:

  • Analytics table

  • Excel file

  • PDF file

Individual task run in the Task runs tab

Exported data

Output example:

Analytics table (as a compressed CSV file)

  • Working data tab

    or

  • Working data panel in script editor

    (HighBond robot/Workflow robot)

  • ACLScript

    Produce the data using any ACLScript command that outputs a table + the EXPORT command

Exported data

Output example:

table in the Results app in Diligent One

Not located in Robots

  • ACLScript

    Produce the data using any ACLScript command that outputs a table + the EXPORT command

  • Python/HCL

    Produce the data using any HCL method that outputs an HCL dataframe + the HCL to_hb_results() method