Process development for Desktop

Click this icon on the toolbar to view and download the full PDF version of this guide.

Automations for use in SS&C | Blue Prism® Desktop can be developed using current SS&C | Blue Prism® Enterprise functionality and methodology. This guide describes the differences between a standard Blue Prism interactive client and a Blue Prism interactive client with a Desktop license applied, and outlines special considerations when developing processes for Desktop.

Before creating a Blue Prism process to run in Desktop, it is recommended that you refer to Desktop process design considerations for a suggested design approach.

Desktop debug mode

If you are working in a dual license environment (one where both a Desktop and an Enterprise license are applied), you can design and test processes either for Desktop or Blue Prism Enterprise. When working with Desktop processes, click the BPD button in the Validation toolbar to switch on the Blue Prism Desktop debug mode.

When Desktop debugging is enabled, Process Studio works as if the environment has only a Desktop license applied:

  • All Desktop-only functions (for example, the Input stage, Output stage, and Enterprise Session stage types) are available and are considered during debugging.
  • In the Action stage, objects that are not relevant to Desktop are hidden.
  • Warning messages in the process validation tool will notify you when any Blue Prism Enterprise functionality that is incompatible with Desktop automations is included in the process.

When Desktop debugging is disabled, Process Studio works as if the environment has only an Enterprise license applied:

  • The Desktop-only functions are not available, and if the process was imported from a Desktop-only environment, error messages warn if the process includes any of these functions.

  • All Action stage objects are available.

Process design elements for Desktop

Blue Prism process developers can create automations to run on Desktop. The processes can incorporate forms (using an Input stage), which prompt the Desktop user to enter data required to complete the process. All published processes stored in the Blue Prism database can be made available using role permissions to connected Desktop users, and access can be controlled using existing permissions functionality.

The following design elements should be considered when creating a process to run in Desktop:

Start stage

The Start stage can be used in Blue Prism processes to add start-up parameters to a process. When input parameters are added to a Start stage, they are displayed as a form in Desktop to enable the Desktopclient user to enter required parameters before running the process. See Start stage for details.

The following image shows the Start stage in Blue Prism and the corresponding form in Desktop.

Start stage in Enterprise and Desktop

Input stage

The Input stage can be used in Blue Prism processes to add a form to a process. This stage is only available for users with a Desktop license. See Input stage for details.

The following image shows the Input stage in Blue Prism and the corresponding form in Desktop.

Input stage in Enterprise and in Desktop

If your process includes an Input stage, a debug form displays the input fields when run in Process Studio in Desktop debug mode. This enables you to create and test a process without having to publish and run it in Desktop.

The style of the debug form displayed in Process Studio does not match the style used in the Desktop user interface, but provides an accurate representation of the content.

Add radio buttons to an Input stage

The RadioButtons data type can be used in an Input stage to display a list of options to the Desktop user, from which they can select one option. The selected option is then submitted to the process when the user clicks Submit on the Input stage form.

The following image shows an Input stage configured with a RadioButtons data type in Process Studio, and the same Input stage displayed in Desktop:

 Input stage configured with a RadioButtons data type in Process Studio and Desktop

The RadioButtons data type is only available in Blue Prism environments with an active Desktop license applied, and cannot be included in published Blue Prism Enterprise processes.

To make a list of radio buttons available for an Input stage:

  1. Add a RadioButtons data type to a data item.
  2. Click Edit in the Initial Value field.

    The Radio Buttons Edit window displays.

  3. Desktop Input stage radio buttons edit window

  4. Click Add to list all the available options.

    The first option you add will automatically be set as the default selection. You can change this by selecting the checkbox for the required default option in the Selected column.

  5. Click OK to add the list and close the window.

    The new data item can now be added to the Get Value From field in the Input stage properties.

Radio buttons internal business object (IBO)

The Radio buttons IBO includes a Get selected as text action, which can be added to the Desktop process to output the selected radio button option as a Text data type. This IBO is only available if Blue Prism Desktop debug mode is enabled in Process Studio.

Output stage

An Output stage can be added to a process to display to the Desktop user a summary of the data that they input during the automation. Output stages can also be used to make any images uploaded via an Input stage available for download by the Desktop user. This stage is only available for users with an active Desktop license. See Output stage for details.

The following image shows the Output stage in Blue Prism and the corresponding form in Desktop.

Output stage in Enterprise and in Desktop

If your process includes an Output stage, a debug form displays the input fields when run in Process Studio in Blue Prism Desktop debug mode. This enables you to create and test a process without having to publish and run it in Desktop.

The style of the debug form displayed in Process Studio does not match the style used in the Desktop user interface, but provides an accurate representation of the content.

Enterprise Session stage

An Enterprise stage can be added to a Desktop process to trigger an automation to run on a specified Blue Prism Enterprise runtime resource, or resource pool. See Enterprise Session stage for details.

Enterprise Session stage properties

The following image shows the Enterprise Session stage in Process Studio:

Enterprise session stage

Input property

Description

Process

Select the process that you want to run in an Enterprise session. Only published Blue Prism Enterprise processes are listed. The Inputs tab is automatically populated with inputs from the selected process.

Resources

This field uses standard Blue Prism expression functionality to allow flexibility when specifying resources, pools, text data items, and environment variables.

Inputs

This tab is automatically populated with the inputs from the Enterprise process. Additional inputs cannot be added.

Current Enterprise Session stage limitations

When an Enterprise Session stage is successfully run in a Desktop process, a success message displays, indicating that the process has completed. However, this is not an indication that an Enterprise session has been successfully created and started. There is currently no feedback mechanism to the Desktop user once an attempt to trigger an Enterprise session has been made, nor is it possible to schedule a session. It is therefore recommended that resource pools are used where possible to increase the likelihood of a resource being available.

Session logs

By default, once a session has been successfully triggered, a session log is created in Blue Prism Enterprise, which includes the following:

  • Inputs passed into the Enterprise process.
  • Resource name.
  • Enterprise process name.
  • Desktop process name.
  • Session ID (if generated).
  • Session status.

Session timeout

A mandatory 60 minute session limit is automatically applied to all processes running in Desktop, after which time, the process is stopped. If a timeout occurs, it is captured in the session history in the Blue Prism interactive client and displayed on the View issues screen in Desktop.

The 60 minute timer is paused while an input form is open. For details on how to add a time limit (timeout) to a Desktop form, see Input stage. If the Timeout setting has not been configured for the Desktop form using the Input stage, then the form will remain open and the 60 minute timer will remain paused. The timer is also paused while an Output stage displays to the Desktop user. For more information, see Output stage.

Windows Credentials business object

As Desktop is a tool used by Desktop users on their machines, using their profile, accounts, and credentials, Desktop processes do not have access to the Blue Prism credential store, and users’ credentials are not stored in the Blue Prism database.

The Windows Credentials business object can be used to access users’ credentials stored locally for use with Desktop processes. The Windows Credentials business object interacts with credentials stored under Control Panel > User Accounts > Credential Manager > Windows Credentials > Generic Credentials.

The following actions are available:

  • Get – Retrieves the specified credentials.
  • Parameter

    Direction

    Data type

    Description

    Credentials Name In Text The internet or network address from the Windows Credential Manager.
    Username Out Text The user name for the specified credential.
    Password Out Password The password for the specified credential.
  • Set – Populates given credential name with specified values for username and password.
  • Parameter

    Direction

    Data type

    Description

    Credentials Name In Text The name of the credentials to set. This will be saved in the internet or network address field in the Windows Credentials Manager.
    Username In Text The user name for the specified credential.
    Password In Password The password for the specified credential.

User credentials in Blue Prism Desktop

In Blue Prism Desktop, users can view, edit, and delete their own credentials from Settings > Credentials.

For details see Configure credentials.

User input blocking

User input blocking in Desktop helps prevent accidental updates by the user while applications are being automated. Generally, users will not be prevented from interacting with other applications while a process is running, however, there are some exceptions which are detailed below.

When Desktop automates an application, user input (for example, mouse clicks and key strokes) is blocked whilst the automation is running:

  • If automating a Windows application, only the application being automated is blocked. All other Windows applications on the machine remain operational and will accept user inputs.
  • If automating a Java, Microsoft Word, Excel, PowerPoint, Outlook, or browser application, all applications of that type on the machine are blocked. However, only one type of browser window is blocked so, for example, if Chrome is being automated, Edge, or Firefox will continue to work as expected.

Depending on process design, the sending of mouse clicks from Blue Prism may require the target application to be in focus. It is recommended, where possible, that approaches to send mouse clicks to applications that do not require focus are used. Details of these options are listed below:

  • Mouse clicks can be sent to Windows applications using the Press or Press Menu Item actions to avoid moving a user’s mouse. When performing a Press or Press Menu Item action, the Windows application under automation may come into focus. Users can move focus to other applications once the action has completed.
  • Mouse clicks can be sent to a Java application in a way that does not move the mouse or steal the focus, as these other actions are all API driven through the Java Access Bridge.
  • Mouse clicks can be sent to browser applications using the Click action available in Browser spy mode.

Sending key strokes:

  • Key strokes can be sent to a Windows application without stealing focus, by using the Windows Press Keys action.
  • Key strokes can be sent to a target Java application, but not a specific element.
  • Text can be written to a browser application using Write stages. There is no option to send individual key strokes to a browser window other than using Global Send Keys, which requires the application window to be in focus.

Touchpad actions that are not blocked

When running a process in Desktop, the following touchpad actions related to gestures are not blocked in applications automated by the process:

  • Pinch to zoom in and stretch to zoom out.

  • Drag two fingers to scroll.
  • Tap two fingers to mimic right-click.

Differences in Blue Prism functionality

The following sections describe the differences that apply to the Blue Prism interactive client with a Desktop license applied:

Environment functions

The IsStopRequested environment function is not available in Calculation and Decision stages for business objects and processes. This is because it cannot be used to return a meaningful response in Desktop. Any existing processes that use this function will return False.

The IsBPDEnvironment environment function can be used in Calculation and Decision stages for business objects and processes to detect whether the process is running on a Desktop runtime resource.

When running a business object or process that includes the IsBPDEnvironment environment function in debug mode in Studio, the function will return No, which indicates that a Blue Prism Enterprise resource is running.

The DesktopSessionTimeRemaining environment function calculates the number of seconds left in the current Desktop session. The time remaining is displayed to the Desktop user. The timer is paused during Input and Wait stages, as these do not count towards the elapsed time. The output of the function is the time difference in seconds between the maximum session run time limit, and the time elapsed since the session start (excluding time spent during Input and Wait stages).

Internal business objects

The following internal business objects are available for use when using the Blue Prism interactive client with a Desktop license:

No other internal business objects are available with a Desktop license.

Spying

All spy modes available in this release of Blue Prism are fully compatible with Desktop, with the exception of Region mode. Region mode is available, but is not recommended for use in Desktop processes, due to potentially varying screen resolutions and other differing factors.

Excluded functionality

The following Blue Prism Enterprise functionality is not currently available in the Blue Prism interactive client if a Desktop license has been applied:

  • Work queuesDesktop is not designed to operate like a Blue Prism Enterprise runtime resource, completing one case after another in batch mode, and potentially sharing data with other runtime resources via a common work queue. Desktop is intended to operate in isolation from other runtime resources, controlled by the Desktop user, working cases individually. For this reason, Desktop solutions do not have access to Blue Prism work queues and cannot use the Work Queues VBO. Work queues are not available in System or in Control Room.
  • Because work queue functionality is not available for Desktop, the System > Reporting - Work Queue Snapshots option is also not available.

  • Environment locks – The Desktop solution does not work simultaneously with other Blue Prism processes, so it has no need for environment locks. The Environment Locking VBO and the Environment Locks screen are not available.

  • SchedulesDesktop is not designed to work with the Scheduler, therefore schedules are not available in System or Control Room.
  • CalendarsDesktop is not designed to work with calendars, therefore the Calendars VBO will not function in a Desktop solution. Calendars are not available in System or Control Room.
  • Data GatewaysDesktop is not designed to work with Data Gateways, therefore the Data Gateways VBO will not function in Desktop solutions.
  • Enterprise credentialsDesktop client users will use their own local Windows credentials in processes, rather than credentials stored in Blue Prism, so the ability to use credential functionality in Blue Prism is not required.
  • Session control functionality – The ability to start and stop sessions in Control Room is not available.
  • Automatic archiving – The ability to select automatic mode on the System - Archiving screen is unavailable.