Tracking User Activity Using JavaScript

To support analysis of detailed user activity within CLM content, content can be coded to capture specific user actions performed on HTML5 content using the createRecord and updateRecord JavaScript functions. These actions can include button selections or certain gestures (clickstream data), or generic data capture, such as updating an HCP’s email address on the Account object. See the CLM JavaScript library for more information on the available functions.

Do not use the createRecord function to create Call2_Key_Message_vod records. Doing so interferes with Veeva-defined logic for call key messages.

If saving data into a custom object, ensure end users have OLS CRU access the object and FLS Edit permissions to the fields where the data is saved.

Clickstream data can be used to capture custom information. By building a custom control within HTML5 content, responses can be captured and later displayed directly on the call report.

Additionally, the Call Clickstream object can automatically populate the following fields each time a record is created for a Call. Manually entered values for the fields are overwritten:

  • Call_vod - set to the current Call record ID
  • Product_vod - Product_vod of corresponding Key_Message_vod record
  • Key_Message_vod - record ID of corresponding Key_Message_vod record
  • CLM_ID_vod - CLM_ID_vod of corresponding Key_Message_vod record
  • Presentation_ID_vod - Presentation_ID_vod of CLM_Presentation_vod record

To display the Call Clickstream information captured on the call report, add the zvod_Surveys_vod field on a separate section of the appropriate Call2_vod object page layouts. This section displays a table of responses. The following fields from the Clickstream object display in the table:

  • Presentation ID
  • Product
  • Key Message Name
  • Track Element Description
  • Answer

The fields displayed in the table are not configurable.

When implementing clickstream capture, content creators must be mindful of the potential amount of data captured as a part of each slide and/or presentation. Creating a large amount of records on each slide will increase sync times for users and cause performance degradation on the Reporting module in the online application.