Global option sets are extremely useful for developing in Dynamics CRM according to best practices in system architecture. In this blog we’ll cover what is an option set and how to create an option set.
What is a Global Option Set?
Often referred to as “dropdown” or a “pick-list” option sets are a field type that can be created within Dynamics CRM. An option set is a list of defined options that can be selected by a user to capture specific information, unlike a text field where the data can be “organic” or manually entered.
A “global” option set is functionally exactly the same as an option set, but after a global option set is created it can be reused in any entity as well as in any option set type field.
Creating a Global Option Set
Under Settings - Customizations - Customize the Solution - select the Option Sets Tab.
Select “Option Sets” from the left.
Selecting this will show a view of all the global option sets that have been created within the solution.
Click “New” in the top left corner to create a new option set.
Fill out the following fields
Display Name: This is a field that must be populated. This display name is what appears to the user when adding the option set to a field. Note: Make sure to give option sets an identifiable display name to make it easier to find. The Name field is automatically populated after the “Display Name” contains data. This is the schema name of the option set.
Selecting the “+” (plus sign) will add an “Item” option.
After clicking the “plus sign” the label will be “Item” rename this to the appropriate option name. Continue clicking “plus sign” until all the options needed are created. The Value field is automatically populated after selecting the “plus sign”.
After all appropriate fields, options, labels are populated save and close the form and a global option set is created.
How to Add a Global Option Set to a Form
This option set is not on any form yet. This option set must be added to the form.
When creating a new field on a CRM form, set the type to “Option Set” will prompt a “Use Existing Option Set” yes or no question. Selecting “Yes” will allow the use of global option sets. Select the option set that was created to use within that field.
THAT’S IT! You are now ready to begin using global option sets! If you enjoyed this blog make sure to check out our main blog page or our Education pages for even more Dynamics CRM fun!
I'm using global option sets with multiple custom entities. I develop in my sandbox then bundle the solution and import it as managed into my production environment. What is the best practice for the global option sets in this situation? Can the global option set be in each entity's solution and CRM will use the most recent version or should they be their own solution?
Hi John - In our larger environment we often create a solution to move just the global option sets. This this makes change control a bit easier specialy when a global picklist will change the values in a bunch of entities. In our internal crm, we move teh global option set with the entities that are using it. To answer your question - yes the move recent move is used by all entities.....there is only one copy of the global option set stored in crm.
Thanks Joe, that helps a lot!
I need one of the option in optionset to be disabled but not Deleted. is there any such scenario in MSCRM 2015?
Hi Johnson. This is one of the major drawbacks of option sets. If we delete, then the historical data with this value is gone. THere is no elegant way to 'disable'. If there are any chances of needing to disable we recomend using an 'entity lookup' instead of an option set.
Hi John, I have a entity that has multiple fields as option sets. I need a way to export all the valid values for these option sets from the CRM. What is the best way to do that.