Question:
What are the Significances of the VeevaUserPermissions Apex Class and PermissionSet Support Veeva Setting in Veeva CRM? How to configure them?
Answer:
In the event these configurations are not set up correctly in a Veeva CRM org instance, this can result in unexpected behaviour such as:
- Permission Sets not functioning at all
- Randomized behaviour amongst end user profiles
- Unexpected behaviour may occur 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 Profle 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.
II. PermissionSet Support
- Navigate to: Setup > App Setup > Develop > Custom Settings > Veeva Settings > Manage.
Enable the PermissionSet Support Veeva Custom setting for all Veeva Setting records including the global record and Profile Specific records. User Specific Veeva Setting records are not supported in Veeva CRM. - Click Save.
Be sure to activate the Veeva Settings VMOC for the relevant profiles, devices - It is recommended to leave the Device field empty. 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.
- It is possible to query Veeva Setting records in Veeva CRM and check whether Permission Set Support is enabled.
- There is no negative impact of enabling these requirements.
Related Documentation:
CRM Help Documentation:
- Security in Veeva CRM
- Network Integration Permission Sets
- CoBrowse/Engage for Portals Permission Sets
- CoBrowse/Engage for Portals 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
- Are User Level Veeva Settings Supported in CRM?
Send us your feedback: We are always looking for feedback to help improve our Knowledge Base! Please let us know if this article is helpful or provide feedback on how we can improve your experience by clicking here.