Question:
What are the Significances of the VeevaUserPermissions Apex Class Veeva Setting in Veeva CRM? How to configure it?
Answer:
In the event these configurations are not set up correctly in a Veeva CRM org instance, this can result in behavior such as:
- Permission Sets not functioning at all.
- Randomized patterns with end-user profiles.
- Unforseen events may occur on online and offline platforms, even if there are no permission sets in use.
- Any Veeva CRM functionality may be impacted.
As a prerequisite, any Veeva Out-of-the-Box (OOTB) or Customer-defined Permission Sets require these two configurations to be enabled. It is a must to enable these two requirements for every User Profile and Veeva Settings in Veeva CRM.
The OOTB Permission Sets are as follows:
Functionality | Permission Set Name |
Approved Email | AE_ADMIN_INTEGRATION_USER_VOD |
AE_FIELD_USER_VOD | |
Approved Notes | AN_ADMINISTRATOR_VOD |
AN_COMPLIANCE_USER_VOD | |
Cobrowse/Engage For Portals | COBROWSE_FIELD_USER_VOD |
ENGAGE_INTEGRATION_USER_VOD | |
Events Management | EM_DATA_ADMIN_VOD |
EM_FIELD_USER_VOD | |
EM_MANAGER_USER_VOD | |
Multichannel Cycle Plans | MCCP_TEAMCALC_ADMIN_USER_VOD |
MCCP_TEAMCALC_END_USER_VOD | |
MCCP_TEAMCALC_INTEGRATION_USER_VOD | |
Network Integration | NETWORK_FIELD_USER_VOD |
NETWORK_INTEGRATION_USER_VOD | |
Engage Meeting | Remote_Meeting_VOD |
Other/Misc | Vadmin_Orange_Fields_VOD |
The technical reason is stated in CRM Help, quoting: Security in Veeva CRM
Configuration for supporting Permission Sets requires the VeevaUserPermissions Apex class to be installed, configured for Salesforce API v25+, and enabled for all profiles. When adding new profiles, be sure to enable access to the Apex class for them as well.
To configure these two requirements:
I. VeevaUserPermissions
- As a System Administrator, Navigate to Setup > App Setup > Develop > Apex Classes.
- Find VeevaUserPermissions.
- Click Security.
- Select all profiles under Available Profiles. It is important to select all profiles, regardless of whether they have Permission Sets defined, in order to avoid future configuration inconsistencies.
- Click Add to move them to Enabled Profiles.
- Click Save.
End Users must have the VeevaUserPermissions Apex Class Access allocated at the profile level and not via Permission Sets. This is a technical requirement.
Additional steps:
- Be sure to activate the Veeva Settings VMOC (VMobile Object Configuration) record for the relevant profiles and devices - It is recommended to leave the Device field empty.
- Make sure that the end-user has access to the Veeva Settings VMOC record, and the Veeva Settings record themselves. (Record access can be verified with a Salesforce query)
- Clear the Veeva Cache online, and Run DB Refresh on Offline CRM Platforms.
- Be sure to upgrade to the latest iRep and iOS versions available.
- Currently the Permission Set Support Veeva setting is ignored and its no longer necessary to enable this veeva setting as part of permission set configuration
Related Documentation:
CRM Help Documentation:
- Security in Veeva CRM
- Network Integration Permission Sets
- Configuring Approved Email End Users
- Configuring Approved Email Admins and Integration Users
- Using Monitored Text to Review Approved Notes Violations
Salesforce Documentation:
Knowledgebase:
- How to Clear the Veeva Cache Manually in Veeva CRM?
- How to Refresh the CRM iRep Database?
- CLM or Engage Content Related Issues from the Perspective of Veeva CRM and Other Miscellaneous Configuration