Pega Robotic Automation Studio

How do you wait for an event from an adapter using .NET?

Last Updated January 27, 2017. Published on January 27, 2017.

Studio automations let you wait for an event. This is useful in workflows where you expect a certain event to occur and do not want to create separate automations for handling the flow.

This looks like the illustration below. To get this, you first drag the event you are going to wait for onto the design page, right-click the event, and select the Wait for this event option. Once you do this, you will see a WaitForEvent block like below.

Connection block example

How do I resolve a "command line is too long" error?

Last Updated January 30, 2017. Published on January 30, 2017.

If you receive the following error message, follow the steps below to get the command line arguments and rebuild the project correctly:

Command line is too long error message

Getting the command line arguments

Follow these steps to copy the command line arguments:

How do I open a Siebel pop-up window using an automation?

Last Updated January 27, 2017. Published on January 27, 2017.

Use the Siebel.ShowPopup method in your Studio automation to open a Siebel child window.

When interrogating the Siebel control used to open a pop-up window, Studio names it appropriately and makes it available for use in automations:

Interrogating a Siebel control

How do I maximize performance when using BlueZone?

Last Updated January 27, 2017. Published on January 27, 2017.

When possible, use BlueZone version 6.1.4 or higher because BlueZone introduced asynchronous support in that version and this greatly enhances performance. When you have an asynchronous emulator, like BlueZone 6.1.4 or higher, as soon as the emulator is updated, even when Studio sets the text, Studio is notified of the screen change, so no time is spent waiting.

Note: When using BlueZone 6.1.4 or higher, you should accept the defaults (True) for both the SerializeWinhllapiAccess and UseExtendedFunctions options.

How do I automatically advance focus (tabbing) from a text box to another control?

Last Updated January 27, 2017. Published on January 27, 2017.

Use automation logic to advance focus from a text box to another control after a specified number of characters are entered.

This automation shows how to use the TextChanged event, TextLength property, and the = Equals comparison component, in combination, to trigger a focus change (tabbing) from a text box to another control.

Connection block example

How do I control the number of retries after an Exception error is thrown in an automation?

Last Updated January 27, 2017. Published on January 27, 2017.

Use a forLoop component in combination with a Try..Catch to control the number of times an automation will be retried.

In this example, the Try component is preceded by a forLoop component. The forLoop component is used to configure the maximum number of iterations or loops that the automation section contained within Try..Catch can execute.

Connection block example

How do I cancel a keystroke made in a Windows application?

Last Updated January 27, 2017. Published on January 27, 2017.

Use the KeyDown event at the Windows form level to cancel a keystroke made in a Windows application.

This example automation demonstrates how to cancel the selection of the 8 key in the Windows Calculator application:

Connection block example

How do I make sure a tooltip appears on a Windows form or application bar?

Last Updated January 27, 2017. Published on January 27, 2017.

For a tooltip to appear on a Windows form or application bar, the form or bar must be active.

In your automations, use the Activate method to activate and give focus to a Windows form or application bar before attempting to show a tooltip.

In this example, selecting the Select to Activate Application Bar button calls the Activate method, which activates and places focus on the Application Bar. The user then hovers over the Application Bar label control to have the system display the tooltip.

Why does an automation that uses a proprietary (3rd party) control fail at run time?

Last Updated January 27, 2017. Published on January 27, 2017.

If you have an automation that uses a proprietary or 3rd party control which works in the development environment but fails in the Runtime environment, the automation may lack access to the translator for the proprietary control used in the automation.

Follow these steps to confirm that the automation failure is due to an inaccessible translator or adapter file:

Why do I get this exception error: ExitPoint executed but EntryPointArgs does not exist in InnerArg tree?

Last Updated January 27, 2017. Published on January 27, 2017.

The following exception indicates an automation that has both an entry point and an exit point and also has an event that bypasses the entry point and connects to an exit point:

ExitPoint executed but EntryPointArgs does not exist in InnerArg tree

Here is an example of the message:

Example exception message

To avoid this exception, always call the entry point from another automation. For instance, this is incorrect: