Pre-General Availability: 2024-09-02

Alternatives to Hard Coding Data

Hard coding values in your robot can make updates tedious and time consuming. To reduce your maintenance costs, Oracle Integration offers numerous alternatives to hard coding data.

You can use many of these robot resources in a robot action. See Define the Fields of an Action.

Illustration

The image, titled Robot Resources, provides an overview of the 7 types of robot resources, their main uses, and their relationship to each other. A page state holds validation checks for a robot's interaction on a page and references a target. A target identifies the HTML element that a robot interacts with. A variable holds data temporarily so you can use it elsewhere. An input defines the data that comes into a robot. An output defines the data that comes out of a robot. A variable, input, and output are each of a specific data type. Their data types define how data should be classified. All of these resources are managed within a robot. Finally, a robot connection defines the sensitive data that a robot can reference; a robot connection is stored outside a robot for easier maintenance.

Overview

Option Why they're helpful Example

Variables Variables

A variable holds data temporarily for a robot so that you can use the data somewhere else.

Learn more: Variables

Consider the get text action, which obtains text from a field. You can hold the value in a variable. Additionally, if the text value is an output for the robot, you can use the variable as an output property.

Input Input

An input defines the data that comes into a robot, typically when the robot starts running.

Learn more: Triggers

Consider a robot that needs to update a purchase order. An integration obtains the purchase order number and passes it to the robot as an input property. You dynamically define the input properties in a map action in an integration. You can also define these values when you test a robot outside an integration.

Output Output

An output defines the data that comes out of a robot. You can dynamically pass the data elsewhere, such as to another robot, integration, or action in an integration.

Learn more: Triggers

Consider a robot that obtains the total value of a purchase order. The robot can pass the total value into an output, which an integration can use to take further action.

Page states Page states

A page state is a container for one or more validation checks. A validation check occurs before or after an action in a robot.

Learn more: Page States

Consider an application that experiences latency issues during periods of high usage. Without validation checks, a robot that runs in the application could fail if the robot attempts to complete a task before the required fields and buttons are visible. Validation checks ensure that all fields and buttons are visible and enabled on a page before a robot attempts to complete its task. These checks increase the likelihood of a robot completing its tasks successfully.

Target a page element Targets

A target identifies the HTML element that a robot interacts with. Every target has two components: a user-friendly name, and the hard-coded XML path language, or XPath, for the element.

Learn more: Targets

Targets help with maintenance. Consider a robot that interacts with the same HTML element multiple times. Oracle Integration creates a target for the element and can reuse the target for each interaction. Therefore, if the HTML for a page changes, all you need to do is update the target one time, and all of the robot's interactions with the element are updated.

Data types Data types

A data type defines how data should be classified.

A data type is the basis of every variable, output property, and input property. You can use one of the default data types provided by Oracle or a custom data type that you create.

Learn more: Data Types

Consider a robot that must update a set of invoices. You can create a data type that defines the components of invoice data, such as invoice number, invoice amount, supplier name, and due amount. Next, you can create a input of the data type, and use the trigger to pass this information into the robot.

Robot connections Robot connections

A robot connection lets you store sensitive data, such as sign-in credentials, outside a robot for easier maintenance.

Learn more: Robot Connections

In order for a robot to sign in to an application, you must provide a user name and password. However, an administrator needs easy access to this information so they can update the password according to your organization's security policies. Thanks to a robot connection, this sensitive information lives outside a robot, so you can update it easily outside the lifecycle of the robot.

Variables

Area More information
How to define the values A variable stores one value or a set of values that come from another place. You typically use a variable to hold the output value of a robot action. You cannot hard code values for a variable.
Where to define the values Create a variable when you add an action to a robot, or at any time on the canvas.
How to use the values If you use a variable to hold the ouput value of a robot action, you can use the variable however you need to. For instance, the variable might be the input for another robot action, a part of an expression, or the output for a robot.

Triggers

Area More information
How to define the values

Inputs and outputs contain one or more properties. Define the properties, including specifying their data types and whether they hold a single value or an array of values, when you create the trigger.

You don't define a value for an input or output because a trigger is a container for its properties. Additionally, you can't hard code values for the properties. Instead, you dynamically pass in values for each input and output property.

Where to define the values

Create an input or output in a robot, either when you define the trigger of a robot, or at any time on the canvas.

How to use the values Use an input or output property when you define a robot action.

Page States

Area More information
How to define the values

Page states contain one or more validation checks for a robot action. A validation check uses a target to reference a specific UI control, such as waiting until a button is visible on a page.

Where to define the values

Create an input or output in a robot, either when you define the trigger of a robot, or at any time on the canvas.

How to use the values Select a page state for a robot action when you define a robot action.

Targets

Area More information
How to define the values

Oracle Integration creates targets for you when you select an element for the robot to interact with while building a robot, either using the recorder or the low-code tools.

Where to define the values

Create a target when you add an action to a robot, or at any time on the canvas.

How to use the values

Your settings determine whether Oracle Integration reuses targets for previously selected UI controls. You can override this setting, if needed. Reusing a target offers benefits. For example, you can update a target one time, and all robots that use the target get the update.

Data Types

Area More information
How to define the values

A data type can contain one or more properties.

Oracle Integration provides several predefined data types, including string, boolean, and number.

You can define additional data types as needed, including defining their properties.

Where to define the values Create a data type at any time on the canvas.
How to use the values Select a variable as the basis when you create a variable or create a trigger's input or output.

Robot Connections

Area More information
How to define the values

A robot connection contains one or more parameters. Define hard-coded values for the parameters when you create the robot connection. You cannot pass in values to a parameter.

Additionally, a robot connection and its parameters live outside a robot, so you can update the parameter values without updating a robot.

Where to define the values

Create a robot connection in a project.

How to use the values

Use the value of a parameter when you define a robot action.