Article published on the 28th of July, 2025.
Contents
1. Introduction
When creating an entity in a child business module (e.g., a Project), it's typically necessary to associate it with a parent entity (e.g., a Customer).
In some cases, the parent module may contain other child modules as well—for example, a Contacts module. In these scenarios, it's often useful to not only select the parent entity for the new record, but also link it to a related entity from another module under the same parent.
A common scenario in WorkPoint is when creating a new project: a customer is selected as the parent, and a customer contact should also be selected for that project. In such cases, customer contacts are typically registered in a separate module under the Customers module, as illustrated below:
To enhance the user experience, it's ideal to apply a filter so that only contacts which are related to the parent is selectable.
This article explains how to configure a WorkPoint Automate process that uses two Entity Search Forms, one for selecting a parent customer, and one for selecting a customer contact, and an Entity form to which this information is passed. Subsequently, a Create Entity step could be used to create a new project based on the provided metadata.
An alternative method of achieving something similar in an Entity form is described in this article.
2. Configuration
For this configuration example, we have created a new Lookup field on the Projects business module called "Customer Contact":
This field is connected to the Contacts business module.
We have also created a new WorkPoint Automate process called "New project":
We can now add the two Search Entity forms to the process:
Before we move on from here, we rename the two steps to "Select customer" and "Select contact". We also provide unique step names so that they do not conflict:
On the Select customer form, in the Options tab we set it up to search for entities within the Customers business module, along with a few other settings:
For the Select contact form, we do something similar, except we also add a CAML query filter:
The CAML query filter template we use is the following:
<Eq><FieldRef Name="wpParent" LookupId="TRUE"/><Value Type="Integer">[ID REFERENCE]</Value></Eq>
Don't forget to replace the [ID REFERENCE] with a reference to the ID property of the entity selected in the first form.
This filter query ensures that the Search Entity form only displays results which are parented under the customer we selected in the first form.
We can now pass the information we selected in the two forms into an Entity form:
- We add an Entity form and link it to the Projects business module.
- We then open the Fields tab of the Entity form.
- Next, we expand the Customer field and click the Advanced button for the Value field.
- We switch to the Advanced mode and use the following adaptive expression:
{"LookupId": SelectCustomer.ID, "LookupValue": SelectCustomer.Title}
We are using "SelectCustomer.ID" and "SelectCustomer.Title" because those are the internal names of the Select Customer step. Don't forget to rename these if you are using a different step name.
This ensures that the selection we made in the Select Customer form is put into the Customer field on the Entity form.
We then do something similar for the Customer Contact field:
At this point, we can test out our setup, so we save and publish the process.
3. Execution
For demonstration purposes, we have created a set of contacts on the Contacts module:
Note that the contacts are registered under either the CalperIT or the ProffShop A/S customers.
We can now run our New Project process.
First, we need to select a customer:
In this case, we select the "CalperIT" customer and click "Continue".
Next, we need to select a contact, and we see that only contacts registered under the CalperIT customer are available for selection:
If we click the "Back" button, we can select the "ProffShop A/S" customer instead:
And if we click the "Continue" button, only contacts registered under ProffShop A/S are available:
If we make a selection and click the Continue button, we can see that our selections are put into the Entity form:
Comments
0 comments
Please sign in to leave a comment.