Creating Unique Checkbox primary fields
DM
Unique Checkbox is a primary type field configuration that you can assign to any sub-object or relationship object.
You can create multiple primary type custom fields; for example, you might create primary custom fields based on therapeutic areas, so different HCPs can have primary addresses for oncology, pediatrics, and cardiology.
To create a primary type field:
- In the Admin console, click Data Model and select the Customer Master domain.
-
Choose the sub-object or relationship object.
For this example, we'll use the Address object.
-
In the Fields section, click Add Field.
- Type a Name and Description.
- In the Type field, select Primary.
- In the Configuration list, Unique Checkbox is selected by default.
-
The Enabled? checkbox is selected by default.
-
In the Country Visibility and Field Rules section, define the following settings:
-
Countries - All supported countries are selected by default. Remove any countries that the field does not apply to.
Tip: If the primary field applies to a small number of countries only, remove all countries by clicking inside the Countries field to open the list of countries. Choose Select None. Click inside the field again and select the applicable countries.
-
Network Object - Select the sub-object or relationship object.
- Value - Choose a default value for the field. If the field does not contain a value, the Value that you define will be used. This value displays on the record profile.
-
Required / Update - Select this checkbox to make this field required when a record is being added or updated.
-
-
When to Calculate Primary <object name> - This setting displays in the Properties section when the Network Object is selected.
You can select any combination of these options to allow Network to calculate the primary for specific situations:
-
The record DOES NOT HAVE a primary- For records that do not have a primary defined (the field has no value (-) or the value is set to Unknown or No/False) Network will set a primary.
Only valid, under review, and active objects are considered.
-
The status of the primary is INACTIVE - For primary objects where the record status is Inactive, Network will recalculate a primary.
If there are no active objects of that type on the record, a primary is not calculated. The record will not have a primary.
-
Recalculate only if there are active <object name> on the record - Network only recalculates the primary if there are active objects of that type on the record. If there are no active objects, Network keeps the primary on the object that was last active.
This option ensures that the record has a primary address even if the address is inactive.
-
- The record state of the primary is INVALID or DELETED - For primary records that have been reviewed and are considered invalid, Network will recalculate a primary.
By default, none of these options are selected, so the primary setting will not move from the object that a Network user has flagged as the primary.
Multiple primary fields can be created using the Unique Checkbox configuration, so you can define a primary for an object with each specific behavior to support your business needs.
For more information about these options, and examples of Network's primary calculation, see the "Understanding how Network calculates primary for address updates" section below.
-
-
Primary <object name> Recalculation Logic - This section displays if any of the recalculate options above have been selected.
When Network recalculates a primary, standard logic uses specific fields to match against the existing object to find the best primary.
You can choose to use custom logic to specify the fields that you want Network to consider during the primary recalculation. This ensures that the object that is the most relevant for your business purposes is selected as primary.
For example, using Network's standard logic, an address that is outside of the sales territory could be calculated as the new primary. This is because the standard recalculation logic does not consider postal codes. To prevent this, you can define custom logic that considers the postal code field.
Note: Recalculation logic runs when the existing primary defined on a record becomes disqualified.
Choose one of the options:
-
Use standard logic
Network recalculates primary using the following conditions (in this order) to match against any existing primary:
- Source rank - The rank on the primary field is the same or higher than the existing primary address (rank of 1 is highest).
- Address rank (Address objects only) - The address ordinal value that is the lowest.
- Date and time - The address where the primary field was last updated.
- Veeva ID - The newest (highest) address entity ID.
-
Define custom logic
Define the fields that you want Network to use for recalculating a primary.
Exclude objects
Network automatically excludes records that are Invalid and Inactive. You can define additional object criteria to exclude from the primary recalculation. A maximum of three custom exclude criteria can be added. For example, exclude all addresses that are the Mail Only type.
-
To exclude addresses, click Add Field. Expand the list to choose the Field and then select or type the field Value to exclude.
Standard logic recalculation
When Network recalculates the primary using standard logic, the following steps are taken:
-
Run Inactive/Invalid logic - Exclude objects that are Inactive or Invalid.
-
Run the exclude logic - Remove any objects for primary consideration based on the exclude criteria you have defined.
-
Run the standard condition logic - Network recalculates the best primary based on the order of the standard conditions: source rank, address rank, last updated date and time, and the highest (newest) Veeva ID
Example - Standard logic recalculation for addressesAddress data Current Primary Address 1 Address 2 Address 3 City Fort York Fort York Fort York Fort York Postal Code 45678 45678 45678 45678 Address Type Professional Professional Professional Mail Only Address Status Active Active Active Inactive Source Rank 3 3 3 3 Address Rank (ordinal) 2 2 1 1 Date/Time 2022-01-12 10:53:06 2022-04-10 09:22:11 2022-05-12 15:03:25 2022-02-08 02:44:11 Veeva ID 243244003745596484 932184542274324385 932926364920187752 243244003745529263 Result
Address 2 is recalculated as the primary address because it has the lowest ranked ordinal.
The addresses all had the same source ranking (3), so Network used the next condition (address ordinal) to find the best primary address.
Note that Address 3 was excluded because it is Inactive.
Using custom logic
If you select Define custom logic, Network uses the fields that you define to recalculate the primary. For example, to ensure that the new primary address is located in the same sales territory, add postal code as a condition to match to the current primary address.
A maximum of three conditions can be defined. Network matches the conditions you define to the current primary to recalculate the new primary.
To define custom logic:
-
In the Condition section, expand the list and choose a field.
-
To add another field to match on, click Add Condition. Select the field.
A maximum of three conditions can be defined.
-
To exclude object criteria from the recalculation logic click Add field. Define the Field and Value that you want to exclude. A maximum of three custom exclude criteria can be added.
Invalid and Inactive objects are automatically excluded.
Note: Active fields on the object can be used for conditions and exclude criteria.
Custom logic recalculation
When Network uses custom logic, the following steps are taken:
-
Run Inactive/Invalid logic - Remove objects that are Inactive or Invalid.
-
Run the exclude logic - Remove any objects for primary consideration based on the exclude criteria you have defined.
-
Run the custom condition logic - If the first condition is met, then the object with the condition is the new primary.
If multiple objects match the conditions, the object with the most matches is the new primary.
If the condition is not met, move on to the next condition.
-
Run standard logic - If multiple objects match the current primary with the same number of matches, Network uses the standard logic conditions as a tie-breaker.
Only the objects that matched the custom conditions are considered when the standard logic runs.
Examples - Custom logic recalculationExample 1
The custom logic conditions match on the following fields:
-
Postal code - Supports 9-digit postal codes.
-
Primary postal code - Supports 5-digit postal codes.
Tip: When you use postal code as a condition, define a condition for both the
postal_code__v
andprimary_postal_code__v
fields to ensure that Network considers 5-digit and 9-digit postal codes. -
City
Address data Current Primary Address 1 Address 2 Address 3 City Fort York Fort York Fort York Fort York Postal Code 45678-1234 45678-1234 45673-9865 45678-5462 Postal Code Primary 45678 45678 45673 45678 Address Status Active Active Active Inactive Source Rank 3 3 3 3 Address Rank (ordinal) 2 2 1 1 Date/Time 2022-01-12 10:53:06 2022-04-10 09:22:11 2022-05-12 15:03:25 2022-02-08 02:44:11 Veeva ID 243244003745596484 932184542274324385 932926364920187752 243244003745529263 Result
Address 1 is recalculated as the primary address.
-
Postal code is the same
-
City is the same
Note that Address 3 was excluded because it is Inactive.
Example 2
This example uses the same custom logic conditions as Example 1 but it has a different outcome because multiple addresses match the custom conditions.
The conditions match on the following fields:
-
Postal code - Supports 9-digit postal codes.
-
Primary postal code - Supports 5-digit postal codes.
-
City
Address data Current Primary Address 1 Address 2 Address 3 Address 4 City Fort York Fort York Fort York Fort York Fort York Postal Code 45678-1234 45678-1234 45678-1234 45678-5462 45670-5476 Postal Code Primary 45678 45678 45678 45678 45670 Address Status Active Active Active Inactive Active Source Rank 3 3 3 3 3 Address Rank (ordinal) 2 2 3 1 1 Date/Time 2022-01-12 10:53:06 2022-04-10 09:22:11 2022-05-12 15:03:25 2022-02-08 02:44:11 2022-04-30 12:45:06 Veeva ID 243244003745596484 932184542274324385 932926364920187752 243244003745529263 243244003745596476 Result
Address 1 is recalculated as the primary address.
Address 1 tied with Address 2 because they matched to the current primary on the custom conditions:
-
Postal code is the same
-
City is the same
The standard logic ran to break the tie. Address 1 was selected because it had a lower address rank.
Note that Address 3 was excluded because it is Inactive.
-
- Labels - Define the Language and the Label for the custom field. The label displays on the profile page.
- Save your changes.
The primary field will now display on objects on the profile page.
Allow Network to calculate primary
The Network Calculated configuration is no longer supported for new primary custom fields. The Unique Checkbox configuration contains the same functionality as Network Calculated but includes more robust options.
The primary recalculation logic configuration was used to ensure that a record always has an active and valid primary defined.
Standard recalculation logic
Network calculated primary would automatically calculate a primary for the following conditions:
-
No primary - The record does not contain a primary or a primary was removed.
-
Inactive primary - The current primary is inactive.
-
Invalid or Deleted primary - The current primary is invalid or deleted.
Configure Unique Checkbox as Network Calculated
To set the Network Calculated behavior on the Unique Checkbox configuration, select the following settings:
When to Calculate Primary section:
-
The record DOES NOT HAVE a primary
-
The status of the primary is INACTIVE
- The record state of the primary is INVALID or DELETED
Primary Recalculation Logic:
-
Use standard logic
These settings will use the same business rules and logic to ensure that records have a primary defined.
Example Unique Checkbox configuration
Impact to downstream systems
Primary fields defined in Network could flow downstream and might impact other business processes.
Changes to incentive compensation
The primary flag will move from an inactive or invalid address in a fiscal quarter if you enable the configuration options. This means that any sales data with the previous primary address that is now inactive or invalid address will not be available in downstream systems where only primary addresses are exported. As a result, sales reps may not get compensated for sampling an HCP at the previous primary address.