Find your content:

Search form

You are here

Greyed out fields on object settings in permission sets


I am trying to give edit permissions for my partners on a custom object, but on the same time, I need them to have READ only on some of the fields that they see.

The custom object includes a text c_field that should NOT be edited, but it is visible as read only on the page layout of the partner.

Dongle ID is the field I need as read only.

I want to point that there is NO option to remove the required setting from the page layout - I assume this is because the field itself has the isRequired settings

enter image description here

  • blue dot is: always on layout
  • red star: required field.

enter image description here

Starting with the field property on the page layout shows

enter image description here as you can see, the field is required, and the 'read only' CB is greyed out.

How can I change that?

Checking the Field Accessibility Settings, I get a message that the field is required because of Page Layout

enter image description here Indeed, that's what I want to change ^^ - I want to set is as read only.

One option I have in mind, is to remove the required CB - and set a validation rule on the field. But I don't like that approach (even that it will work).

Any ideas?

EDIT: This is what I see in the permission sets -

enter image description here

NOTE: As for profiles: I don't want to create another profile for this specific partner - that's why I use permission sets. (and checking in the profile object settings - the behaviour is the same)

Attribution to: Saariko

Possible Suggestion/Solution #1

If your requirements are to sometimes have the dongle id field read only, you will have to remove the required attribute at the field level. This attribute trumps layout settings and field level security. Once you remove the required field attribute, you will be able to configure field permissions on the permission set or profile the way you want it. If sometimes the field is required, use layout field properties to make it required.

Attribution to: Adam Torman

Possible Suggestion/Solution #2

Setting 'required' at the sobject's definition level is the 'nuclear' option for requiring data entry as it overrides any field level security you might have. This results in some interesting interactions with High Volume Customer Portals/Customer Communities (If you make the lookup field you are using for record sharing required then the records visibility can be changed by someone who changes the value of this lookup field).

The softer way is a validation rule and marking it as required on page layouts and on VF pages. I would back the 'required' flag off the sObject and do that.

Attribution to: Steven Herod
This content is remixed from stackoverflow or stackexchange. Please visit

My Block Status

My Block Content