Fast-Track UiPath Developer Module 11: Best Practices and Tips Machina Automation Fast-Track UiPath Developer Module 11: Best Practices and Tips
11 – Best Practices and Tips Overview: This module presents some best practices and tips for building and deploying automated workflows in UiPath. Organization: This module is organized into the following section: 11.1: Best Practices and Tips
11.1 – Best Practices and Tips Name Activities to more meaningful names Document/Annotate your workflows describing the functionality Description Pre-Conditions Post-Actions Arguments List Use UiExplorer to explore, create, and improve selectors Use the Dispatcher and Performer design pattern when working with processes that use an Orchestrator Queue Use Wildcards (*) and (?) within selectors to make them accurate and consistent Add variables to selectors to make them dynamic
11.1 – Best Practices and Tips Use DataTables for your TransactionData and DataRows for your TransactionItems when Orchestrator is not available Remember the syntax for getting values out of Dictionary variables/arguments: Config("KeyFieldName").ToString Remember the syntax for getting values out of QueueItems: TransactionItem.SpecificContent("FieldName").ToString() Decompose large processes into simpler smaller individual processes Arguments Prefix arguments with the direction the data is being passed: in_DataTable (passing into the invoked XAML file) out_FilteredData (passing out of the invoked XAML file) io_DataTable (passing into and out of the invoked XAML file)
11.1 – Best Practices and Tips Add a Maximize Window as the first activity inside the Do of an Open Browser and Open Application activity Use AndAlso in your conditions for short circuiting vs using And. Before writing DataTables out to files, always verify that the DataTable is initialized and that it contains data (Datatable is not nothing) AndAlso DataTable.Rows.Count > 0 Use an Output DataTable activity followed by a Write Line activity to see the contents of a DataTable Use Control+D or right-click and select Disable Activity to comment out activities for testing other areas of the workflow Use a separate “sandbox” workflow to build and test small pieces of functionality in isolation Use Flowcharts with Flow Decisions instead of nested Ifs in a Sequence
11.1 – Best Practices and Tips UiPath recording features can be used as starting points for automations, but always verify the selectors returned Avoid using the “idx” attribute whenever possible The default Timeout is 30 seconds. Add a value in milliseconds (i.e. 300) so that you aren’t waiting 30 seconds for the Timeout to expire if there is a problem with the activity Use the Element Exists activity on UI elements to verify the state of an application (i.e. logged in, not logged in, etc.) Delete the Exceptions_Screenshots directory before publishing a project that uses the RE Framework When using the DataTable RE Framework, ensure that the TransactionData DataTable variable is loaded with the data to run the process in the Init state