Security Insert excerpt |
---|
| _security_icon |
---|
| _security_icon |
---|
nopanel | true |
---|
|
Security and PermissionsExclusion Groups are used to group Actionflows and limit their ability to run at the same time.
Where multiple Actionflows have the same exclusion group, only one Actionflow will be able to run at any one time. Attempting to run a second Actionflow, with the same exclusion group, will return a warning message and the Actionflow will not run. This applies whether the Actionflow is run manually or automatically using a schedule.
Image Removed
Exclusion groups are evaluated before any Actionflows are started. When an Actionflow with an exclusion group is triggered, if no other Actionflow with the same exclusion group is already running then the Actionflow will continue. The action will be considered to be using this exclusion group from this point until the Actionflow has completed.
Setting Exclusion Groups
Open an Actionflow and open its Insert excerpt |
---|
_property_settings | _property_settings | nopanel | true |
Under Basic Settings, populate the Exclusion Group field with any text to indicate the group- This field is case insensitive and can take any free text
Repeat this with other Actionflows to add them to the same Exclusion GroupImage RemovedSecurity can be applied to Actionflows so that only those with sufficient permissions can run the Actionflow. In addition, if an Actionflow is assigned to a button and the user does not have permission to run the Actionflow, the button will not be displayed on a screen.
Permissions can also be set on form fields, table attributes and screens. For example, if a user does not have permission to view the form fields but runs an Actionflow that uses these fields, the Actionflow will show an error.
Access Permissions
For some items, you can specify a user group, e.g. Managers, or set of user groups, where only users in this group(s) have permission to see the item.
Image Added
Tip |
---|
You must have saved the property tab at least once before you can change the permissions. |
Access Permissions | Description |
---|
All Users Can View Data | Insert excerpt |
---|
| _check_box_tick |
---|
| _check_box_tick |
---|
nopanel | true |
---|
| to allow all users to view this item. Insert excerpt |
---|
| _check_box_untick |
---|
| _check_box_untick |
---|
nopanel | true |
---|
| to specify the user groups that can access this item. |
User Groups | Available when All Users Can View Data is unticked. The grid contains a list of user groups that have permission to access to this item. To add a user group to the list: - Click the
Insert excerpt |
---|
| _user_group |
---|
| _user_group |
---|
name | icon |
---|
nopanel | true |
---|
| icon to list all the user groups in the repository - Drag user groups into this list
To remove a user group from the list, click the tick box next to the user group then click the Insert excerpt |
---|
| _delete |
---|
| _delete |
---|
name | icon |
---|
nopanel | true |
---|
| icon. |
Image Added
Worked Example
Here's a worked example using the Company Data (available from the Learning Centre).
In this example, we are using:
- A Company Orders screen containing two grids of the Orders and OrderLines data - this 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
Multi-tile
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 OrdersMerger Pop up screen. |
Stop Multiple Processes Running While Performing Data ImportLimit Permission to Merge Companies
In this example, we'll create an Actionflow to import the AdditionalCompanies_Processed data and add the Status of New to each company on that table before adding it to the Companies table. We'll add this Actionflow to an Exclusion Group with other Actionflows on the same screen so that other processes cannot be triggered while the import is taking place.
Image Removed
Actionflow Setup
Open the Company Approval Review screenCreate an Actionflow on the Import button to import the AdditionalCompanies_Processed data- Name:
ImportCompanies
- If you have completed the Actionflow Intermediate Course, chapter 2.15 Analysis Action Configuration, this Actionflow setup is similar
Add a Insert excerpt |
---|
_action_calculate | _action_calculate | nopanel | true |
action to the canvas and connect the Insert excerpt |
---|
_input | _input | nopanel | true |
node to itOn the Calculate action, add the following Output Attribute that will be used to update the Status of all imported companies:- Name:
Status
- Type:
String
- Expression:
"New"
On the Calculate action, add another Output Attribute that will be used to add a 20 second delay into the Actionflow, this will simulate a large data import and allow time to trigger the Actionflow twice:- Name:
Delay
- Type:
Integer
- Expression:
sleep(20)
- This will add a delay into the Actionflow for demonstration purposes. See sleep
Add a Insert excerpt |
---|
_action_analysis | _action_analysis | nopanel | true |
action to the canvasOn its Properties, in the Tables section, click limit the users/user groups that can run the Actionflow that merges two companies together.
Image Added
Prerequisites
For this example, we'll limit permission to run an Actionflow that merges two companies together. This Actionflow was created in 3.02 Bulk Update Action Configuration. If you have not completed this chapter, expand the section below and follow the steps to create the Actionflows.
Alternatively, you can follow the instructions below to limit access to any Actionflow in your application.
Expand |
---|
title | Bulk Update Company Acquisition Actionflow |
---|
|
Insert excerpt |
---|
| 3.02 Bulk Update Action Configuration |
---|
| 3.02 Bulk Update Action Configuration |
---|
name | BulkUpdateExample |
---|
nopanel | true |
---|
|
|
Create Limited Access User
- In the tablestablesicon icon
- Drag across the AdditionalCompanies_Processed table from the Repository to the Analysis action properties
Connect the Calculate action to the Analysis action and map across the attribute
Expand |
---|
|
Image Removed |
Table Attributes Setup
- On the Analysis Model, Actionflow Advanced Data, click on the table, AdditionalCompanies_Processed
- Double-click on the attribute, Status, and change the Expression to
_context.Status
- This is then referring to the attribute setup on the Calculate action
- Save the Analysis Model
Combine Data & Display
- On the Actionflow, create a , expand the section
- Click
Insert excerpt |
---|
| _actionadd_viewicon |
---|
| _actionadd_viewicon |
---|
nopanel | true |
---|
|
action with the Primary Table, AdditionalCompanies_Processed, and connect the Analysis action to the View action - In its Properties, in the Data Retrieval Options section, set the Data Range to Latest
- This will ensure that this data isn't continuously added if the Actionflow is run repeatedly
For the Output Attributes section, click the to create a new user who will not have access to run the acquisition- Login:
limitedaccess
- First Name:
Limited
- Surname:
Access
- Password:
Phixflow123!
- Enabled:
Insert excerpt |
---|
| _attributestoggle_iconon |
---|
| _attributestoggle_iconon |
---|
nopanel | true |
---|
|
icon and drag across all attributes
Create a
_action
_action
action to save the data to the Companies table- the user
- In its Properties, in the Basic Settings section, set the Type to Insert and the User Groups section, click the
Insert excerpt |
---|
| _toggleuser_ongroup |
---|
| _toggle_onuser_group |
---|
name | icon |
---|
nopanel | true |
---|
|
toggle on Auto Save Attributes
Connect the View to the Save action and map across all attributesImage Removed
Expand |
---|
|
Image Removed |
Setting the Exclusion Group- icon
- Drag across the User Groups, Actionflow Advanced Application and Users into the User Groups section of the Limited Access user
- There will be two Actionflow Advanced Application user groups. Ensure the one ending _Admin is not chosen
Insert excerpt |
---|
| _finish |
---|
| _finish |
---|
nopanel | true |
---|
|
all tabs
Image AddedImage Added
Change Actionflow Permissions
- Open the Company Merger Pop up screen and open the Actionflow on the Run Acquisition button
- Open the Actionflow
Insert excerpt |
---|
| _property_settings |
---|
| _property_settings |
---|
nopanel | true |
---|
|
- Under Basic Settings, populate the Exclusion Group field with any text, e.g.
Import
- Image Removed
Add the same Actionflow to the Import button the Company Management screen
Expand |
---|
|
On the ImportCompanies Actionflow, open the - Click on the
Insert excerpt |
---|
| _property_tabs |
---|
| _property_tabs |
---|
name | security |
---|
nopanel | true |
---|
|
- Disable propertysettingspropertysettings, hover over All Users can Run Action
- Click the moreoptionsmoreoptions icon and choose drag across the User Group, Actionflow Advanced Application_Admin into the User Groups section of the repositoryfindrepository_find
property_tabs | name | security |
---|
nopanel | true |
---|
|
- Open the Company Management screen and drag the highlighted Actionflow from the Repository onto the Import button
- This will create another instance of the same Actionflow
Testing
Open the Company Approval Review and Company Management screensEnsure both screens are Insert excerpt |
---|
_lock | _lock | nopanel | true |
edClick Import on one screen then press Import on the other screenA warning message should appearImage Removed-
- This limits the permission to run this Actionflow to just this User Group
Image Added
Testing
- Log out and login as the user, Limited Access
- You should not be able to see the Run Acquisition button on the Company Merger Pop up screen
Image Modified