Troubleshooting – Mainframe integration

This page provides some common issues and suggested resolutions for using mainframe automation within Blue Prism

Launching a mainframe app causes an error message, similar to : "Unable to load DLL 'HLLAPI32.DLL': The specified module could not be found"

This is due to the mainframe installation not adding its install directory to the Windows PATH environment variable.

To resolve this issue, open System Properties in the Windows Control Panel, enter Advanced, click the Environment Variables button and append the path to the directory containing the referenced file to the PATH variable, prefixed with a semi-colon.

My mainframe app exits when my process finishes / resets

When a Blue Prism Visual Business Object accesses a mainframe, it opens a connection through a terminal emulator onto that mainframe, and processes any communication through that emulator.

When the process using the VBO is completed or reset, the VBO closes the connection it opened within the terminal emulator.

Some emulators will leave the mainframe connection and corresponding window open, but some (specifically some EHLLAPI emulators) will close themselves down, severing the connection to the mainframe as part of their disconnection process. This could potentially leave users logged into the mainframe session if the process has not logged them out normally.

One way around this is to launch the emulator separately and attach to it using the appropriate action within the VBO. This ensures that the mainframe session is not terminated when the VBO is reset.

Another approach is to set the additional nodisconnect option in the application parameters.

Alternatively, care should be taken to ensure that the session is logged out in the Clean Up page of the VBO.

Setting the cursor position does not work

Even when the Terminal Emulator API supports setting the cursor position, the underlying mainframe application may not. In this case it might take no notice of the cursor movements at all, or the cursor might move, but subsequent text entry will revert it to its previous position. This behaviour is defined by the application itself, and cannot be altered.

Attaching to an existing session.

Only (E)HLLAPI based terminal emulators allow attaching to an existing session. Once a session identifier has been setup in both Blue Prism and the mainframe application (which is sometimes called a short name) You can attach to the existing session using an attach action within a navigate stage.

Unexpected results when running two sessions simultaneously on the same resource.

It is not possible to use any (E)HLLAPI-based terminal emulator to run more than one session simulateously from within the same Windows process. This is a design limitation of the API itself.

There are two ways to work around this. You can use two (or more) separate resource PC instances, and run the processes on these. From V4.2 onwards, the simpler solution is to use any of the external Process Mode options (set via Application Modeller) to cause Application Manager to run as a separate Windows process for the business object in question.

Attachmate Reflection (.NET API)

To use the Reflection .NET API, the Application Programmer Interface component from the Reflection installer must be selected. Please refer to the terminal emulation setup support guide for more details.

IBM Personal communicator – International considerations

When using IBM Personal communicator with double byte character sets (DBCS). The option to display Shitf-In/Shift-Out characters can be configured in the .ws session file.

  • If SoSiToSpace=Y in the .ws file, then SO/SI is converted to space (0x20)
  • If SoSiToSpace=N in the . ws file, then SO/SI is converted to equivalent SO/SI (0x0e/0x0f)
  • If the SoSiToSpace variable is not set, it is treated as SoSiToSpace=N
The SoSiToSpace value needs to be placed under the [DBCS] section of the ini file. It is recommended that a text editor other than Windows Notepad is used to edit the file as Notepad can corrupt the file if it includes non asci data.

Example:

  • [DBCS]
  • SoSiToSpace=Y

Configuring the .ws session file - Click for a larger image