What is a Bulk Update Action?
The Bulk Update action updates records in bulk in a table, including saving new records. Only records which satisfy the specified filter criteria set on the node will be updated.
Note: Bulk Update actions will only update records in tables with the Period of Transactional.
Save vs Bulk Update
The key difference between Bulk Update and Save is that the Bulk Update action will not update the audit history of records where Audit Manual Changes has been enabled.
To update records and persist the audit history of the record, see 1.09 Save Action Configuration.
Creating Bulk Update Actions
- Click the Bulk Update icon in the toolbar to display any existing tables in the application
- Existing tables can be dragged from the Repository onto the canvas, then choose Bulk Update to create a Bulk Update node
- Alternatively, drag the Bulk Update icon from the toolbar onto the canvas
- In the Create Bulk Update Action window:
- Enter a Name
- Choose to Allow Audited Table to display tables with Audit Manual Changes enabled in the Table drop down
- By default, tables with Audit Manual Changes enabled are not shown in the Table drop down list
- Choose the Table from the drop down where the records will be updated
- Or click the table icon to display tables in the Repository
- Select Create Action
When creating update actions it can be useful to set up confirmation messages that allow users to confirm or cancel the update. See 1.13 Confirmation Message Configuration.
Setting Update Action Filter Criteria
A filter must be set for the Bulk Update action to run. Set this in the Data Retrieval Options section of the Properties.
- Choose a Data Range from:
- Latest: selects data from the latest recordsets
- All: selects data from all recordsets (default)
- Set the Filter Criteria to specify which records will be selected for deletion. See Filter → Filter Details
- Incoming attributes mapped to the Bulk Update node can be referenced in the Data Retrieval Options using the syntax, ConnectorName.AttributeName, e.g. in.MyAttribute
Worked Example
Here's a worked example using the Company Data (available from the Learning Centre).
In this example, we are using:
- A Company Management screen containing a grid of the Companies data and a card container of their associated Employees - this screen was created using the Multi-Tile template
- A Company Merger Pop up screen containing:
- two manual drop down fields of the company name's of the companies to be merged
- two string fields showing the company ID's of the companies to be merged
- a button to initiate the Actionflow - this screen was created using the Tile no Buttons template
- A Company Orders screen containing two grids of the Orders and OrderLines data - this screen was created using the Multi-Tile template
If you are completing this chapter as part of the Actionflow course and using a training instance, the data and screens have already been pre-loaded into the Actionflow Advanced Application. For this example, we'll be working on the Company Management screen.
In this example, a company is being merged into another company and we need to update the employees and orders to reflect the change. A Bulk Update action is required to update the data in each table. Map in the required data and set up the action to update the data with the replacement company details. Map in the required data and set up the action to update the data with the replacement company details. Why is a Bulk Update action not needed for Order Lines? The OrderLines data has a direct relationship with the Orders data via the OrderID. The OrderLines data has an indirect relationship with the Companies data via the OrderID, therefore, updating the Orders data is sufficient.Bulk Update Employees and Orders for Company Acquisition
Actionflow Setup
RunCompanyAcquisition
Bulk Update Action Setup
Update Employees Bulk Update Setup
CompanyID
in.CompanyIDBeingAcquired
Update Orders Bulk Update Setup
Customer_ID
in.CompanyIDBeingAcquired
Testing
- Close all screens and reopen the Company Management screen
- Decide which two companies you will merge
- Make a note of their employees on the Company Management screen so you can see if the merge is successful
- Open the Company Orders screen and make a note of any Orders and Order Lines for the two companies
- On the Company Management screen, click the Merge button to open the Company Merger Pop up screen
- Select the two companies using the drop down fields and click the Run Acquisition button
- Review the screens to check the merge was successful