I have a requirement where I need to show or hide the phone number (standard field) if the contact is VIP or not (customm field) in standards layout. Only a specific profile will have access to see the phone number of those VIP contacts. However, everyone will see any contact regardless if is VIP or not. How can I achieve this?

I can create 2 separate layouts if the contact is VIP or not but they will still be able to run a report and see that phone number. I need to restrict the access to the field in both layout and data level.

Any advice/approach in how to achieve this is much appreaciate it.

1 Answer 1


What we can do is:

  1. Set the FLS of standard Phone field, and make it visible to only System Administrator profile.
  2. Create a new field, formula field, which will display phone if contact is not VIP, and make it visible to all profiles appropriately.

    if(IS_VIP__c, '', Phone)

Because you have set the FLS of standard Phone field, it will not be accessible from anywhere to unwanted profiles. Admin will be able to see the field anyway. All other profiles will see the new field only, and they will not see phone number if contact is a VIP.

Hope this helps :) Please try.

  • This is very good approach, so even though we setup the FLS on standard phone and only admin has access to this field, the formula will still show this value if is VIP or not? I though if we restrict access to a field is at all levels, including access from formulas.
    – MANUELAN00
    Commented May 24, 2017 at 23:38
  • If you try and it works for you, please mark it as answer. Thanks Commented May 25, 2017 at 1:14

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .