Friday, February 4, 2011

Managed Metadata and Hierarchical Dropdowns

Cascading/Filtered dropdowns is the most required feature for SharePoint 2007 users which is not available by OOTB (out-of-the-box-). There are many third party custom features available to provide this functionality for cascading the metadata values from one to many levels. Most of you aware of Data cogs solution for the same.  Unfortunately, Microsoft has not introduced the cascading functionality out-of-the-box in SharePoint 2010 as well. However, using managed metadata feature and metadata taxonomy /enhanced lookup columns, we can simulate the similar behavior. But this is only a workaround since user has to drill down the taxonomy tree view to select the appropriate cascaded/filtered value. In this article I am going explain the hierarchical functionality using managed metadata.

What is Managed Metadata?

Managed metadata is a hierarchical collection of centrally managed terms that you can define, and then use as attributes for items in Microsoft SharePoint Server 2010. A term is a word or a phrase that can be associated with an item and term sets are collection of related terms in SharePoint Server 2010.
SharePoint Server 2010 includes the Term Store Management Tool, which you can use to create and manage term sets.  A user requires appropriate permissions to use the term store management tool.
Example: You can create a term set for Finance department which includes metadata related to Country, State, City and Financial Institution etc.

Using the above mentioned metadata taxonomy we can easily achieve the metadata hierarchical functionality in other way around by drilling down the tree view to appropriate metadata value.
To use the above mentioned taxonomy, create a new site column or list of type Managed Metadata. I am creating a list column to simulate the hierarchical functionality in a list.

Configure Cascading functionality with SharePoint 2010 Managed Metadata service:
I have created a new list called “Finance Contacts” and added Country, State, City and Financial Institution columns to it. Using the managed metadata columns, I am able to filter lookup values.
Here are the steps to create cascaded lookups using SharePoint 2010 managed metadata taxonomy in a list.
1.  Navigate to your SharePoint site and create a new custom list (In my example “Finance List”). Click List Settings on ribbon menu.
2.   In the list settings page, under Columns section, click “Create Column”.

3.  In the create column page, Type the name and description for the column and select the column type as “Managed Metadata”. 
Note: Out-of-the-box SharePoint 2010 doesn't support direct cascading functionality with lookup lists. If you select City, it won't change the "Financial Institution" values dynamically. User has to drill down to the texanomy to get the appropriate "Financial Institution" value. At least this functionalty is very much better as compared to MOSS 2007 lookups.
4.  In the Term Set Settings section, select the Country Term set from the Finance Documents term store.

5.  Optionally you can set Default Value for the “Country” field. This functionality is not available with OOTB (out-of-the-box) SharePoint 2007 lookups. With SharePoint “Default” option available in lookups and managed metadata columns as well.

6.  Click Ok to complete the configuration.
7.  Follow the same steps 2 through 6 to create other columns State, City and Financial Intuition.
Once the all columns are configured you can see the columns view as follows.

Now you can start adding the cascaded values by drilling down to the "Country" metadata texonomy (as mentioned in the above example "Financial Institution") to the SharePoint list.

**Note: Out-of-the-box SharePoint 2010 doesn't support direct/dynamic cascading functionality. I.e. If you select "City" in the above example, it won't dynamically filter the values that applies to a particular City. User has to drill down to the "Financial Institution" manually from the texonomy (mentioned above) and select the appropriate filtered value. At least this is an improvement compared to MOSS 2007 lookups. User can easily drill down to the appropriate filtered metadta value using texonomy structure.


westerdaled said...


Interesting post. I wonder if there is a way to lookup term values in say a SPD 2010 workflow. Yes, I could use a string literal however it would be drill down a taxonomy and pick the value I want to compare?



Anonymous said...

So... really not cascaded dropdowns, but more hierarchical from the managed metadata. An interesting article, but not well targeted in the search engines due to using the term "cascading dropdown" everywhere!

nitin said...

If i am not wrong you select Country for all manage metadata coulmn.
User have to select each value so their is no dependency between columns.