- Getting Started
- Before You Begin
- How To
- Notifications
- Using VB Expressions
- Designing your App
- 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
- Leveraging RPA in your App
- Leveraging Entities in Your App
- Leveraging Queues in Your App
- Apps in Studio Web
- Application Lifecycle Management (ALM)
- Basic Troubleshooting Guide
Use DataTable with Table and Edit Grid controls
Bind process DataTable arguments to Table and Edit Grid controls to display, add, edit, and delete rows at runtime.
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 |
Table
-
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.ToListSource
The table columns should reflect the columns of the DataTable object.
Edit Grid
-
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)
-
-