- Basic profile information, such as name and address
- Records of any completed training
- Documents, such as a CV or publications
- Details of past and future event engagements
Objects in this module include:
Speaker Relationship to Account
Speakers are stored in the EM_Speaker_vod object. Speakers can be related to an account within Veeva CRM. If the Account_vod lookup on a Speaker record is populated, the Name field on the Speaker record is overwritten by the Formatted_Name_vod value from the associated Account record.
It is not required for a Speaker record to be associated with an Account record. If creating a speaker not related to an account, fill in the Name field on the speaker record. For searching purposes, a manually entered name should match the format used by the Formatted Name field on the account, which is Last Name, First Name, by default.
Speaker Training and Topics
Topics are used during event planning to indicate what is discussed at the event. Speakers typically receive training on a topic before speaking at an event for that topic.
After defining what event types are used, define a topic list to store the topics that are used for the events. The Event_Topic_vod record type in the EM_Catalog_vod object is used to store this information.
When speakers receive training, document that training by creating a Speaker Qualification record. This record links a speaker to a topic. The EM_Speaker_Qualification_vod object stores records of speaker training.
When planning the event, the user has the ability to select a topic. The topic selected can be used to filter speakers to display only those trained on the event topic. This is done using the Event Rules configuration, described in the Speaker Selection and Filtering section.
Speaker Qualification Relationship to Contracts
Veeva CRM includes a contracting module for storing contracting data for a variety of use cases, including the contracted services of a speaker.
This module consists of three objects:
- Contract – contains the top-level data of a contract, such as name, effective dates, and status
- Contract Lines – contains the individual details of a contract. In the case of speakers, this includes each of the services a speaker is contracted for, as well as the associated rates.
- Contract Partner – contains a list of speakers associated to this contract. One contract can be associated to multiple speakers. If using this model, the individual Contract Lines must also be the same. If contracting with speakers with different rates and services, different contracts should be used.
To associate a contract to a speaker:
- Create a contract with the desired top-level details.
- Add contract lines. For speaker contracts, the Service_vod field should be used on the contract line object. This field associates the contract line to a speaker service, defined using the Speaker_Service_vod record type in the EM_Catalog_vod object.
- Create a contract partner for this contract. On the contract partner, populate the Speaker_vod lookup field with the desired speaker.
Veeva CRM includes an out-of-the-box record type and page layout for speaker contracts, but custom record types and page layouts can be used.
When a speaker contract is activated, the details from the contract lines are copied into the Speaker_Qualification_vod object. This allows users to see all the contracted services as well as trainings for a speaker in a single location on the speaker detail page.
If using Speaker Contracts, update the Formatted Name field on the Contract Partner Object to the following to ensure the Contract Partner record has the correct value for the speaker name:
Account_vod__r.LastName & ", " & Account_vod__r.FirstName & IF(ISNULL(Account_vod__r.Suffix_vod__c), "", " " & Account_vod__r.Suffix_vod__c), Account_vod__r.Name ))
The purpose of this field is to allow users who have visibility to the Contract Partner to see the Speaker's name, even if they do not have visibility to the Speaker record itself.
All Speaker records have a Status field. Out of the box, the values in this field are Nominated_vod and Eligible_vod. Custom statuses can be added. However, in order for a speaker to be selected for an event, the value of this status must be Eligible_vod.
The Speaker Status value is not set automatically. It must be set manually or automated based on your business rules.
When a speaker is added to an event, the speaker’s annual utilization rate is incremented so that utilization rates can be tracked over the course of a year. An Apex class called SPEAKER_YTD_CAPS_RESET resets the YTD spend and utilization values on speakers.
When it is scheduled and runs, it checks today's date against Year_To_Date_Reset_Month_vod and Year_To_Date_Reset_Day_vod fields on the EM_Speaker_vod object. If these values are not set or visible, they default to January 1st.
If the current date is equal to the reset date, Year_to_Date_Spend_vod and Year_to_Date_Utilization_vod are reset to 0 and any Events the Speakers are participating in are added for the upcoming year.
If this class is not scheduled to run, the values reset only when a Speaker is added to an Event or an Expense is logged against that Speaker. Until that time, YTD Spend and Utilization continue to display the values from last year.
If you decide to do a one-time run of this class after January 1st, it does not update any records unless the Year_To_Date_Reset_Month_vod and Year_To_Date_Reset_Day_vod fields on the EM_Speaker_vod object are set to the date it runs. In that case, the YTD utilization values only consider Events from that reset date forward.
Speaker Utilization Reset
The Year_To_Date_Utilization_vod field is recalculated by the count of EM_Event_Speaker_vod records where:
- The Status_vod field on the EM_Event_vod object is not Canceled_vod
- The Start_Time_vod field on the EM_Event_vod object is greater than or equal to the Year_to_Date_Reset_Month_vod field
- The Year_to_Date_Reset_Day_vod and less than the next projected values for the Start_Time_vod and EM_Event_vod fields.
- Status_vod field on the EM_Event_Speaker_vod object matches a value defined in the SPEAKER_ROLLUP_STATUS_FILTER Veeva setting. If the setting is not populated, records with a value of Attended_vod or Signed_vod are counted.
A speaker cap is a limit on the total monetary value that can be transferred to an HCP over the course of a year. This value can be set at the individual speaker level and is stored in the Annual_Cap_vod field on the EM_Speaker_vod object.
For information on how speaker caps are recalculated, see Resetting YTD Speaker Caps.
Many compliance rules apply on speaker selection. For example, speaker selection may be limited to speakers with certain training, or with certain contracts in place.
Veeva Events Management accommodates three types of filters that can be applied during speaker selection:
- General training – for example, compliance or speaking training. These are defined in the EM_Catalog_vod object using the General_Topic_vod record type.
- Topic training – training to speak on a specific topic, such as product usage. These are defined in the EM_Catalog_vod object using the Event_Topic_vod record type.
- Contracted services - These are defined in the EM_Catalog_vod object using the Speaker_Service_vod record type
Filters are defined in the Event_Rule_vod object using the Speaker_Qualification_vod record type. The Event Rule references an Event Configuration and has the ability to use a country override. This means it is applied to a single event type, and can apply to one or all of the countries contained within that Event Configuration. For more information on event configurations, see Speaker Management.
There are three types of filters:
- Mandatory – this filter is automatically applied when selecting a speaker, and cannot be removed
- Optional On – this filter is automatically applied when selecting a speaker, but can be removed
- Optional Off – this filter is not applied when selecting a speaker, but can be added
To create a Speaker Requirements Event Rule:
- Navigate to the Event Configuration the Event Rule is applicable for.
- Navigate to the Event Rule related list and select New Event Rule.
- Select the Speaker Qualification record type.
Fill in the Speaker Qualification lookup with the type of qualification used as a filter.
A common use case is to create a filter to only display speakers trained on the event topic. For example, if the event topic is Cholecap Efficacy, only speakers who are trained to speak on Cholecap Efficacy should be selectable. To create a filter of this type, leave the Speaker Qualification lookup empty on the Event Rule.
- Select a filter type.
- Select a country override (optional).
Speaker selection with filters applied:
On the speaker selection UI, the left side displays the results list, and the right side displays the speaker details.
The speaker details include the speaker’s name, identifier, and address, as well as an icon to display if the speaker is already selected for this event. The speaker identifier and address are text fields that can be populated directly on the speaker record itself. All three fields are searchable using the search box in the top right.
The speaker details panel is configurable using an Event Rule of type Speaker_Fields_vod. All the data that displays is configured in the Speaker_Fields_vod field. When filters are applied, they are applied across the same Training and Services records that display in the UI on the speaker details panel.
The default value for this field is:
Separated out into components:
- Keywords – these are special key works in the Speaker Fields definition
- CV – if this value is in the Speaker Fields definition, the application will display the “View CV” link at the top of the speaker details. The document that displays is an attachment on the Speaker record that begins with the characters CV (for example, “CV – Cassie Ackerman”).
- If no attachment beginning with CV is found, the link will not display
- If multiple attachments are found, the first one returned to the system will display
- The text “View CV” is defined by the VIEW_CV Veeva Message, and can be modified or translated.
- Services – if this value is in the Speaker Fields definition, the application will display a list of Speaker Qualifications of type Speaker_Service_vod. These are meant to represent contracted services.
- Only services that are valid will display
- Validity is based on:
- The event start date falling between the service’s start and end date
- If the service is associated to a contract, the Contract and Contract Partner records must be activated
- RecentEvents – Displays a list of the last ten events where the person was a speaker, the date of the event, the event owner, and the Event Status. This information is intended to allow the event organizer to reach out to past event organizers who have interacted with this speaker.
- Training – if this value is in the Speaker Fields definition, the application will display a list of Speaker Qualifications of type Speaker_Training_vod. These are meant to represent both the general topic and event topic trainings completed by the speaker.
- Speaker Fields
- Other components of the Speaker Fields text field include fields that are directly on the speaker record – for example, address, status, and utilization data
- These fields are added to the UI by adding the name of the field to the Speaker Fields text field
- These fields must be fields on the EM_Speaker_vod object
Example Speaker Fields record:
Events management now maintains speaker eligibility for events counting toward their next year speaker cap. This new field makes it possible to schedule speakers who are ineligible for the current year against events that count toward their next year cap.
For example, Sarah Jones is an event organizer who wants to schedule Dr. Clinton Ackerman as a speaker. She notices Dr. Ackerman is close to the annual cap and his eligibility status is Expired. However, the administrator set Dr. Ackerman’s status to eligible for next year, so Sarah is able to plan an event for next year and select Dr. Ackerman.
To configure Next Year Speaker Status:
Grant the appropriate FLS permission to the Next_Year_Status_vod field on the EM_Speaker_vod object for the appropriate user profiles:
- Data Admin – Edit
- Manager – Read
- End-User – Read
Grant the appropriate FLS permission to the Next_Year_Reset_Date_vod field on the EM_Speaker object for the appropriate user profiles:
- Data Admin – Read
- Manager – Read
- End-User – Read
- Place the Next_Year_Status_vod field from the EM_Speaker_vod object on to the appropriate page layout.
Populate the following fields on all appropriate EM_Speaker_vod records:
- Year_to_Date_Reset_Month_vod – See Resetting Speaker YTD Caps for more information
- Year_to_Date_Reset_Day_vod – See Resetting Speaker YTD Caps for more information
An error occurs if these fields are left empty for an EM_Speaker_vod record.
When attempting to schedule a speaker against an event, CRM checks the date of the event and displays speakers who are eligible on the date of that event. To check speaker eligibility, CRM looks at the Status field if the event’s date is before the speaker’s cap reset month and day, or at the Next Year Status field if the event’s data is after the speaker’s cap reset month and day.
To change a speaker’s next year status, navigate to the appropriate speaker’s record and set the Next Year Status field to the appropriate value.
- Nominated_vod – The speaker is nominated but not yet eligible for selection for events next year
- Eligible_vod – The speaker is eligible for events next year
- Expired_vod – The speaker is not eligible for selection for events next year.
Events Management now displays a speaker’s remaining committed costs and cap for the current year as well as the next year, granting insight into the costs associated with a speaker. This also enables event organizers and the home office to view upcoming costs to prevent exceeding speaker caps.
To configure Committed Speaker Costs and Speaker Planning:
Grant the appropriate FLS permission to the following fields on the EM_Speaker_vod object for the appropriate user profiles:
Field Data Admin Manager End-User Upcoming_Committed_Costs_vod Edit Read Read Cap_Remaining_Committed_vod Edit Read Read Next_Year_Reset_Date_vod Read Read Read
Place the following fields from the EM_Speaker_vod object on to the appropriate page layout:
Populate the following fields on all appropriate EM_Speaker_vod records:
To display these fields on the speaker information panel when selecting a speaker for an event, see the Speaker Selection and Filtering section.
When FLS is granted to these fields, any committed values from expense lines where the speaker is the incurred expense entity (via the Incurred_Expense_Event_Speaker_vod or Incurred_Expense_Account_vod fields) and the expense type has the included in speaker cap checked, values automatically roll up to these fields.
A committed cost is the committed value from an expense line that has no actual (i.e., the actual value is Null or 0.00) and belongs to an event that is not closed or canceled.
When selecting a speaker for an event, the following information displays:
- Upcoming_Committed_Costs_vod – Displays the total committed costs for events counting toward the speaker's current year cap
- Next_Year_Committed_vod – Displays the total committed costs for events counting towards the speaker’s next year cap
- Cap_Remaining_Committed_vod – Displays the speaker’s remaining cap after subtracting all actual and committed expenses