Summary:
This script is an AutoIT automation that adds a new phase to an existing work order. The new phase will only be added if the current work order already has an existing phase with the name you specify.Rationale:
We created this automation so that we could add one new phase to all of our existing open blanket work orders. We wanted to track how much time our Environmental Service Technicians were spending specifically on pest control activities, so we added a new "Pest Control" Phase to all of our "Blanket" work orders.Using the automation allowed us to save time on data entry, while still using the front-end application. We could have added all of these through a back-end SQL script but we were concerned that we could have potentially missed adding the transaction to a connecting table and compromised our data integrity. This automated process ensured better data integrity and only took about 10 to 15 minutes to process 75 new phase entries as opposed to 60 to 120 minutes of repetitive data entry.
Known Issues:
- This script could be further adapted to to do better error handling. It could potentially error out if the work order already has an existing phase named with the "new" phase name that you are trying to create. My solution was to watch the automation process and simply close the browser window if it produced an error. The coding solution would be to write an if statement that would simply click the next button when the automation discovered that the new phase already existed for that work order.
- Since this is a front end automation, the automation is heavily reliant on page load times. I made sure to put time delays between every automated click. These lasted up to 6 seconds (for the save feature). Your screen may load faster or slower than ours. In my experience, the longer you run an automated process ($n=100+), the slower the front end application becomes. Time delays of 6 seconds should suffice for most uses, however, you may want to adjust the time delays for your expected load times. A coding solution would be to use AutoIT's wait until the page is loaded function: _IELoadWait.
Script:
Resullt: http://jsfiddle.net/jushusted/YqWhX/embedded/result/
Loading ....
If you have any questions or need troubleshooting assistance, feel free to ask in the comments section below!
No comments:
Post a Comment