Skip to main content
This content is now archived and is no longer updated. Progress is not calculated. Pega Cloud instances are disabled, and badges are no longer awarded.

Interrogation overview

Overview of interrogation

Interrogation is a technique that exposes the underlying objects of the enterprise application and uniquely identifies each object. Interrogation results in the creation of controls corresponding to application objects. Pega Robot Studio™ creates a representation of the object in the Object Explorer.

You can then use these objects to build automation workflows and monitor application events. While adapters help you establish the connection with an enterprise application, interrogation exposes the Properties, Methods, and Events of the application and its objects. The interrogation process does not change the underlying source code or property values of the application.

In the following example, the Object Explorer displays the representation of objects of the CRM application.

interrogation overview 1

When you interrogate an object, Pega Robot Studio saves the attributes (matched rules) of the object. Each time the application runs within the solution, the solution compares the object property values of the application to the saved matched rule values of the interrogated objects. If the two values agree, Pega Robot Studio matches the object for use in the solution.

Elements created when interrogating an application


A control is a representation of an application object created by interrogating the object. Pega Robot Studio organizes controls in a hierarchy.

For example, interrogating the Clear and Equals buttons and the Results text box on a Calculator application results in the following hierarchy:

controls 1

The hierarchy is also represented in the classes associated with the control. For example, a text box interrogated in a Windows application is in the OpenSpan.Adapters.Controls.Textbox class. The text box control inherits all the relevant properties, methods, and events associated with the Textbox class and its base classes.

A control performs the following functions:

  • Saves the rules that are necessary to accurately identify the object for the next time the application runs
  • Acts as a proxy for the object so that the object can be used in automations even when the user object has not been created within the target application
  • Provides a consistent interface for the object regardless of the underlying application technology


A target is a Pega Robot Studio object that corresponds directly with an application object.

A control represents the virtual object that does not change with different instances of the application. A target represents the actual application object that exists within the application at any given moment.

Targets are created and destroyed when application objects are created and destroyed. Targets are platform-specific. They encapsulate the necessary logic to automate and monitor application objects. As a result, the text box control can interact with any target that implements the text box interface, such as a Windows text box target, a Java text box target, or an HTML text box target.

In the following example, CRMtxtUserName control in the Object Explorer highlights the corresponding target User Name in the CRM application.

interogation overview 2


Factories (along with translators) enable communication between application targets and their platforms.

During interrogation, Pega Robot Studio automatically adds the required factories. They appear in the Object Explorer. They indicate successful interaction between Pega Robot Studio and the application platform.

In the following example, interrogation of CRM application results in creation of two Factory elements.

Interrogation overview 3


A translator is a unit of code that lets Pega Robot Studio automate and receive events from an application object. Targets communicate directly with translators. Pega Robot Studio injects translators into a target application and attaches translators to the appropriate application object.

Translators do not require any modifications or recompilation of the target application. Translators are in the same language as objects with which they interact.

Best practices for interrogation

  • Interrogate all controls needed for a business case.
  • Method-test all objects to ensure that the automation can interact with them.
  • Use interrogation to provide developer access to the applications used in the project.
  • Use interrogation to perform a preliminary interrogation of the application controls.
  • Provide developer access to give an advance look into possible issues with interrogation that may require adjustments to the interrogation process, or even the project itself, to meet the specific requirements.
  • Find issues first to reduce development time before developing the solution.

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice