What is a Bulk Update Action?
The
Insert excerpt |
---|
| _action_bulkupdate |
---|
| _action_bulkupdate |
---|
nopanel | true |
---|
|
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.
Insert excerpt |
---|
| 1.09 Save Action Configuration |
---|
| 1.09 Save Action Configuration |
---|
name | TablePeriod |
---|
nopanel | true |
---|
|
Insert excerpt |
---|
| _action_save |
---|
| _action_save |
---|
nopanel | true |
---|
|
vs Insert excerpt |
---|
| _action_bulkupdate |
---|
| _action_bulkupdate |
---|
nopanel | true |
---|
|
The key difference between Insert excerpt |
---|
| _action_bulkupdate |
---|
| _action_bulkupdate |
---|
nopanel | true |
---|
|
and Insert excerpt |
---|
| _action_save |
---|
| _action_save |
---|
nopanel | true |
---|
|
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
Insert excerpt |
---|
| _action_bulkupdate |
---|
| _action_bulkupdate |
---|
nopanel | true |
---|
|
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
Insert excerpt |
---|
| _action_bulkupdate |
---|
| _action_bulkupdate |
---|
nopanel | true |
---|
|
to create a Bulk Update node
- Alternatively, drag the
Insert excerpt |
---|
| _action_bulkupdate |
---|
| _action_bulkupdate |
---|
nopanel | true |
---|
|
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
Insert excerpt |
---|
| _property_settings |
---|
| _property_settings |
---|
nopanel | true |
---|
|
.
- 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
HTML Comment |
---|
|
Insert excerpt |
---|
| Bulk Update Node |
---|
| Bulk Update Node |
---|
nopanel | true |
---|
|
|
Worked Example
Here's a worked example using the Company Data (available from the Learning Centre).
In this example, we are using:
- A Company Rejected Companies screen containing three grids of the Companies, 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
Tip |
---|
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. |
Bulk Update Company Employees
In this example, a company is being taken over by merged into another company and we need to update all the employees and orders to reflect their new CompanyID.the change.
Image Added
Actionflow Setup
- Open the Company Management screen
- Click the Merge button to open the Company Merger Pop up screen
- Create an Actionflow on the Run Acquisition button
- Name: RunCompanyAcquisition
RunCompanyAcquisition
- On the Actionflow canvas, toggle on
Insert excerpt |
---|
| _toggle_on |
---|
| _toggle_on |
---|
nopanel | true |
---|
|
Close screen after action completes- This ensure the pop up screen closes after the acquisition has been run
- Configure the input connection point to the Companies data on the screen
- On the Mappings window, ensure Page is selected for What data is being used?
- Image Removed
- Map in CompanyID
- Create the Company Merger form
- Map in the two CompanyID fields from the screen, CompanyIDBeingAcquired and CompanyIDDoingAcquiring
Bulk Delete Action Setup
- Create two
Insert excerpt |
---|
| _action_viewbulkupdate |
---|
| _action_viewbulkupdate |
---|
nopanel | true |
---|
|
actions for the Orders and OrderLines dataThese should contain filters so only the Orders and OrderLines for the companies with a Status of Rejected are mapped
Expand |
---|
|
Image Removed Image Removed |
Bulk Delete Action Setup
- Create three Bulk Delete Actions for deleting from the three tables: Companies, Orders and OrderLines
- Map the associated ID attribute into the relevant Bulk Delete node
Set up filters on each node in the Data Retrieval Options section to ensure only records associated with a rejected company are updated- : one to update the Employees data and one to update the Orders data
- Drag the onto each action
Map in the required data into each
Insert excerpt |
---|
| _action_bulkupdate |
---|
| _action_bulkupdate |
---|
nopanel | true |
---|
|
action and set them up to update the data with the replacement company details Expand |
---|
|
Update Employees Insert excerpt |
---|
| _action_bulkupdate |
---|
| _action_bulkupdate |
---|
nopanel | true |
---|
| Setup- Map the attribute, CompanyIDDoingAcquiring, onto the CompanyID attribute on the table
- Drag across the attribute, CompanyIDBeingAcquired, into the drag and drop space to create an additional mapping
- On the
Insert excerpt |
---|
| _property_settings |
---|
| _property_settings |
---|
nopanel | true |
---|
| for the Employees Bulk Update action, set the Data Retrieval Options to:CompanyID - equals
in.CompanyIDBeingAcquired
Update Orders Insert excerpt |
---|
| _action_bulkupdate |
---|
| _action_bulkupdate |
---|
nopanel | true |
---|
| Setup- Map the attribute, CompanyIDDoingAcquiring, onto the Customer_ID attribute on the table
- Drag across the attribute, CompanyIDBeingAcquired, into the drag and drop space to create an additional mapping
- On the
Insert excerpt |
---|
| _property_settings |
---|
| _property_settings |
---|
nopanel | true |
---|
| for the Orders Bulk Update action, set the Data Retrieval Options to:Customer_ID - equals
in.CompanyIDBeingAcquired
|
Tip |
---|
title | 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, therefore, updating the Orders data is sufficient. ZB might need a better explanation of this? Is direct/indirect relationship correct terminology? |
Testing
- Return to the Company Rejected Companies screen
- Press Bulk Delete button
- Refresh the data in each grid to see the results
Image RemovedTesting
- Close all screens and reopen the Company Management screen
- Choose two companies to merge and make a note of their employees 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 to merge and click the Run Acquisition button
- Review the screens to check the merge was successful
3.04 Custom Confirmation Message Configuration