Article last updated on the 27th of November 2023.
Contents
1. Introduction
Folder support for Business Module lists is a feature developed to help scale WorkPoint for extremely large solutions.
One of the issues with scaling WorkPoint to very large solutions is the amount of unique permissions on entities on business modules. Although up to 50.000 unique permissions per module is supported, it is recommended to keep unique permissions as minimal as possible, and to not exceed 5.000.
Potential issues related to scaling due to unique permissions are illustrated in the following example cases:
Example 1: A solution has two modules; a Members module and a Member cases module. Members are grouped into offices. A requirements for the solution is that users only see members and corresponding member cases for the office that specific users belong to. This requires unique permissions on all members and all member cases, and therefore, which would not scale very well due to the amount of unique permissions on the business module.
Example 2: A system should support 100.000 customers with 5-10 cases pr. customer. Users can only see the customers they have been assigned to using one of four roles. Further, users can only see cases from the customers they have access to. This requires unique permissions for all customers and cases which results in a large amount of unique permissions.
Example 3: A case management systems in the public sector requires handling of very sensitive information and scaling to millions of cases. As a user of the system, you are only allowed to see relevant cases that you are working on. This requires unique permissions for all cases, resulting in a large amount of unique permissions.
Example 4: Advanced project solutions with transmittal or review modules and thousands of projects will often require a permission model where you can only see relevant projects and related transmittals/reviews. This requires unique permissions on all entities in the system.
To support the examples mentioned, as well as other cases with large solutions, WorkPoint makes it possible to group entities which share the same permission set into folders in the business module lists. This makes it possible to set unique permissions on a folder, instead of each individual entity by greatly reducing the number of unique permissions needed.
The feature accomplishes this by first creating an entity on the business module. It then looks at which permissions the entity has. If a folder matches these permissions, the entity will be moved into this folder and set to inherit its permissions from it's parent (in that case, the folder). If no folder matching the permissions exists, a new one is created with the correct permissions, and the entity will then be moved to this new folder. The entity is then set to inherit permissions from the parent folder.
Through this arrangement, only the folders have unique permissions, which greatly increases the scaling opportunities for the WorkPoint solution.
The folders are hidden from the end user, and everything should therefore work as normal for users of the system.
One should note that if the security permissions of an entity changes, the entity is moved to a folder which matches the permissions on the entity. If no folder exists which matches the permissions of the entity, a new folder with those permissions are created, and the entity is placed therein.
One should also note that this feature only works in relation to the use of security rules in WorkPoint. This feature can only be used if the solution utilizes security rules to control permissions.
2. Requirements
The Partitioning in Folders functionality is part of the eXtreme Premium Extension package. For more information about adding this functionality to your WorkPoint solution, please contact WorkPoint sales at sales@workpoint.dk.
3. Configuration
Note that configuration of partitioning for business modules requires that the module has security rules set up.
Activating Business Module folder partitioning is done from the General Settings of the relevant business module. In this example, we will enable partitioning for the Projects module on a Project Management solution:
- In the dashboard of the WorkPoint Administration, click the header of the business module for which you want to enable business module folder partitioning.
- In the drop down menu, click the "General Settings" options.
- In the edit page for the business module, click the selector for "Business Module Scaling".
- Select "Partitioning".
In order to arrange business module entities in folders according to their security settings, we need to run a security replication job:
- In the bottom of the page, click the "Save" button to save the settings.
- In the WorkPoint Administration, click the header of the business module for which to run security replication.
- In the drop down menu, click "Security Replication".
- In the Security Replication page, click "Start full replication".
The job should now appear in the job list on the page:
Once the job is running, more information is shown:
When the job is complete, the "Status" value changes to "Completed":
By default, the folders that the entities are partitioned in does not show in the Business Module list. This is a setting for the view used to display the list items, and can be changed to show the folders:
- In the business module list which has folder partitioning set up, click the "Settings" icon.
- In the Settings menu, click "List settings".
- In the "Views" section of the List Settings page, click to edit the view on which you wish to display the security folders. In this example, we will enable the folders for the "All Items" view.
- In the Edit View page, expand the "Folders" section.
- For "Folders or Flat" select "Show items inside folders".
- In the bottom of the page, click "OK" to save the settings.
The folders should now appear in the business module list:
Note that under normal circumstances you would not want to show these folders, merely have them function in the background.
Showing the folders or showing only the entities can be selected using the option in pt. 13.
Once the security replication has been performed, new entities are automatically put into folders according to their permissions. There is no need for manually assigning entities to folders.
4. Notes
Note that it is possible for administrators to create personal views that only they can see. This is only relevant for debugging purposes, but a personal view can be created which shows folders, while all views that users can see does not.
Creating a personal view can be done in the same way any other view is created, and checking the following checker:
Comments
0 comments
Please sign in to leave a comment.