Tagging Multiple Records with Multiple Tags in Dynamics CRM

With the latest version of Tagging (download here) we have introduced the ability to tag multiple records with multiple tags all in a single action. This functionality is provided via a new page available in the latest release. Simply select the records you wish to tag and click on the Multi Tag button:

Screen 0 - Multi Tag

Once you click on save the tags are applied to all of the records you originally selected.

Preconfigured Solution

To enable this functionality it requires you to create a button on each grid you wish to utilize multi tagging. To help kick start this for you we have provided a solution that enables this feature on account, contact and cases. Simply navigate to the Tagging page to download a copy of this solution.

Adding a button to the command bar

If you have a custom entity you wish to enable multi tagging on, or you prefer not to use the provided quick start solution, you will want to know how to add a button to the command bar. With the help of a tool called Ribbon Workbench we can easily achieve this.

1. Create a new solution and add the entity you want to customise ensuring you also add the 3 xrmc_ web resources in this screenshot:

Screen 1 - Solution

2. Launch Ribbon Workbench and once it opens select the solution you just created.

Screen 2 - Select Solution

3. Add a command to execute the MultiTag function:

  • Select the entity you with to customise
  • Right click on Commands
  • Click Add New
  • Give the command a name. For example, custom.account.MultiTag.Command

Screen 3 - Command

4. Add a new action to the command

  • Click on the lookup icon to add a new action.
  • Then click on the add button to add a new JavaScript Function Action.
  • The function you will want to call is openMultiTag
  • Select the WebResource called $webresource:xrmc_/MultiTagRibbon.js

Screen 4 - JavaScript Action

5. Add 2 parameters to this function so that it detects what was selected in the grid:

  • Click on the lookup icon beside the parameters box
  • Click the Add button and add a Crm Parameter
  • Set the value to SelectedControlSelectedItemReferences
  • Click the Add button and add another Crm Parameter
  • Set the value to SelectedEntityTypeName

Screen 5 - JavaScript Parameters

6. Add an enable rule to the command. MultiTag is only relevant if you have selected at least 1 record.

  • Click on the lookup icon beside the Enable Rules
  • Click on + Add New
  • Give it a name. For example, custom.account.MultiTag.EnableRule

Screen 6 - Enable Rule

7. Create a step for the rule

  • Click on Add Step and add Selection Count Rule
  • Set AppliesTo to Selected Entity
  • Set Minimum to 1

Screen 7 - Enable Rule Step

8. Now we can move on to the button itself.

  • Click on OK to save everything until you get back to the main screen.
  • To add a button simply drag a button from the toolbox on the left onto the appropriate command bar.

Screen 8 - Button drag

9. Give the button a name, for example, custom.account.MultiTagButton, and set the button properties as per the following settings:

Screen 9 - Button properties

Publish your changes by publishing the solution you have just edited. Note: if your changes don’t appear right away publish the solution again and refresh your browser window.

Tagging V2 – support for parent tags and synonyms

We are pleased to announce the general availability of our Tagging solution version 2.

In this release we have added two major functions – Parent Tags and Synonyms - more on each of these below.

Parent Tags

A Tag can now be designated as a ‘Parent’ which allows categorization of Tags. You are able to specify a parent tag name or names for a given Tag entry box on a record form and then only Tags in with this parent will be shown in the search results.  Tags created when a parent is specified will be created and automatically assigned to this parent. See example form below with 3 tag entry boxes each with a parent tag specified:

Parent Tags


To restrict Tag entry to a specific parent, specify the parent in the Custom Parameters section of the web resource form – this works for Tag Clouds too where you can specify to only show a Tag Cloud for the specified parent tag:

Restrict to parent


The allowable parameters for Parents are:

  1. parent – default is for Tag search results to show all Tags. Setting the parent parameter allows you to specify one or more Tags that have been designated as “parents” (i.e. they can have child tags associated to them). Multiple values can be specified and are separated by a comma.  When a parent is specified new tags that are created have this parent defined.  If there is more than one parent specified then new tags are created with a parent of the first parent specified in the list.
  2. excludeparent – default is for Tag search results to show all Tags. This option allows you exclude specific Tags which have the defined parent or parents. Multiple values can be specified and are specified by a comma. New Tags are created without a parent defined.
  3. allowparentselection – default is ‘false’. Set to ‘true’ to enable Tags which have been defined as parents for selection in the search results.

You can specify a deep hierarchical tree for your tags, however when specifying a parent in the custom parameters the Tag search results will use all Tags that are below the specified parent.


A Tag can now have a list of comma separated synonyms associated with the Tag. When a user is typing in the Tag form area, if any of the synonyms match, the Tag will be available for selection in the Tag search results.

Synonyms on tag record

Synonyms in search results

Download Tagging version 2 now!

The updated installation and user guide is available here.