Picklist values not available after record type deactivation - Answers - Salesforce Trailblazer Community
Trailblazer Community
Ask Search:
Ksenia ChoateKsenia Choate 

Picklist values not available after record type deactivation

I deactivated record types and now certain picklist values are not showing up on existing records in one of the picklists (let's call it P1). The only value available is the one that was selected prior to the rec type deactivation. I made this picklist is a dependent picklist of a new picklist that I just created (P2). When you select the controlling value, the corresponding dependent values don't show up. I checked multiple times to make sure the dependencies are configured correctly, and tried removing and then re-adding them.

Even when I delete the dependency, and the fields are independent of each other, it doesn't change the behavior (picklist values are still unavailable on P1, expect for the one that was selected before the rec type deactivation). There's a third picklist on the object (P3), and it shows all the values. The difference between P1 and P3 is that P1 had different values assigned to different rec types before their deactivation, while P3 had all of its values available on all rec types.

When creating a new record, everything works as expected with P1, but I can't change its values on existing records, as none of the values are available, except for the one that was selected prior to the rec type deactivation. I tried deactivating and then reactivating both the picklist values and the record types, to no avail.

It's not a global picklist. Custom settings are not involved. It behaves the same in Chrome and Firefox.

If anyone has any ideas on how to make all of P1's picklist values available, I would greatly appreciate it. Thank you in advance!
Eric PraudEric Praud
Hi Ksenia,

Go to the remaining record type and click on its name. You shoudl have a section called "Picklists Available for Editing".
Click Edit in front of the picklist. You can move values from the "Available Values" column to the "Select Values" one, then save
Ksenia ChoateKsenia Choate
Hi Eric -- thank you so much for responding! I deactivated all rec types though: https://www.screencast.com/t/uYvLySRFJd. I assumed this reverts the object to its original state -- the way it was before any rec types were created. I made the standard OOTB "Master" rec type the default for all profiles, but matser is not available for editing, as far as I am aware. Or is it?

Or do I have to leave one of the custom rec types in place, no matter what?
Eric PraudEric Praud
Hi Ksenia,

Since you need to first deactivate record types before deleting them, Salesforce throws an error when trying to deactivate the last one. In this screenshot, I cannot save because of the error:
User-added image
So you shoudl still have one record type left. Your screenshot showed 3, but you could have taken it before the deletion?

Ksenia ChoateKsenia Choate
Eric -- I haven't deleted any rec types yet, I only deactivated all of them, and that's what messed things up.

About the error in your screenshot: I think on accounts, this might have something to do with having person accounts (https://trailblazers.salesforce.com/answers?id=9063A000000DozZQAS). Try deactivating all rec types on a custom object. You will likely get a message saying "This record type <record type name> cannot be deleted / deactivated because the following profiles use this record type as default." Once you switch all the profiles to the "Master" as their default, including all the obscure ones that require a workaround to get to the rec types page, you will be able to deactivate that last rec type.

However, I think I may have just found my answer: "To deactivate all record types from an object, remove all record types from all the profiles and deactivate the record types. [Which I did earlier.] Then create one new record type and activate it, but don’t add it to any profiles. One record type must exist to enable existing records that used the deactivated record types to display properly." (https://help.salesforce.com/articleView?id=customize_recordtype_considerations.htm&type=5 (https://help.salesforce.com/articleView?id=customize_recordtype_considerations.htm&type=5)).

So I created the new rec type. Just doing that didn't fix the problem. I then assigned it to my profile, updated all records to that rec type, then removed it from my profile. Since all picklist values are by default added to new profiles, my P1 picklist is now working as expected. I could have probably achieved the same result by reactivating an existing rec type, adding all picklist values to it, and updating all records with it.

I guess the conclusion I came to as a result of all this (and I could have still misunderstood something), is that while it's possible to deactivate all record types, you still need at least one for the features to function properly. Once you create a custom record type, you can't revert back to using the OOTB "Master" rec type, i.e., to the functionality of a pristine brand-new object with no record types.

Eric, thank you for coming on this journey with me and helping me figure it all out!