Note: You are looking at a static snapshot of documentation related to Robot Framework automations. The most recent documentation is at https://robocorp.com/docs

Conversion Accelerator

Check out the Big picture behind the Gen1 conversion before diving in too deep into tooling.

We recommend using the Conversion Accelerator from our Visual Studio Code -extensions. The projects targeted for conversion are generally on the larger side. Our VS Code extension now has the Flow Explorer and the full tooling support to get everything started in one toolset.

The developers working with the conversions should really master our developer certifications to level III first because it is really easy to "leave performance on the floor" by not knowing about the target system's capabilities.

Ideally, they will also understand the logic of the existing tooling, at least superficially. The conversion process should have clear access to the people who know and can use the old tool.

The Conversion Accelerator -tooling aims to provide tooling, so you can plan the best course of attacking your conversions. Identify common components to use code share, evaluate the complexity of the robots, etc. The tooling also provides a way to convert the source robots into Robot Framework scaffolds that you can place in the bot project you start.

BluePrism

BluePrism is the most challenging target for conversions because it has many different models and ways of identifying things, scoping variables, and quite an unorthodox way of handling exceptions and returns.

The main thing to remember with BluePrism conversion is that knowing the RobotFramework basics, and the existing libraries are your keys to success. Many things are just built-in to RobotFramework that require specific implementation in BP that you can just get rid of.

The tool will continue to evolve based on the feedback we get: it is critical to understand that as the source project can, for example, have some unique C# code embedded in BP objects, making a total conversion an impossible task, so human developers are needed to get the conversions over the finishing line.

Exporting a BluePrism project

  1. Export the bot XML using the official guide
  2. Export needs to be done on the "Release" -level in BluePrism so that it includes enough data for the conversion to work.
  3. The format of the export can be .bprelease or .xml

Automation Anywhere

There are two different versions of Automation Anywhere out there Automation 360 (A360) and AAv11. We support both of them so that you don't need to migrate from AAv11 to A360. We recommend to convert from AAv11 to Robotframework directly.

A360 and AAv11 are on a domain level and structure much closer to Robot Framework than BluePrism.

Exporting an A360 project

  1. Export the bot .zip using the official guide
  2. Extract the .zip
  3. In Converter Accelerator, select A360 and one or more folders

Exporting an AAv11 project

  1. Export the bot .aapkg file using the official guide
  2. In Converter Accelerator, select AAv11 and one or more .aapkg files

UiPath

UiPath export formats and types looked the easiest initially, but as we got along, we found even more variances in the export formats than BP had. Another big hurdle is that many UiPath implementations use and point to proprietary libraries that expose very few details about what they actually do. Still, it is critical to note that we have yet to see a feature or action that could not be done using existing Python and RobotFramework libraries. So using the outputs from our tooling to understand the problem and then replacing the missing parts with Python or RobotFramework already yields much more stable and easier-to-maintain bots.

Steps to convert your UiPath Robots

A typical UiPath Project would contain a project.json file and one or more XAML files. The converter tool takes the entire project folder as input which may contain multiple XAML files. The output of the converter tool would be .robot files. Each .robot file would contain suggestions on a keyword that could be used to replace UiPath activities.

  1. Open VS Code and start by creating a new robot based on the Standard template
    • The new robot creates a folder where you can work with your conversions
  2. Open the Command Palette by pressing: Ctrl+Shift+P (Shift-Command-P for macOS)
  3. Run the command Robocorp: Convert third party RPA file to Robocorp Robot
  4. Select UiPath in the next step, and File Explorer / Finder window will open.
  5. Now browse to the root folder of your UiPath project that you want to convert.
    • If you do not know the location of your project folder, then Open your project in UiPath Studio and click the Folder button on the top left of the screen. uipath-folder
  6. The Converter tool will run, and in the next few seconds, you will see the status message on the bottom right of your VS code.
  7. Within your current workspace folder, you will see a new folder called `converted``.
  8. Inside this folder, you will see multiple .robot files with suggested keywords to replace UiPath activities. uipath-conv-result
  9. Flow Explorer is a crucial tool in understanding the flow of the robot after conversion.

Note: The conversion will give you a skeleton structure of what keywords, libraries, and python functions you can use. You need to review and modify the code to fill the gaps in the process.

Also, we currently support Sequence and Flowchart workflow types. Workflows built using the State Machine -model are not yet supported. The processes inside State Machine -projects are handled, but the state machine itself is not.

Last edit: December 29, 2022