This is a really common question that comes from customers switching from other service desk applications to System Center – Service Manager (SCSM). They are used to a user experience for selecting a classification from a series of drop down controls on an incident form. For example, there might be three drop down controls side by side with each other. When the user chooses a value from the first drop down (example: “Business Software”) the values are updated in the second drop down to reflect the sub-classifications under “Business Software”. The second drop down now might show “Office”, “SAP”, and “Dynamics”. If the user chooses “Office” in the second drop down, then the third drop down might show “Excel”, “Outlook”, “Word”, “PowerPoint”.
There are a number of problems with this type of user experience:
1) It limits the number of levels you can have to however many controls are on the form.
2) It increases the amount of data that has to be sent to/from the database and stored in the database because you have to store three values instead of one.
3) It takes up a lot of room on the form.
4) It requires a lot of clicking/mouse movement or keyboard typing to select the value you want.
This approach of using multiple “cascading” drop downs is an ancient user experience born in the early days of the web. With today’s modern programming languages and tools we can come up with better user experiences.
In Service Manager, we feel we have come up with something better that addresses all of those problems above and provides a better user experience. Our drop down controls that are bound to list properties can have hierarchical values! We have a custom control that allows you to choose a value from a hierarchical tree.
Using the example above, we could display these values in the SCSM incident form like this:
When a value is selected we can still see the hierarchy with each value separated by a slash:
This design takes up less room, requires less data storage/transfer, is easier/faster to use, and can have as many levels as you want. Have a look at this blog post/video on how to use the keyboard to really efficiently use this control:
You can still do queries both in the console and in reports like ‘show me all incidents where the classification is exactly Business Software” or “show me all incidents where the classification is anything under "Business Software”.
You can edit the lists in the SCSM console by going to the Library\Lists view. If you have a lot of list options that you want to create it may be faster to do it in PowerShell using SMLets or by importing them by using this Excel tool called EnumCreator.
Some related questions that come up:
- Can you limit the value selection to be only leaf nodes in the tree? Example: limit the selection above to only be Excel, Outlook, Word, PowerPoint and not Business Software or Office. Answer: no, sorry not right now.
- Can you change the options available in a different control based on the selection in one control? Example: If I change the classification can you hide/show some other controls? Example: If I change the classification can you put some text in the description field? Answer: The only way to do something like this is to create a custom form with custom code that handles the control events.