As a Unifier developer, you might have the following questions in BP design:
What’s the difference between USER PICKER and USER DATA PICKER?
When should I use USER PICKER or USER DATA PICKER?
In today’s topic, we are going to explore these 2 data definitions and give you recommendations on how to use these 2 data definitions in Unifier development.
To find the data definition, we go to Company Workspace > Data Structure Setup > Data Definition > Basic.
From here, we really cannot tell too much difference except their names: User Picker’s name is User Picker, but User Data Picker’s name is User PK. So, let’s go to an actual BP design to explore more detail.
We pick RFI BP as an example. Go to UDesigner and open the RFI BP, then open the detail form. There are two Data Elements: Reviewer Name and Submitted By with data definition of User Picker and User PK (User Data Picker) respectively.
To check the behavior of these two data elements, we need to go to Unifier’s Shell to create a BP record. After adding a line item and clicking Select… on each Data Element, we will see the difference:
- For Reviewer Name, we see only the Users with access granted to the Shell.
- But for Submitted By, we see the entire Unifier Users.
Now we can tell the major difference between these two.
To manage the User Data Picker’s List, we navigate to UDesigner and open the BP again. At the Data Picker Configuration form (through File > Open > Data Picker > Submitted By), we can add filters to the Unifier Users by setting the Query Condition or Group Membership.
The Query Condition setup is based upon the User Attributes in the Unifier User Detail form.
The query can be built against all Shells’ Detail Form, BP’s upper form, lower form or Shell’s single record BP.
The Group Membership list shows the groups at the company level.
You can even add the selected users to Project/Shell as a project user or group member if the User Data Picker is on the upper form. (Note: To use this option, the user data picker must be located on the upper form, not the detail form.)
In conclusion, although User Picker and User Data Picker look similar, the usage purposes are different. System Architect or Developer need to fully understand their functionalities to achieve the optimal design. We summarize the features and recommendations as follows
The listed users are Shell users only. Unifier users without access to the Shell will not show in the list.
There is no way to control the list. All users for the Project/Shell will be included.
When there is a security requirement to allow ONLY project/shell users to be selected, use User Picker in the design.
User Data Picker
The listed users are the entire Unifier users by default (including Company Users and Partner Users).
However, the list can shrink further by adding filters through query or group membership.
The extra feature is the selected users can be added to the Project/Shell as a project user or group member, if the Project/Shell membership option(s) is/are selected.
Because of the flexibility in building the Picker’s list, using User Data Picker can fit to more complex requirement.