In this article, I am going to talk about the challenges faced and the fixes applied during the automation of windows application for one of our clients in the healthcare domain.
Small Recap
A reputed healthcare company had a requirement of migrating all their clients’ medical history in one of their government-approved applications. A huge task isn’t it? A huge amount of manpower was required to finish the work manually and in a given deadline. We are not even considering the human errors which were bound to happen and the efforts that were required to identify and resolve the same. What an ideal situation for automation to take over and help the business to save their dollars with a small investment.
Sogeti stepped in to understand the process and to provide the automation solution. Development of a bot, which can run 24*7, 365 days a year. Sounds perfect!!! The process looked simple. Application understanding was done. Targets set were achievable. Everything seemed to be in a proper place. UiPath version 2019.10.1 was the automation tool selected for this.
Just like any other development project, automation development too follows the development lifecycle. It starts with the feasibility of the process and ends with an unattended execution of the bots in the PROD environment.
But the journey wanted us to learn more about the windows application that we were going to automate. We also had to learn more about the unattended execution of the bot.
Building Your Defence Along the Way
Once you start bot development, you know more about the challenges causing the delays in development and difficulties in a time-bound project.
Compatibility
UiPath Studio 2019.10.1 with Windows 7
UiPath studio v 2019.10.1 has a compatibility issue with windows 7 OS. It freezes while trying to indicate an element of the target application.
UiPath activities allow capturing the elements of the target application through “Indicate on screen”
When trying to indicate an element on the screen of the target application, UiPath studio becomes non-responsive.
Fix
Since Windows 7 OS has compatibility issues with UiPath Studio 2019.10.1. Upgrade Windows OS to Windows 10 or above (OR). Downgrade UiPath studio to 2019.4.4
Other attempted fixes that were provided by UiPath Support team and were not successful
- Re-install UiPath
Studio - Increase CPU disk
space - Running UiPath
studio in admin mode - Disable antivirus
Note: UiPath studio version 2019.4.4 is a much stable version with Windows 7 and above OS.
Test Your Defence
Battle executing your bot and checking if it behaves correctly; is a huge plus in bot development and maintenance.
Windows application with unattended execution
While the attended execution of bot was working fine, unattended execution had some trouble in identifying the elements of the application.
Resolution
In an Unattended execution, the resolution issue was identified. The application was reduced by its original size which caused the bot difficulties in identifying the elements from the screen.
Fix
Setting up the Robot resolution in Orchestrator for this issue. It involved setting up the height, width & depth that matches the Dev environment.
How to make sure the proper resolution setting has been defined i.e. height, width & depth
In the development server:
- Use the ‘Take
Screenshot’ activity. Using this activity, do not select anything on the
screen, select the entire desktop. - Use ‘Save Image’
activity to save the image at the desired location. - Check the
‘details’ tab in the properties of the image saved. Note the depth, height, and
width. Once you have all the details, Login to ‘Orchestrator’ and change the
‘Runtime settings’ (Resolution Width, Height and Depth) for the Robot.
‘SimulateClick’ property with unattended execution
With ‘SimulateClick’ property checked, an unattended bot was not able to click the button on popup windows.
The fix was to just uncheck the ‘SimulateClick’ property. This created an option for default behavior for button click to take the precedence.
Conclusion
For windows applications, unattended execution behaves differently. Different behaviors need different solutions. This is my small attempt to save your time if you face a similar situation in bot development. The compatibility issue was never considered as an issue since no one faced it. An out of box thinking worked correctly.
Thank you all for taking the time and reading this article!