Microsoft Dynamics CRM Conditional OptionSet vs Filtered Lookup

We love to customize Microsoft Dynamics CRM solutions here @Beringer. We’ve been working with Microsoft Dynamics CRM since its inception, and we’re always finding innovative ways to implement the latest tools and help automate business processes.

A very common request we receive @Beringer is to build a conditional OptionSet for their CRM system. An OptionSet (AKA pick list or drop down list) is simply a field that forces a user to choose from a pre-defined set of values. A conditional OptionSet can be designed when you want the value of one OptionSet to be filtered based on the value of a second OptionSet.

For example, when a user selects the value Color from the first field, then they expect the values of the second field to only show values that are colors.


This is not a native feature in CRM, but it is possible to accomplish with some custom code. The downside to this approach is that ANY changes to this process or meta data require a developer to adjust the code. You may asking yourself if there is a native way to support this in CRM? Yes we can using Filtered Lookups 🙂
In this example, I’ve replaced the two Option Sets with two Lookup Fields.


I’ve selected Color for the first field, so why is Cake an option in the second field? Cake isn’t a color! The key to filtering lookups fields is to add a parentchild relationship between the two fields. You can then enable record filtering on the second field.


Save and publish your changes, and you will now see the field only shows values that are related to the first field.


Keep in mind that the values are now stored data, as opposed to metadata. This means that the values will NOT transfer between CRM organizations when importing customizations unless you import the data as well. Can we help you with your CRM implementation? Please feel free to contact us to find out.

Beringer is a Microsoft Gold Certified Partner with expert knowledge in modifying Microsoft Dynamics CRM to fit your business needs.