Dynamics 365 v9: MultiSelect Option Set Fields

There are several new features available in D365 v9, one of these features is MultiSelect Option Set fields.

 

How often would an option set be useful where you could select multiple items from the list? In v9, MultiSelect Option Sets are available as a field type. This means you will have one field with a list of options and you can select more than one option from the list!

 

How many of you have an area on your contact form with multiple checkboxes, that grow by the month, for subscriptions or interests? All of these checkboxes can be consolidated into ONE field. Imagine if your company offers multiple services and customers can sign up for more than one service - the MultiSelect Option Set will solve this problem as well.

 

Setup

If you're familiar with adding new fields to an entity, then setting up a new MultiSelect Option Set field will be no problem. It's just a different field type that you select when adding a new field to an entity. You can even point a MultiSelect Option Set field to a Global Option set as well.

 

Look and Feel

On the form, the MultiSelect Option Set looks a little different than the regular option set. You can add up to 150 fields to an Option Set so the search feature can be very useful here. You also have to ability to select all items from the list with one click.

 

multiselect option set fields

 

Once you select the options for the field, they are all displayed in a single field, separated by semi-colons. Throughout the D365 interface you will see this field displayed the same way whether it be on the form or on a view.

 

Fun fact here for developers and technical users, if you use a data migration or integration program that connects to D365 through the API, the values for this field are separated by commas because the field is an array field. This means that as a system customizer or admin, you want to avoid using commas in your option set value text.

 

multiselect option set fields

 

Advanced Finds / Views

You can use MultiSelect Option Set fields in views for the query and to show as a column. When setting up your query, pay close attention to what to use for your operator. If you use Equals/Does Not Equal it will only return/exclude records with an exact match of those values.

 

Consider the Interests field that is shown below. If I select Equals "Reading;Traveling" it will return records where Reading and Traveling are the only two options selected. If you had a record that had Reading, Traveling, and Cooking selected, it would not be returned in your dataset. If I select Contain Values  "Reading;Traveling" it will return records that contain Reading OR Traveling as one of the selected options.

 

multiselect option set fields

 

If you wanted to find records that contain both Reading and Traveling, you would have to set it up like this instead:

 

multiselect option set fields

 

Other Functionality

You can trigger a workflow from a MultiSelect Option Set field but you cannot use the field in a condition or in a create or update step. Unfortunately at this time, the fields aren't available in Business Rules or Business Process Flows either. You are also limited from using them when doing a mass update.

 

Before Business Rules were available, javascript was heavily used on forms to provide the same functionality. You can access MultiSelect Option Set fields through javascript so even though you can't use them in Business Rules, you can still do what you need to do on forms using javascript. I mentioned earlier that the values are stored as an array so when you're using the field in javascript, you need to treat it as such. Here are some examples:

 

.setValue([1000000000,1000000002,1000000005])
.getValue().includes(1000000002)
.getValue().length  (this will show you how many values have been selected from the list)

 

Even though you can use Global Option Sets when creating a new MultiSelect Option Set field, you're not able to map this field through the native mappings within the entity relationships. I would not let this stop you from using Global Option Sets because I believe that this may be something that could become available at a later time.

 

There are ways around some of the limitations by using data migration/integration programs or by creating custom workflow plugins. These are definitely things that we can help you with.

 

Beringer Technology Group, a leading Microsoft Gold Certified Partner specializing in Microsoft Dynamics 365 and CRM for Distribution. We also provide expert Managed IT ServicesBackup and Disaster RecoveryCloud Based Computing and Unified Communication Solutions.

3 thoughts on “Dynamics 365 v9: MultiSelect Option Set Fields”

  1. Hi,

    I have used the multi-select option set field on my CRM customization. It was working as expected. But recent days the multi select option set field is not working. I am not able to select any record.

  2. Thanks for the post. Quite informative, especially since I haven't had a chance to play with the new v9 features yet 🙂

    With this in mind, I have one question... The Advanced Find operator "Contain Values", does it only allow one value to be selected at a time?

    1. When you use Contains Values, you can select multiple options and it will return any record that has one (or more) of the values you selected in your Advanced Find. If you use Equals, it will only return records that have the values you selected in your Advanced Find. If your MultiSelect Option Set contains the letters of the alphabet, and your Advanced Find is set up with Field Equals A;B;C, then the results will only be records where only A, B, and C are selected. If you use Contains Values instead of Equals, then it will return records where A or B or C was selected as one of the values.

Comments are closed.

Show Buttons
Hide Buttons