Article published on the 1st of May, 2024.
This feature is only available from WorkPoint 365 Version 4.0.
Contents
1. Introduction
Cross Module Parenting setups make it possible for entities on a module to have a parent relationship with an entity from multiple parent business modules.
Consider the following business module setup:
This business module setup is fairly traditional where a Projects- and a Contacts module are registered as children of the Companies module. On the side, we have a Suppliers module, which also has a Contacts child module.
This setup splits contacts on the solution into multiple modules with different parent relationships.
With the Cross Module Parenting feature, you can now create a setup like the following:
With this setup, we can have one Contacts module, which can have parent relationships with entities either from the Companies- or the Suppliers modules. This makes managing contact persons across a large WorkPoint solution easier.
This can also reduce the number of business modules needed on WorkPoint solutions.
2. Requirements
The Cross Module Parenting feature requires a WorkPoint Enterprise license plan.
3. Configuration
Traditionally, the parent of an entity has been registered in the "wpParent" lookup field. This feature replaces this field with 5 new fields, which are all used to facilitate the relationship between parent and child entities:
- wpParentModuleID
- wpParentModuleTitle
- wpParentEntityID
- wpParentEntityUniqueID
- wpParentEntityTitle
These fields are generated automatically by WorkPoint.
In the following configuration case, we have two parent modules; Companies and Suppliers. We also currently have one child module, the Projects module.
We will create a Contacts module which can store contact persons related to either a company or a supplier.
We start in the WorkPoint administration:
- Under "Business Modules" in the WorkPoint Administration Dashboard, we click "Add new" to create a new business module.
- We provide a name for the new business module. In this case, we call it "Contacts".
- We provide the Entity name "Contact".
- We select to base the business module on the template "Contacts".
- We check the "Enable multi module parents" checker.
- In the business module picker, we select both the "Companies" and the "Suppliers" business modules.
- We can then specify a title for the parent module entities. This is the display name of the column which is going to show the parent entity in the business module list.
- We select an appropriate icon for the business module.
- We can now save the business module and start the provisioning.
After the provisioning, the new Contacts business module should appear in the WorkPoint Administration Dashboard:
Note that once a business module has been created using the "Enable cross module parenting" setting, this setting cannot be changed.
When creating entities on the Contacts module, we will be able to first select a parent entity module and then select a parent entity. This process is described in the End User Guide section.
4. End User Guide
4.1. Creating Cross Module Parenting entities using a WorkPoint Automate process
Using a WorkPoint Automate process, you can create entities on modules with Cross Module Parenting enabled.
In this example, we have a process which creates new contacts in our WorkPoint solution. Contacts can have a parent from either the Companies- or the Suppliers module.
When we run this process, we can set which entity from which business module should be parent for the contact:
- When we focus or click the search button for the Parent entity field, the Parent entity side panel opens.
- In the Parent entity side panel, we can select from which business module we want to select an entity to parent the contact under.
- In the results section, we can select which entity from the selected business module to parent the contact under.
- When we have selected an entity to be the parent entity, we can click the "Confirm" button to confirm the selection.
When an entity has been selected and confirmed, the entity is inserted into the Parent entity field in the form:
Note that the "Parent entity" field title comes from the "Cross module parenting title" setting in the General Settings of the business module which has Cross Module Parenting enabled. You can tailor this field title to fit your business needs.
4.2. Creating Cross Module Parenting entities from WorkPoint Express
We can also create new Contact entities in WorkPoint Express. In this example, we call the new contact entity Edward Dean, and we will set the parent to be a Company called "Company 001":
Note that the following dialogue shows the Create Item dialog using WorkPoint Express. If you do not see the same type of dialogue when opening the properties of an item, you can enable it by opening the WorkPoint Express settings -> System -> Prefered Dialog -> Set "Default create entity dialog" to "Express".
- In the "Create Item" dialogue in WorkPoint Express, we provide the name "Edward Dean" for the new Contact.
- In the "Parent module" property, we search for and select the "Companies" module.
- Once the parent module has been selected, we can search for entities on that module to use as parent for the new Contact.
- Once we have selected a desired parent entity, we can create the entity by clicking the "OK" button.
If needed, we can edit the parent entity of the contact at a later time:
- In the list of contacts, right-click the Contact and select "Properties".
- Use the Parent module and Parent entity selectors to edit the parent of the contact.
- When a new parent has been selected, click the "OK" button to save the settings.
5. Notes
Once a business module has been created using the "Enable multi module parents" setting, this setting cannot be changed.
In WorkPoint Express, it is possible to enable My Tools buttons, and in extension use WorkPoint Automate processes from WorkPoint Express. This can be used to create entities using Cross Module Parenting using a WorkPoint Automate process from WorkPoint Express.
Business modules with "cross module parenting" enabled MUST NOT use the sub-site module architecture.
Security trimming-wise, in case a user has access to see a child entity but not a parent entity, the user will be able to see the title but not the content of the parent entity.
Business modules using the "Cross module parenting" option cannot be used as aggregation source on other modules.
Comments
0 comments
Please sign in to leave a comment.