No access to RV Apex Classes

Last published at: 2023-12-14 15:15:08 UTC

Question:

- I get an error about not having access to a class: "You do not have access to the Apex class named 'xx'". 

- I was informed I should get access to a certain class in order to use a feature.

Answer:

If you get an error message stating that you don't have access to a certain class, or if you are lacking access to a certain class, this means you were given access to the other RV classes via your user profile. Either a new class was added in the latest Record Validation release, or you were not given access to all classes in the first place. Follow the steps in 'Add the class to a user profile' below to add access to the class.

Add the class to a user profile

Start with enabling the Enhanced Profile User Interface setting, to make sure you can view all available RV Apex classes.

  1. Go to Salesforce Setup.
  2. Go to Users > User Management Settings.
  3. Enable Enhanced Profile User Interface.

Then, add the class from the error message, plus any other missing classes, to your profile.

  1. Go to Salesforce Setup > Users > Profiles.
  2. Find the profile you want to edit and click on the profile's name.
  3. At the profile overview, scroll down to Apex Class Access and click Edit.
  4. At Available Apex Classes, find the missing class and move it to Enabled Apex Classes.
  5. If you see any other classes that start with "recordval" listed under Available Apex Classes, move those to Enabled Apex Classes as well.
  6. Click Save.

Repeat for all other user profiles that need to work with Record Validation.

The error about this class should not occur anymore. Have the user log out and in again if the problem persists. Read on to find out how you can prevent this error from happening again.

Prevent the error from happening again

New classes in release notes

When a Record Validation release contains new classes, this is mentioned in the Release Notes‍. Add the listed classes to all user profiles that need to work with Record Validation.

User profile or RV Permission Set

For Record Validation to work correctly, you need to grant your users access to all RV Apex classes. There are two possible ways to go about this. You can grant classes access to specific user profiles, or assign the RV Permission Set to individual users.

The advantage of using the RV Permission Set is that it is updated automatically. This means you don't need to make any changes after an RV update was released thats contain new classes. However, with the RV Permission Set, by default users have access to all of Record Validation, including all settings.

If you don't want your users to access certain RV pages, such as RV Setup or RV Job, make sure to deny them access to those pages.

Assign the RV Permission Set

This option grants users access to all of Record Validation.

  1. Go to Salesforce Setup > Users > Permission Sets.
  2. Click the Record Validation Permissions permission set.
  3. At the top, click Manage Assignments.
  4. Click Add Assignments.
  5. Select the users you want to assign the permission set to.
  6. Click Assign.

You have now granted full access to Record Validation, including all classes for current and future RV releases, to the selected users.

 

To deny access to certain RV pages:

  1. Go to Salesforce Setup > Users > Profiles.
  2. Find the profile you want to edit.
  3. On the profile, go to Object Settings.
  4. Find the RV tabs you want to hide and edit. 
  5. Under Tab Settings, select Tab Hidden.
  6. Click Save.