- 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: 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
- Application Lifecycle Management (ALM)
- Basic Troubleshooting Guide

Apps User Guide
Edit Grid
linkThe Edit Grid control allows you to list, edit, paginate, or search tabular records.
General
link-
Add new column - Add new columns to your data by clicking the plus "+" icon.
-
Hidden - If true, hides the control at runtime.
-
Editable - If false, marks the control as read-only.
-
Add rows - If true, allows app users to add new rows at runtime. If false, users cannot add new rows.
-
Delete rows - If true, allows app users to delete rows. If false, users cannot delete rows.
-
Search - If true, exposes a built-in search capability.
The Date Picker in the Edit Grid does not support editing column types which contain time values. Configure the column in your Data Service entity using the Exclude time option to avoid errors in your data.
If you need to include a time column, set the Edit mode view option of the column to the Textbox type.
Events
link-
Row selected - Configure what happens when a row is selected.
-
Row added - Configure what happens when a row is added.
-
Row modified - Configure what happens when a row is modified.
-
Row deleted - Configure what happens when a row is deleted.
Style
link-
Control Alignment - By default, inherits the parent alignment. A different alignment other than the parent can be set. To default back to the parent alignment, deselect the overridden options.
Note: The alignment is dependent on the layout selected for the parent (Vertical vs Horizontal). -
Background color - The background color for the Grid header and Grid body.
-
Border - The border for the control. Border Thickness, Color, and Radius can be configured.
-
Font - The font attributes for both the Column header and Column body text, such as font family, size, color, or style (Bold, Italic and Underline). By default, the control inherits the font family of the immediate parent container which is indicated by the keyword "Inherited".
-
Margin - The margin of the control. By default, a margin of 4px is set. Top/Bottom and Left/Right margin properties are combined. These properties can be detached using the Link button at the right side of the Margin section.
-
Size - The width and height of the control. By default, the size is set to
auto
. To set minimum or maximum values, click the three dot icon (...). If the size of the control is smaller than the options, a scroll bar is displayed.
VB properties
link
VB property |
Data type |
Description |
---|---|---|
|
|
References the currently selected item in the control. |
|
|
References the data source for the values inside the Table control. |
|
|
References the item being created by the Add row option. The Row added event references this property. |
|
Boolean | Determines if the Edit Grid is editable. |
|
Boolean |
Determines if rows can be added to the Edit Grid. |
|
Boolean |
Determines if rows can be deleted from the Edit Grid. |
|
Integer |
References the index of the row for update and delete operations. Should be used for process integration where there entire dataset is in-memory. |
|
Boolean |
Enables or disables the search function. If true, search is enabled. |
|
| The currently selected value of the control.
|
|
Boolean | If true, hides the control at runtime. |
|
Boolean | If true, disables the control at runtime. |
Converting complex data to AppsDataSource
link.ToListSource
method that converts data from data table to AppsDataSource.
- Save the data to a variable of type DataTable. For example, name the variable "dt".
- In the Data source field of table controls, use the following expression:
dt.ToListSource()
dt.ToListSource()
Generically, complex objects can be converted to AppsDataSource by using the syntax:
Processes.ALLDATATYPES.out_datatable.ToListSource()
Processes.ALLDATATYPES.out_datatable.ToListSource()
Using DataTable in Edit Grid controls
linkMake 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 |
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>.ToListSource
Processes.<process_name>.<datatable_output_argument>.ToListSourceFor example:
Processes.Process_A.out_dt1.ToListSource
Processes.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_dt1
Processes.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_dt1
Processes.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_dt1
Processes.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)
-
-
Using entities with Edit Grid controls
linkThe following example shows how to bind an entity to an Edit Grid control, then perform CRUD operations using the control and entity-specific rules.
The entity used is called "Employee", and has the following fields:
-
Name
-
Age
-
Date of birth
-
Gender
-
Team
-
Date of Joining
-
IsFullTime
-
Skills
Displaying entity records
- Create a new VB app, then add the Employee entity to the app.
- Add the Edit Grid control to the app.
- In the Data source field of the Edit Grid control, use the Query builder and select the Employee entity. The columns of the control are automatically populated with the fields of the entity.
- For every column, make sure that the Edit mode view dropdown is set to the correct data type, as follows:
Option Description Date of Birth
Date Picker
Age
Textbox
Name
Texbox
Gender
Dropdown
Team
Dropdown
Date of Joining
Date Picker
IsFullTime
Checkbox
Skills
Multi select
Gender and Team are entity choices sets. When you select Dropdown in the Edit mode view for these columns, two new properties are displayed: List Source and Column. - To fetch the options in a choice set:
- In the List source field, use the following syntax
GetChoiceSet("Choiceset Name")
GetChoiceSet("Choiceset Name")For example, for Gender and Team columns, the List source field should have:
-
Gender -
GetChoiceSet("Gender")
-
Team -
GetChoiceSet("Team")
-
- In the Column field, write
"Name"
.
Skills is an entity choice set that allows multiple selection. When you select Multi select in the Edit mode view for these columns, two new properties are displayed: List Source and Column.
- In the List source field, use the following syntax
- Configure the Skills column as you did for Gender and Team.
- Go to the Event tab of the Edit Grid control.
- For the Row added event, create the following rule:
- Add the Create Entity Record rule.
- In the Which entity should the record be created in?, select the Employee entity.
- In the Values to set field, update the following:
-
Name property -
MainPage.EditGrid.NewItem.Name
-
Date of Joining property -
MainPage.EditGrid.NewItem.Dateofjoining
-
Age property -
MainPage.EditGrid.NewItem.Age
-
Gender property -
MainPage.EditGrid.NewItem.Gender
-
Team property -
MainPage.EditGrid.NewItem.Team
-
IsFullTime property -
MainPage.EditGrid.NewItem.Isfulltime
-
Skills property -
MainPage.EditGrid.NewItem.Skills
-
- For the Row modified event, create the following rule:
- Add the Update Entity Record rule.
- In the Which entity's record should be updated?, select the Employee entity.
- In the Entity record Id, write the following expression:
MainPage.EditGrid.SelectedItem.Id
MainPage.EditGrid.SelectedItem.Id - In the Values to set field, update the following:
-
Name property -
MainPage.EditGrid.SelectedItem.Name
-
Date of Joining property -
MainPage.EditGrid.SelectedItem.Dateofjoining
-
Age property -
MainPage.EditGrid.SelectedItem.Age
-
Gender property -
MainPage.EditGrid.SelectedItem.Gender
-
Team property -
MainPage.EditGrid.SelectedItem.Team
-
IsFullTime property -
MainPage.EditGrid.SelectedItem.Isfulltime
-
Skills property -
MainPage.EditGrid.SelectedItem.Skills
-
- For the Row deleted event, create the following rule:
- Add the Delete Entity Record rule.
- In the Which entity record should be deleted?, select the Employee entity.
- In the Entity record Id, write the following expression:
MainPage.EditGrid.SelectedItem.Id
MainPage.EditGrid.SelectedItem.Id
- Preview your app and interact with the Edit Grid various capabilities such as pagination, search, add new row, update row, or delete rows.
Using relationships in Edit Grid controls
To use entity fields of type Relationship in an Edit Grid control:
- In the Edit mode view field, set the relationship fields as a Dropdown.
- In the subsequent List source property, use the follwoing expression:
Fetch(of <entity_name>)(Nothing, Nothing, Nothing, Nothing, New ExpansionFieldOption(){addExpansionFieldOption("CreatedBy", New String(){"Id","Name"}), addExpansionFieldOption("UpdatedBy", New String(){"Id","Name"})})
Fetch(of <entity_name>)(Nothing, Nothing, Nothing, Nothing, New ExpansionFieldOption(){addExpansionFieldOption("CreatedBy", New String(){"Id","Name"}), addExpansionFieldOption("UpdatedBy", New String(){"Id","Name"})}) - In the subsequent Column property, write
"Name"
. - In entity-related rules, such as Create, Update, or Delete Entity Records, pass the ID of the relationship field as follows:
MainPage.EditGrid.SelectedItem.<entity_name>.Id
MainPage.EditGrid.SelectedItem.<entity_name>.Id
Demos
linkEdit Grid: working with entities
Introduction
This app shows how to work with entities using the Edit Grid control.
Demo app - try it yourself
Demo app - instructions to use
- Download the zip file with the demo app. It contains:
-
Schema.json - the schema for the entities the app uses
-
EditGridEntity_DemoApp.uiapp - the UiPath Apps file
-
- In UiPath Data Service, import the Schema.json file. Make sure to import both Entities (Country and Employees) and Choice Sets (Gender and Skills).
- Populate your entities and choice sets with data.
- In UiPath Apps, create a new app and import the downloaded app.
- You may notice some errors. To fix them, replace the referenced Employees entity with the one you recently imported in step 2.
- Preview the app and interact with the data in the Edit Grid.