Configuring Call Reporting
Before using the Call Reporting module, you should understand the components, and then configure the functionality for all users.
Components
The call reporting module consists of a parent call object, child call objects, and associated objects that the call functionality depends on, for example attendees, account, or call. The main objects that comprise the call reporting module are:
Call (call2__v)
The call object stores all of the information for planned, saved, and submitted calls, including the account, address, territory, and date and time for each call. There is one call row for each account on a call.
The Copy Record action is not supported for call2__v records.
Call Detail (call2_detail__v)
The Call Detail object stores all of the information for any product details recorded on a call. The product detailing section on the call report enables users to identify which products or topics were discussed from a predefined list, based on products defined as available to the user.
Call Discussion (call2_discussion__v)
The Call Discussion object stores all of the information for any product discussions recorded on a call. The Call Discussion object also enables for the creation of different product discussion layouts, which can be applied based on call object type.
Attendees
The Attendees section allows users to identify which person accounts or users attended a group call. For group calls, attendee details are captured as child call2__v records. For calls with Unique Activities enabled, the attendee details are captured as additional related objects. Attendees can also be configured to display for individual calls.
Call Sample (call2_sample__v)
The Call Sample object stores all of the information for any samples or promotional items recorded on a call.
Call Key Message (call2_key_message__v)
The Call Key Message object stores all of the Key Messages recorded on a call.
Expense (expense__v)
The Expense object stores all of the expense data recorded on a call.
My Setup Product (my_setup__v)
Each user’s product preferences are stored in My Setup Products. See Using the My Setup Tab for details on the object.
Sample Lot
The Sample Lot object holds all Lot #s for products that are available to users. The Sample Lot object is defined as a private object, meaning that users only have access to the Sample Lot record they own. See Creating Records for Sample Management and Transferring Sample Lots To Users for more information.
Call Type
Depending on the primary account on a call report, the platform, and the types of activities captured, the value of the call_type__v field on the call2__v object is set as follows:
Call Type | Criteria |
---|---|
Call Only |
The call is against a person OR a business account. No details or samples are recorded. |
Detail Only |
The call is against a person account. There is at least one detail product selected. No samples are recorded. |
Group Detail |
The call is against a person account on a group call, a person account with call location, or a business account. There is at least one detail product selected. No samples are recorded. |
Sample Only | The call is against a person OR a business account. There is at least one sample, BRC, or alternative sample product selected. No details are recorded. |
Detail with Sample | The call is against a person account. There is at least one detail product selected AND at least one sample, BRC, or alternative sample product selected. |
Group Detail with Sample | The call is against a person account on a group call, a person account with call location, or a business account. There is at least one detail product selected AND at least one sample, BRC, or alternative sample product selected. |
Event Only |
The call is against a medical event. No details are recorded. |
Event Detail |
The call is against a medical event. There is at least one detail product selected. |
Configuring Call Reporting for
To enable this functionality for business admins, grant the following permissions:
Object | Object Permission | Object Types | Fields | Field Permission |
---|---|---|---|---|
account__v | at least R | All appropriate object types | n/a | n/a |
call2__v | CRED |
|
|
Edit |
entity_display_name__v | Read | |||
call2_detail__v | CRED | n/a | detail_group__v | Edit |
call2_discussion__v | CRED |
|
|
Edit |
is_parent_call__v | Read | |||
call2_key_message__v | CRED | n/a |
|
Edit |
expense__v | CRED | call__v |
|
Edit |
local_currency__sys |
Read |
|||
expense_type__v | R | expense_type__v |
|
Read |
key_message__v | CRED | n/a |
|
Edit |
|
Read |
To enable this functionality for end users:
-
Grant end users the following permissions:
Object Object Permission Object Types Fields Field Permission account__v CRE All appropriate object types - account_identifier__v
- credentials__v (optional)
- do_not_call__v
- middle__v (optional)
- preferred_name__v (optional)
- suffix__v (optional)
Read address__v CRE repmaintained__v - name__v
- address_line_2__v
- city__v
- primary__v
- state__v
- zip__v
Read call_cycle_entry__v CRED n/a - name__v
- duration__v
Read call2__v CRED - callreport__v
- event__v
- address__v
- attendees__v
- attendee_type__v
- call_channel__v
- call_date__v
- call_datetime__v
- call_type__v
- child_account__v
- child_account_id__v
- controlling_parent_account__v
- entity_reference_id__v
- expense_amount__v
- expense_post_status__v
- last_device__v
- location_id__v
- location_name__v
- location_text__v
- mobile_last_modified_date_v
- territory__v
- user__v
Edit entity_display_name__v
Read call2_detail__v CRED n/a detail_group__v Edit call2_discussion__v CRED - callreport__v
- event__v
- account__v
- attendee_type__v
- call2__v
- call_date__v
- detail_group__v (optional; if using detail groups)
- entity_reference_id__v
- mobile_id__v
- product__v
- user__v
Edit is_parent_call__v Read call2_key_message__v CRED n/a - account__v
- call2__v
- call_date__v
- detail_group__v
- key_message__v
- key_message_name__v
- product__v
- reaction__v
Edit expense__v CRED call__v - amount__v
- call2__v
- description__v
- expense_type__v
- transaction_date__v
Edit local_currency__sys
Read
expense_type__v R expense_type__v - active__v
- exclude_from__v
Read key_message__v R n/a - detail_group__v
- display_order__v
- language__v
- product__v
Read my_setup_products__v CRED n/a favorite__v Read tsf__v R All appropriate object types address__v Read user__sys n/a n/a user_identifier__v Read - Set the value of the call_backdate_limit__v Veeva Setting to the number of days in the past a user cannot save a call before. For example, if the value of the setting is 30, users cannot save a call where the date is more than 30 days in the past.
- Add the following app sections to the appropriate call2__v layouts:
- call_attendees_section__v - enables Adding Call Attendees
- call_details_section__v - enables Detailing Products on the Call Report
- key_messages_section__v - enables Using Key Messages on the Call Report
- expenses_section__v - enables Recording Expenses on the Call Report
- product_discussion_section__v - Capturing Product Discussions on the Call Report
Adding standard or custom fields to the Fields section on app sections, for example, call_attendees_section__v, is not supported, unless it is specifically instructed in the Vault CRM help configuration for the app section.
- Add the more_actions__v field control to the call2__v layout to enable the More Actions button.
Call report actions must be included in the buttons__c sections on call2__v layouts. Ensure users have access to the save_and_new_call__v and submit_call__v actions on the call2__v object, and do not remove the buttons__c section from call2__v layouts.
-
Add the following fields to the appropriate call2__v layouts:
- call_channel__v
- call_datetime__v
- call_type__v
- territory__v
- Add the preferred_account__v field to the appropriate tsf__v object layouts.
- Add the detail_group__v field on the appropriate call2_key_message__v layouts, to display key messages by Detail Group (optional).
- Add additional fields to the information_vod__c section on the call2_discussion__v object to enable users to capture additional information about product discussions (optional). By default, the section includes the product__v field.
-
Ensure the following values are available for the call_channel__v field on each appropriate call2__v object type:
- face_to_face__v
- video__v
- phone__v
- message__v
- email__v
- other__v
Defining Call Object Types
Call reporting supports multiple object types in order to meet the various business needs of different organizations and user roles. Each call object type can be assigned its own layout for each Security Profile. This enables different types of users to capture data relevant to their unique role. Each of the object types and layouts included in the Vault CRM application can be configured to further refine the data elements captured during a call. Additionally, new call object types can be created along with corresponding layouts. The call object type defaults based on the object type assignment for the user's profile.
By default, the following object types are available:
Object Type |
Description |
---|---|
callreport__v |
Used for Primary Care or Specialty sales representatives to record a call with one or more HCPs, and typically includes product detailing and discussions, and Key Messages, as well as samples and promotional items distributed |
engage_connect__v | Used for Engage Connect Chat Messages. For more on Engage Chat, see Using Engage Chat in CRM. |
event__v |
Used to record a call related to a medical event that typically includes product detailing, discussions, and Key Messages |
msl_meetingbrief__v |
Used to record an interaction between an HCP and a Medical Science Liaison that typically includes product detailing, discussions, and Key Messages |
medical_inquiry_fulfillment__v | Used for call2__v records created from medical inquiry fulfillment. For more on medical inquiry fulfillment, see Medical Inquiry Fulfillment. |
meetingbrief__v |
Used for a Managed Markets representative to record meetings with payers and typically includes product details and discussions |
Customers can also create custom object types as needed. When creating custom object types for Call Reporting, ensure the last_device__v field is enabled for all object types.
Defining a Default Call Object Type Based on the Account Object Type
When users create calls, a default call object type can be applied based on the account object type of the primary account of the call. This default overrides the call object type determined at the object level. If a default is not specified in the default_call_record_type__v Veeva Setting, the standard object type assignment is applied.
To define the default call type by account object type:
- Populate the default_call_record_type__v Veeva Setting with the following text:
DEFAULT_CALL_RECORD_TYPE;;Common - Populate the DEFAULT_CALL_RECORD_TYPE Veeva Message with the appropriate account__v object type and call2__v object type API names, using the following format:
<ACCOUNT_OBJECT_TYPE1>,<DEFAULT_CALL_OBJECT_TYPE>;;
For example, the following makes calls of type msl_call the default call type when recording a call against accounts of type hospital__v:
hospital__v,msl_call;;
The user must have access to the call object types specified in the Veeva Message. If the user does not have permission for the call object type, or the call object type is not included in the allowed_call_record_types__v Veeva Setting when Restricting Calls by Account Object Type is enabled, then the default object type for the call2__v object is used.
Configuring the Record a Call Action
Users can create a call using the Record a Call action throughout Vault CRM. These buttons are provided on the account__v and medical_event__v objects, and can be added to object types to provide specific functionality to users as required. Selecting this action creates a call for the currently active account or medical event. The default object type of the call depends on the user’s profile, object type settings, and the default_call_record_type__v Veeva Setting, if configured.
The criteria for displaying the Record a Call action in offline platforms is based on object permissions and the ALLOWED_CALL_RECORD_TYPES Veeva message.
Customizing the Attendees Section
In addition to configuring the functionality and layout of the call report, admins can configure the behavior of the attendees section through section attributes.
Use the following section attributes to configure the behavior of the Attendees section of the call report.
Section Attribute |
Description |
---|---|
Suppresses Sample Recipient |
Suppress selection of a sample recipient for group calls. Using this section attribute on the attendees section is not supported for group calls with unique activities. |
Attendees Optional |
Makes attendees optional for group calls, otherwise, attendees are required for save or submit. Only applies to calls against a business account. |
Person Account Attendees |
Displays the Attendees section for calls against person accounts. |
Includes users when searching for attendees. Separate categories display for accounts and users within the Attendees section of the call report, and account and user attendees are searched separately. In order for user attendees to display in the search results, the active__v check box must be selected on their user__sys record. Ensure end users have Edit permission to the user__v field on the call2__v object. |
Enabling Attendee Specific Fields
The Attendees section can be configured to collect information specific to each attendee on a call using the Attendee Specific Fields feature for the iPad and Windows platforms. When configured, a new section displays for each attendee that is selected.
To enable Attendee Specific Fields:
- Navigate to Admin > Configuration > Objects > Layouts tab.
- Create a detail form section on the call2__v layout with the section name attendee_specific_field__c.
- Add the appropriate fields to the new section. Any fields added to this section display in a new section specific to each attendee selected on the call. The section supports fields of any data type, except multi-select picklists.
- Save the changes to the call report layout.
Using Layout Profiles for Call Reporting
To enable differing call report layouts based on the user's profile, configure layout profiles for the call report. Layout profiles are used to control the object layouts users see when viewing an object record detail page. This enables users to view different layouts depending on their assigned profile. For more on configuring layout profiles, see Configuring Layout Profiles.
This functionality is only available on the Browser platform.
Supporting Custom Fields
Custom fields can be added to the call2__v object to better support specific business processes. However, not all field types are supported on the call report page. The following field types are available for all Vault CRM platforms:
- Yes/No
- Currency
- Date
- DateTime
- Lookup
- Number
- Picklist
- Picklist (Multi-select)
- Text
- Long Text
Adding Lookup Fields
Generic lookups to objects can be configured for a call report. To configure a lookup on a call report, create a lookup field on either the call2__v or call_discussion__v objects to another object. Once the field is created, add the field to the appropriate layouts. If the lookup object is a child of account, then the lookup data results are filtered based on the accounts in attendance for the call.
User Lookups
For data capture and reporting needs in Vault CRM implementations where user attendees cannot be added to calls through the attendee search, add a lookup field to the user__sys object from the call2__v object. This enables users to indicate other Vault CRM users attended a call. When adding another Vault CRM user to a call via lookup fields, a child call is created for the other user, but the other user is not treated as an actual attendee.
To add a user lookup, create a lookup field to the user__sys object and place it on the applicable call layout.
Using lookup fields is not the equivalent of the Search User section attribute. It is for data capture and reporting purposes only.