Network widgets

Search by alternate key

In the search widget, you can now search by alternate key using the ID field in the advanced search form. This enhancement supports existing and new alternate keys.

When you click the IDs available to Search link, the alternate keys are listed.

In this example, My Alternate Key and Verteo ID are alternate keys that can searched for using the ID field.

This enhancement is available by default. No changes are required to the configuration; the alternate keys will automatically be available as ID fields.

Administrators can add the ID field to the advanced search for in the search widget configuration.

In the search widget, after you submit an add request, clicking the Back to Search link now returns you to the search results. Previously, clicking Back to Search navigated you to the start page (either basic search or the advanced search form).

This enhancement enables you to easily submit another add request. For example, if you are adding several new records, you can immediately click the Create New button on the search results page instead of searching again.

This enhancement is enabled by default for your search widget.

Profile layouts

By default, the Network widgets display record profiles using the profile layout assigned to a user's data visibility profile (DVP). Typically, the layouts assigned to the DVP contain all of the fields in the Network data model. For widget users, displaying all of the fields from the data model might be overwhelming. Administrators can now choose to override this default behavior and assign specific profile layouts for each country to the widget. For example, you can use custom profile layouts to standardize the widget so all widgets users see the same fields or to limit the number of fields so widget users only see the essential fields.

Profile layouts are also used on the Add Request form in the search widget, so using a custom layout means users can have fewer fields to complete when they create a record.

Assign profile layouts to a widget

Customized profile layouts can be assigned to search widgets, profile widgets, and affiliation widgets.

To update the widget configuration to include a specific profile layout:

  1. In the admin console, click System Interfaces > Network Widgets.
  2. Select the widget to open its configuration page.
  3. Under the Profile Layout heading, choose Override the Data Visibility Profile (DVP) and assign a specific profile layout option.

    In the profile and affiliation widgets, this is in the General Settings section. For the search widget, it is in the Entity Management section.

  4. In the Country list, select all of the countries that the profile layout applies to; for example, it might apply to all European countries. Click Add Country Layout to define a layout for more countries.
  5. In the HCP Profile Layout and HCO Profile Layout lists, choose the layout for that object.

    If the search widget is configured for only HCPs or only HCOs, a list displays for that object only.

  6. Save your changes.

When users view records for those countries, the profile layout determines the fields and sections that they see.

Affiliation widget title

The affiliation widget homepage title has been changed to Influence Maps to more clearly identify it as a tool for visualizing affiliations. Previously, the homepage title was Health Care Systems. Additionally, the search field now displays the number of available health care systems available.

This enhancement is enabled by default.

The affiliation widget is available for early adopters. For more information, contact your Veeva representative.

In the Advanced Search, several enhancements have been made to the Country field to improve your search experience.

  • The flag has been added beside each country name to quickly help identify it.
  • The Country list only displays countries that you have access to through your data visibility profile.
  • Your Country preference is saved. When you log into the search widget, the country that you used for your previous search is preserved.
  • When you filter your results using other fields, the options are determined by the selected country.


    If you search for a specific HCP Type for the United States, only the types supported for the US display.

Custom keys

Network widgets now support creating custom keys that are cross references to the source ID. Previously, custom keys could be created to track the systems that have downloaded records. Now, a separate custom key can be created that includes the cross reference ID (for example, the Salesforce Account ID).

Create custom keys

Web developers can associate custom keys to a record by calling a method during the select event from the widget. The select event is fired when users download a record.

MethodName associateCustomKey (vid__v, custom_key_source_type, custom_key_item_type, custom_key_value, system_name)
  • vid__v (required)
  • custom_key_source_type (required)
  • custom_key_item_type (required)
  • custom_key_value (required)
  • system_name (optional)

The following events are fired to indicate whether the associate key call was successful or not:

  • veeva-network:<widgetName>:associate-custom-key-failed
  • veeva-network:<widgetName>:associate-custom-key-succeeded

This method creates a custom key on the record that is specified in the VID key. The custom key will be created as soon as the user downloads the record, firing the select method.


<script type="text/javascript">
  const widgetName = 'DefinedSearchWidget';
  // store a reference to the search widget element for event handling
  // and access to custom element's public API
  const searchWidgetEl = document.getElementById('searchWidget');
  // add the event listener for this widget's `select` event
  searchWidgetEl.addEventListener(`veeva-network:${widgetName}:select`, (ev) => {
    // get a reference to this `select`-ed record's `vid__v` value
    const vid__v = ev.detail.entity.entityId;
    // define alternative custom key format
    const custom_key_source_type = 'SOURCE_TYPE';
    const custom_key_item_type = 'ITEM_TYPE';
    const custom_key_value = 'VALUE';
    const system_name = 'SYSTEM_NAME';
    // use custom elements' `associateCustomKey` public API method
  // add the succeeded event listener for the emitted `associateCustomKey` request
  searchWidgetEl.addEventListener(`veeva-network:${widgetName}:associate-custom-key-succeeded`, (ev) => {
    // handle success case here
  // add the failed event listener for the emitted `associateCustomKey` request
  searchWidgetEl.addEventListener(`veeva-network:${widgetName}:associate-custom-key-failed`, (ev) => {
    const errors = ev.detail.errors;
    // handle error case here

Filter parent HCOs

The search widget and profile widget can now filter the parent HCOs that display to users. Using a preset filter in the widget code, you can define the parent HCOs that are relevant to your business. Only the filtered parent affiliations will display in search results and on record profiles. Currently, all parent HCOs associated with a record display.

Adding the preset filter to the widget

Web developers can add the parent HCO preset filter to the widget code that is automatically generated from the widget configuration.


  • The preset filter uses Network's reference codes; reference aliases are not supported.
  • The fields must have the hco. prefix.

Example filter


When this preset filter is applied, only active HCOs that have the Hospital Pharmacy (11:2) or Other Pharmacy (11:98) HCO type display in the widget.

Add this preset filter to the generated widget code that is embedded in your internal application.


Profile and DCR widget

Using the parent HCO preset filter determines the parent affiliations that display on the record in the profile widget. When the preset filter is applied to the DCR widget, users can only add or update a parent affiliation that matches the defined criteria.

Search widget

When the parent HCO preset filter is used in the search widget, the parent HCOs are filtered when users are adding a new parent HCO in the add request.

The search widget already supports a general preset filter. If both the preset filter and the parent HCO preset filter exist, the parent HCO filter will be used.

Example - Viewing affiliations

Create a preset filter for the search widget so it displays only parent HCOs that are active health systems.

The HCO Type reference code for Organization, Health System is 4:37.

Original record in Network UI

Note that John is connected to several HCOs that vary from Hospitals, Clinics, Departments, and Health Systems.

However, when viewing profiles in the search widget, you want to see affiliations only to health systems.

In the widget code, add a preset filter for parent HCOs that are active health systems (the HCO Type reference code for Organization, Health System is 4:37).


Filtered record in widget profile

After the preset filter is applied, John's record displays only the parent HCOs that are active health systems.

Example - Adding affiliations

When the same preset filter is applied, a user creating a new affiliation can only create the affiliation to a health system. Other types of HCOs are not available in the Corporate Name field.

Select event

When a user downloads a record from the search widget, the JSON will show only those parent HCOs that matched the criteria in your parent HCO preset filter.


Administrators can view the parent HCO preset filter in the Search Audit History (Logs).

Retrieve entity API

The Retrieve API is updated to support the parent HCO filter. Similar to the Search API, this will filter the parent HCO blocks. The hco. prefix is supported for this filter.

Sample request