Unique Checkbox primary addresses


Unique Checkbox is a primary type field configuration that you can assign to an address object. Using the Unique Checkbox configuration, 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.

Unique Checkbox primary addresses are managed by Network users; the primary setting does not move from the address unless it is changed by a user. This provides flexibility if you rely on a static primary in a fiscal quarter for your business processes like territory alignment and compensation. However, there are configuration options that you can choose to allow Network to recalculate primary addresses for specific conditions to ensure that a record always has a primary.

On the profile page, primary indicators display when a Unique Checkbox field is set for an address. The name of the field and the primary badge displays.

Supported records

The Unique Checkbox primary field can be used on all Network and custom sub-objects and relationship objects.

This topic is specific to addresses because there are field options that are only available for the address object. For Unique Checkbox information for the other supported objects, see Unique Checkbox primary fields.

Address objects can be locally managed or managed by Veeva OpenData.

Process for Unique Checkbox primary addresses

To use this configuration to support your business processes, create the field and update your existing addresses in your Network instance.

  1. Create a Unique Checkbox primary field - Create a custom field that uses the Unique Checkbox configuration.
  2. Set an active and valid primary on existing records - Set a primary on existing addresses in your Network instance. Use the Data Updater or source subscriptions to update your address records.
  3. Edit primary addresses - Users can update the primary address field on the record profile. It can also be updated through data loading using the Data Updater or source subscription features.
  4. Network calculates primary - If you have chosen any of the calculation options, Network will calculate the primary address over time for that specific condition; for example, whenever specific changes are made to an address.

Create a Unique Checkbox primary address field

To create a primary type field:

  1. In the Admin console, click Data Model and select the Customer Master domain.
  2. Click the Address object.
  3. In the Fields section, click Add Field.

  4. Type a Name and Description.
  5. In the Type field, select Primary.
  6. In the Configuration list, select Unique Checkbox.
  7. The Enabled? checkbox is selected by default.
  8. In the Country Visibility and Field Rules section, select the countries that this primary address field applies to. Choose the Address object.

    The following options are available for Unique Checkbox configurations:

    • Value - Choose a Default Value for the field. This value displays on the profile.
    • Required / Update - Select this checkbox to make it a required field.

  9. When to Calculate Primary Address - This setting called displays in the Properties section when Address is selected as the object; it does not display for any other object type.

    Beside When to Calculate Primary Address, 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 address - For records that do not have a primary address 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 addresses are considered.

    • The status of the primary address is INACTIVE - For primary addresses where the address status is Inactive, Network will recalculate a primary address.

      If there are no active addresses on the record, a primary is not calculated so the record will not have a primary address.

      • Recalculate only if there are active addresses on the record - Network only recalculates the primary if there are active addresses on the record. If there are no active addresses, Network keeps the primary on the address 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 address is INVALID or DELETED - For primary address records that have been reviewed and are considered invalid, Network will recalculate a primary address.

    By default, none of these options are selected, so the primary setting will not move from an address that uses the Unique Checkbox configuration. Multiple primary address fields can be created using the Unique Checkbox configuration, so you can define primary addresses 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.

  10. Primary Address Recalculation Logic - This section displays if any of the calculate options have been selected. When Network recalculates a primary address, specific fields are matched against the existing address to find the best primary.

    Use custom logic to specify the fields that you want Network to consider during the primary address recalculation. This ensures that the address 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 because the standard recalculation logic does not consider postal codes.

    Note: Recalculation logic runs when the existing primary address defined on a record becomes disqualified.

    Choose one of the options:

    • Use standard logic - Standard logic considers the following fields: source rank, address rank, last updated date and time, and the highest (newest) Veeva ID.

    • Define custom logic - Define the fields that you want Network to use for recalculating a primary. This is selected by default.

    Using standard logic

    Network recalculates primary addresses using the following conditions (in this order) to match against any existing primary address:

    • 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 - 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.

    Exclude addresses

    Network automatically excludes records that are Invalid and Inactive. You can define additional address criteria to exclude from the primary address 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 address using standard logic, the following steps are taken:

    1. Run Inactive/Invalid logic - Exclude addresses that are Inactive or Invalid.

    2. Run the exclude logic - Remove any addresses for primary consideration based on the exclude criteria you have defined.

    3. Run the standard condition logic - Network recalculates the best primary address based on the order of the standard conditions: source rank, address rank, last updated date and time, and the highest (newest) Veeva ID

    Using custom logic

    If you select Define custom logic, Network uses the fields that you define to recalculate primary addresses. 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. Networks matches the conditions you define to the current primary to recalculate the new primary address.

    To define custom logic:

    1. In the Condition section, expand the list and choose an address field.

    2. To add another field to match on, click Add Condition. Select the field.

      A maximum of three conditions can be defined.

    3. To exclude address 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 addresses are automatically excluded.

    Custom logic recalculation

    When Network recalculates the primary address using custom logic, the following steps are taken:

    1. Run Inactive/Invalid logic - Remove addresses that are Inactive or Invalid.

    2. Run the exclude logic - Remove any addresses for primary consideration based on the exclude criteria you have defined.

    3. Run the custom condition logic - If the first condition is met, then the address with the condition is the new primary address. If multiple addresses match the conditions, the address with the most matches is the new primary address. If the condition is not met, move on to the next condition.

    4. Run standard logic - If multiple addresses match the current primary with the same number of matches, Network uses the standard logic conditions as a tie-breaker to recalculate the new primary address. Only the addresses that matched the custom conditions are considered.

    Supported fields

    The following fields are available to use as conditions or to use to exclude addresses:

    • Active address fields

      System fields (created_date__v, vid__v, record_state__v, and so on) are not supported

  11. Labels - Cthe Language and the Label for the custom field. The label displays on the profile page.
  12. Save your changes.

The primary field will now display on address objects on the profile page.

Set an active and valid primary on existing records

After you create a primary field, ensure that a primary is set on existing records to support your business processes. Unique Checkbox primaries must be explicitly set because they will not be added or moved unless Network recalculates the primary to avoid duplicates. If you have chosen any of the Unique Checkbox options to allow Network to recalculate a primary, those changes will occur over time as records undergo changes and primary calculation is triggered.

To ensure that all existing records in your Network instance have a primary right now, use the Data Updater to set the field. Use reporting to identify the records that do not have an active and valid primary.

Step 1: Run a report to identify the objects in your Network instance

The report finds objects that have the following situations:

  • no primary is available on a record
  • inactive or invalid objects have been set to primary

To create a report to find these objects:

  1. On the Network menu bar, click Reports > SQL Query Editor.
  2. In the text box, type the SQL query below.

    Replace the object references (address) with the applicable object and the primary field name, oncology_primary__c, with the name of your primary custom field.

    Note: The address_ordinal__v field is only available on the address object. Remove this condition for non-address primary fields.

    SELECT
            address.entity_vid__v,
            vid__v,
            address_ordinal__v,
            oncology_primary__c /*Displaying the Oncology Primary located on the Rank 1 Address*/
        FROM
            address INNER JOIN (
                SELECT
                        entity_vid__v
                    FROM
                        address
                    WHERE
                        (
                            oncology_primary__c IS NULL
                            OR oncology_primary__c <> 'Y'
                        )
                        AND entity_vid__v NOT IN (
                            SELECT
                                    entity_vid__v
                                FROM
                                    address
                                WHERE
                                    address_status__v = 'A'
                                    AND record_state__v IN (
                                        'VALID',
                                        'UNDER_REVIEW'
                                    )
                                    AND oncology_primary__c = 'Y'
                        )
                    GROUP BY
                        entity_vid__v
            ) entity_with_no_primary
                ON address.entity_vid__v = entity_with_no_primary.entity_vid__v
        WHERE
            address_ordinal__v = 1
  3. Click Run.

This query extracts all of the active and valid records. The objects can be set to primary in the subscription file.

Considerations for address report results:

Values in the address_ordinal__v field are maintained by Veeva OpenData for OpenData addresses or by the record owner for non-OpenData addresses.

  • If there are multiple objects on the same entity with address_ordinal__v = 1, both addresses will be in the report.
  • If none of the addresses on the entity have address_ordinal__v = 1, the entity won't be displayed in the report.

Step 2: Set a primary on active and valid objects

Use the Data Updater to set the objects that you want to be primary - this could be the object that has been recently updated or the object that has the highest Veeva ID (VID). For addresses, typically the rank 1 addresses are set to primary.

  1. Create a .csv file that contains the fields below.

    vid_v oncology_primary__c
    9988776655 Y
  2. Create a Data Updater job that includes this .csv file.

    Note: For address jobs, the Verify and clean address option must not be enabled.

  3. Run the Data Updater job.

After the job runs, the records will be updated with a primary.

Setting a primary address

Users can set an address as primary on the Profile page. For example, a Field Services Manager who manages territories and compensation can edit an address to assign a primary field for specific therapeutic areas.

To assign a primary:

  1. Click the object summary card to expand the object details.
  2. Find the primary field name, click the Value field, and choose Yes/True from the list.
  3. Click Apply to save your update and submit a data change request to local data stewards for review.

Note: After the primary value has been set for a field, any update to the primary field value other than Y (Yes/True) or N (No/False) will be disregarded. For example, if the value is changed to U (Unknown), that change is disregarded.

Example

On this HCP record:

  • On 755 Memorial Pkwy, the Primary badge displays because this address is set as the HCP's Global Primary Address (Network Calculated primary field).
  • A Field Services Manager edits the record to set 3701 Doty Rd as the HCP's primary address for Oncology (Unique Checkbox primary field).
  • The Oncology Primary Address field value is set to Yes/True.

A data change request (DCR) is sent to local data stewards. When the DCR is accepted, the profile page updates to display the primary tag below the address.

Now, the primary address is aligned to a field rep's territory so when they make a sales call to the HCP at 3701 Doty Rd they will be compensated accordingly.

Other ways primary can be set on records

A primary can be set on an object using the following Network features:

  • Change request API
  • Data change requests
  • Merge and unmerge
  • Data Updater
  • Veeva OpenData updates (subscriptions, downloads, sync)

Duplicate primaries in the Network UI

All users can edit Unique Checkbox and Network Calculated primary fields on record profiles. If the primary field is updated, a data change request is created and sent to local data stewards to accept or reject the change.

To ensure that a field is set to primary on only one object, Network changes the primary value if a field is set to Yes/True multiple times on a record.

This is the only situation where Network will move the primary on a Unique Checkbox configuration that doesn't use any of the Network calculation options.

Example

On an HCP record, the Primary Address for Cardiology field is set to Yes/True for 6941 W Archer Ave.

A user edits the record and sets the same primary field to Yes/True for 1180 W Wilson St Ste E.

To ensure that there's only one Primary Address for Cardiology defined on the record, Network automatically toggles the field value to No/False on the 6941 W Archer Ave address.

The same behavior occurs on data change requests.

Triggers for Network calculation

If you chose any of the options to allow primary to be moved, Network calculates the primary when those changes occur during specific events.

Events

Network will calculate a primary if the address fields (listed below) are changed during the following events:

  • New address object is added or specific fields (listed below) on an existing address are changed using source subscriptions, data change requests, or the Network API
  • Merging records manually using Find Suspect Match
  • Merging records in bulk through source subscriptions
  • Unmerging records
  • Downloading records from Veeva OpenData (using OpenData subscriptions or the Ad Hoc Download or Download from OpenData buttons on a record).
  • Syncing a record with Veeva OpenData (using the Sync with OpenData button).

Understanding how Network calculates primary for address updates

Network will calculate the primary for addresses that are added or updated depending on the options that you have selected for a Unique Checkbox primary address field. Any combination of the options can be selected.

Review the sections below to understand how primary is calculated when addresses are added or updated using the following actions:

  • source subscriptions
  • updates on the profile page
  • updates in data change requests
  • change request API

Each example includes a number (for example, A1, D2, and so on) in the Workflow Example column to refer to a diagram. You can refer to the diagram in the Workflows section below to see how Network decides whether a primary should be calculated based on the address and the options that are enabled for the primary field.

Understanding how Network calculates primary for OpenData updates

Network's primary calculation when addresses are downloaded from or synced with Veeva OpenData depend on the options that you have selected for a primary address field. Any combination of options can be selected.

Review the sections below to understand how primary is calculated when addresses are added or updated using the following actions:

  • Downloading records from Veeva OpenData (using OpenData subscriptions or the Ad Hoc Download or Download from OpenData buttons).
  • Syncing a record with Veeva OpenData (using the Sync with OpenData button).

Understanding how Network calculates primary for merge and unmerge

Merge

A primary is calculated by Network if neither the merge winner nor the loser contributed a primary and the The record DOES NOT HAVE a primary address option is enabled.

If the winning record contributes a primary address, the winner's address remains primary after the merge. However, if the winner's primary is inactive/invalid and the loser contributed a primary, the loser's address becomes primary after the merge. ]If the loser's address is inactive/invalid, Network will calculate a primary from all the active and valid addresses on the merged entity.

If the winner did not contribute a primary and the loser contributed a primary, the loser's address will remain primary after the merge. However, if the loser's address is inactive/invalid, Network will calculate a primary from all the active and valid addresses on the merged entity.

Unmerge

When records are unmerged from each other, any fields that were set as primary on the original records are recovered.

A primary is calculated in the following situations:

  • None of the source views contributed a primary and the following option is on: The record DOES NOT HAVE a primary address.
  • An inactive address is primary in the source views and the following option is on: The status of the primary address is INACTIVE.
  • An invalid address is primary in the source views and the following option is on: The status of the primary address is INVALID or DELETED.

Workflows

These workflows illustrate how Network determines if a primary should be calculated based on the addresses and the options that you have selected for the primary field. The letters in the purple circles; for example, , correspond to the examples in the tables above, so you can follow the decision points.

Tip: Right-click on the image to open it in a new browser tab so you can zoom in on the details.

Calculating primary from addresses in the source and Network

If Network has to calculate a primary, only active and valid addresses on the record are considered in the calculation. Addresses where the primary flag is set to "N" in the current change are filtered out from the calculation. If there are multiple addresses to consider, the following criteria are used as tie-breakers until one primary can be found:

  1. Source rank on the primary field
  2. Address rank
  3. Latest time that the primary field was last updated. This is stored internally.
  4. Highest Veeva ID (VID).

Impact to downstream systems

Depending on the options that you select for Network calculation, it 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.