Inactivating reference codes


To manage the unused reference codes in your Network instance, you can inactivate the codes. This includes any code that you've added to your instance as well as Veeva OpenData codes for countries that you don't subscribe to. When the codes are inactivated, they cannot be used because they will not be available in your Network instance.

Network Considerations

Before you inactivate reference codes in your Network instance, use reports to query your Network instance to ensure that no records are using the codes that you want to inactivate. If reporting is not enabled in your instance, consider exporting a target subscription that exports all of the records. Remember that your data visibility profileClosed A user-assigned profile that contains permissions and the profile layouts that are used when viewing HCP or HCO records. might limit the results that you see, so some records might be missed. Also, if you don't have visibility for HCP opt-out or candidate records, some records might be missed.

Reference lists

Only inactivate codes in lists for which you are loading data. Inactivating reference lists that Network uses is not recommended. Many of these reference lists are used in address cleansing. Their use might not be apparent but they might be integral to how your data is processed; for example, if you inactivate the merged_into__v RecordState, you will not be able to merge any records. The merge instruction will fail, job errors will exist in the administrator inbox, and the records will not merge. This is because the losing record in a merge is assigned the merged_into__v RecordState.

Do not inactivate codes from the following lists:

  • AddressDPVConfIndicator
  • AddressDPVFootnotes
  • AddressFootnotes
  • AddressISO31663
  • AddressISO3166n
  • AddressRecordType
  • AddressReturnCode
  • AddressVerificationStatus
  • BooleanReference
  • EntityType
  • RecordState

Reference aliases

Reference codes can be mapped to your source and target systems using reference aliasesClosed A mapping between a Network reference code and the reference code of an external system.. When a code is inactivated, a warning message displays to remind you to update any reference aliases for the codes that you are inactivating.

If the reference aliases are not updated to point to a still-active code in that reference list and a record is included in a source, the record will fail upon load because it is pointing to an inactive reference code within Network.


A user inactivates the Unknown code for the HCPGender reference type for their source system - System A.

They have the following reference alias defined for System A:

Network code Network name Source Alias
U Unknown 3

Result: An incoming record from System A that uses 3 will fail during the data load. The value 3must be mapped to an active Network code.

Ensure that when a code is inactivated, that it is not needed by any of your incoming sources or your data in Network.

Veeva CRM considerations

Before you inactivate a reference code, ensure that all Veeva CRM mappings have been reviewed. Do not inactivate a code if it is included in the mappings.

Veeva OpenData considerations

Inactive codes in your Network instance

If a reference code has been inactivated in your Network instance and then you subscribe to Veeva OpenData in that country, Network automatically re-activates all codes used by Veeva OpenData in that country when the subscription runs.

Inactive codes in the Veeva OpenData instance

Veeva OpenData can inactivate codes in their Network instance for a country when they no longer use it. These codes are not inactivated in your Network instance because you might be using it for a non-OpenData record in that country.

If you try to use a reference code on an OpenData record and OpenData (in that country) has disabled the code, an error is returned:

System Rejected - You have submitted an invalid or inactivated reference code/value.

For each release, the Veeva Network Data Governance document lists the codes that Veeva OpenData no longer uses. Before inactivating a code, Veeva OpenData ensures that no records use the code. However, to avoid negative impacts, inactivated codes are not sent to your Network instance. If you are not subscribed to Veeva OpenData for a country, you can reference the information in the Data Governance document to inactivate the reference codes in your Network instance.

Stewarding considerations

When a data steward is working on a record that has an inactive reference code, an error about the code is displays only if the steward uses that field. Otherwise, the inactive code can remain in use by that record. This ensures that no processes fail when stewards are working with records that have inactive codes.