- Getting Started
 - Demo apps
 - How To
 - Notifications
 - Using VB Expressions
 - Designing your App
 - Designing your app with Autopilot
 - Events and Rules
- Rule: If-Then-Else
 - Rule: Open a Page
 - Rule: Open URL
 - Rule: Close Pop-Over/Bottom Sheet
 - Rule: Log Message
 - Rule: Show Message
 - Rule: Show/Hide Spinner
 - Rule: Set Value
 - Rule: Start Process
 - Rule: Reset Values
 - Rule: Upload File to Storage Bucket
 - Rule: Download File From Storage Bucket
 - Rule: Create Entity Record
 - Rule: Update Entity Record
 - Rule: Delete Entity Record
 - Rule: Add to Queue
 - Rule: Trigger workflow
 - Rule: Submit Action
 
 - Leveraging RPA in your App
 - Leveraging Entities in Your App
 - Leveraging Queues in Your App
 - Leveraging Media in your app
 - Leveraging Actions in your app
 - Leveraging Connections in your apps
 - Apps in Studio Web
 - Application Lifecycle Management (ALM)
 - UiPath First-Party Apps
 - Basic Troubleshooting Guide
 

Apps User Guide
Make sure you already have a DataTable object in your app.
DataTables objects can be defined as input, output, or input/output arguments of a process. To use these DataTable objects, you need to reference the process where they are used as arguments.
DataTable only supports primitives in a column. Complex type arguments in a column do not function in DataTable.
Say you have a process named "Process_A", which has the DataTable objects as arguments:
| 
                               Input arguments  | 
                               in_dt1  | 
| 
                               Output arguments  | 
                               out_dt1  | 
| 
                               Input/Output arguments  | 
                               inout_dt  | 
- 
                  
Navigate to the General tab of your Table control.
 - 
                  
In the Data source field of the control, open the expression editor, and write the following expression:
Processes.<process_name>.<datatable_output_argument>.ToListSourceProcesses.<process_name>.<datatable_output_argument>.ToListSourceFor example:
Processes.Process_A.out_dt1.ToListSourceProcesses.Process_A.out_dt1.ToListSourceThe table columns should reflect the columns of the DataTable object.
 
- 
                     
Navigate to the General tab of your Edit Grid control.
 - 
                     
In the Data source field of the control, open the expression editor, and write the following expression:
Processes.<process_name>.<datatable_output_argument>.ToListSourceProcesses.<process_name>.<datatable_output_argument>.ToListSourceFor example:
Processes.Process_A.out_dt1.ToListSourceProcesses.Process_A.out_dt1.ToListSource - 
                     To perform operations on the DataTable rows, such as adding, editing, or deleting:
- 
                              
Make sure the Editable, Add rows, and Delete rows properties are set to true.
 - 
                              
Switch to the Events tab of the Edit Grid control, then configure the corresponding rules:
- 
                                    
To add rows, click Create rule for Row added, then use the Set Value rule:
Item To Set
Processes.<process_name>.<datatable_output_parameter>Processes.<process_name>.<datatable_output_parameter>For example:
Processes.Process_A.out_dt1Processes.Process_A.out_dt1Value
Processes.<process_name>.<datatable_output_parameter>.AddRow(MainPage.EditGrid.NewItem)Processes.<process_name>.<datatable_output_parameter>.AddRow(MainPage.EditGrid.NewItem)For example:
Processes.Process_A.out_dt1.AddRow(MainPage.EditGrid.NewItem)Processes.Process_A.out_dt1.AddRow(MainPage.EditGrid.NewItem) - 
                                    
To delete rows, click Create rule for Row deleted, then use the Set Value rule:
Item To Set
Processes.<process_name>.<datatable_output_parameter>Processes.<process_name>.<datatable_output_parameter>For example:
Processes.Process_A.out_dt1Processes.Process_A.out_dt1Value
Processes.<process_name>.<datatable_output_parameter>.DeleteRowAt(MainPage.EditGrid.RowIndex)Processes.<process_name>.<datatable_output_parameter>.DeleteRowAt(MainPage.EditGrid.RowIndex)For example:
Processes.Process_A.out_dt1.DeleteRowAt(MainPage.EditGrid.RowIndex)Processes.Process_A.out_dt1.DeleteRowAt(MainPage.EditGrid.RowIndex) - 
                                    
To modify rows, click Create rule for Row modified, then use the Set Value rule:
Item To Set
Processes.<process_name>.<datatable_output_parameter>Processes.<process_name>.<datatable_output_parameter>For example:
Processes.Process_A.out_dt1Processes.Process_A.out_dt1Value
Processes.<process_name>.<datatable_output_parameter>.UpdateRowAt(MainPage.EditGrid.RowIndex, MainPage.EditGrid.SelectedItem)Processes.<process_name>.<datatable_output_parameter>.UpdateRowAt(MainPage.EditGrid.RowIndex, MainPage.EditGrid.SelectedItem)For example:
Processes.Process_A.out_dt1.UpdateRowAt(MainPage.EditGrid.RowIndex, MainPage.EditGrid.SelectedItem)Processes.Process_A.out_dt1.UpdateRowAt(MainPage.EditGrid.RowIndex, MainPage.EditGrid.SelectedItem) 
 - 
                                    
 
 -