Microsoft PowerApps simplifies app creation with templates, connectors, and third-party apps. Its popularity among developers is due to its ability to perform CRUD operations and support most data sources, including on-premises. This article describes how to delete multiple records in PowerApps using Remove
function.
Problem
Let’s take an example of an employee and department table.
how to delete all the employees belonging to a department using Remove
function when the user clicks the ‘Delete All’ button in a department grid.
Solution : Delete multiple records in PowerApps using Remove function
1. Open the PowerApps canvas app in edit mode.
2. Select ‘Delete All’ button and click on Advanced properties on right side pane.
3. Use the below expression on the ‘OnSelect’ property.
Collect(
collect_employees_tobe_deleted, Filter('employee',department_id = Value(var_department_id))
);
ForAll(
collect_employees_tobe_deleted As A, Remove('employee', LookUp('employee', employee_id= A.employee_id));
);
Collect Employees to be Deleted
The first line of code utilizes the Collect
function to create a collection named collect_employees_tobe_deleted
. This collection will store the employee records that belong to the department specified by the var_department_id
variable.
Here’s the breakdown of the Collect
function:
collect_employees_tobe_deleted
: This is the name of the collection to be created.Filter('employee', department_id = Value(var_department_id))
: This is the filtering criteria used to select the employees to be deleted. It filters the'employee'
table based on thedepartment_id
field, selecting only the records wheredepartment_id
matches the value of thevar_department_id
variable.
Remove Selected Employees
The second line of code utilizes the ForAll
function to iterate through the collect_employees_tobe_deleted
collection and remove each employee record from the 'employee'
table.
Here’s the breakdown of the ForAll
function:
collect_employees_tobe_deleted As A
: This defines the variableA
that will hold each employee record from thecollect_employees_tobe_deleted
collection as it iterates through the collection.Remove('employee', LookUp('employee', employee_id= A.employee_id));
: This line removes the employee record corresponding to theemployee_id
value of the currentA
variable from the'employee'
table. TheLookUp
function retrieves the employee record based on theemployee_id
value.
In summary, this code first collects all employees belonging to the specified department and then removes each of those employees from the 'employee'
table. This effectively removes all employees from the specified department from the data source.
Pro tips:
1. If you want to migrate your PowerApps canvas app from one environment to another, you can refer to this article.
See more
Kunal Rathi
With over 13 years of experience in data engineering and analytics, I've assisted countless clients in gaining valuable insights from their data. As a dedicated supporter of Data, Cloud and DevOps, I'm excited to connect with individuals who share my passion for this field. If my work resonates with you, we can talk and collaborate.