Thrusted Tags – a free solution to solve segmentation needs in Dynamics 365 and Dataverse

When building business solutions based on Dynamics or Dataverse, we often discuss customers’ needs related to grouping or segmentation of data: “How can we mark VIP customers?”, “How do we tag our must win opportunities?”, “How can I group tracked e-mails with different reporting categories?”. Dynamics 365 / Dataverse provides different options to cover such segmentation needs:

1) Custom fields / table relationships

With the platform, creating new fields or tables is easy, but this is not always the best strategy to handle all kind of segmentation needs. The “worst” variant of this method is to create text fields, where it is up to each user to put in some data; this is hard to use and impossible to maintain. A better way is to use choice/choices fields. This provides easier input for users, and can be used consistently in reporting / filters. This is however not very flexible since changes in the option values requires technical configuration. The most common method is therefore to add another table, either through a lookup field (1:N), or support multiple values via N:N relationships. This will work well if the business need for the tagging dimension is consistent over time. It also works well if the need is only for one specific table, for example only for Accounts. For cross table tagging, this will require either more tables or an extra unifying table.

2) Follow / unfollow functionality

One can enable the follow/unfollow functionality for desired tables (activity feeds configuration). This makes it very easy for users to follow and unfollow records. It is also possible to create views leveraging this information, where records followed by certain users are shown. This functionality is however not really suitable for our described business needs, since there are no granulation / segmentation possibilities with this approach. However, the follow-unfollow mechanism is very easy to use, and for personal, non-granulated usage scenarios, it is quite practical.

3) Connections

The connections mechanism makes it possible to connect records of same or different tables to each other. A Connection record contains links between the two records; one from the first record to the second via one connection type, and a second link with a different connection type from the second record to the first record. For example, Adam is a doctor. Eirik is a patient of Adam. We make a connection between the 2 contacts, where Adam is connected to Eirik as the role Doctor and Eirik is connected to Adam as the role Patient. Connections are very flexible and powerful, but the problem is the perceived complexity to use it in practice: Users, even trained ones, sees Connections as too cumbersome to use and gets confused with the 2-way roles. Also, there is no usage scoping on the connections – only for what tables they can be used for. Our experience is therefore that connections are often not used, at least not by the majority of users.

There must be a better way!

As we can see, these methods have their usage scenarios, but we find that none are ideal for the needs we see in real life scenarios:

  • We want to be able to quickly “tag” (and “untag”) from a record, directly to the desired segment(s).
  • We want to be able to implement a segmentation strategy, so that individual, organization specific and cross company needs can be met; For example, Marketing and Sales know what segments are relevant for them, just like region North vs. West. Individual users might also want to have their personal tags on records, where this is allowed.
  • We want to be able to put metadata on the segment definitions, so that we can use these dimensions in reports and filters.
  • We want to be able to have segment definitions cross different tables, so that we for example can tag Products, Opportunities and Accounts with the segment “ESG”.

Thrusted Tags to the rescue – and it’s free!

To solve this need, Skyvekraft has created Thrusted Tags. It leverages the built-in Connections technology in Dynamics 365, adding a powerful and user-friendly user interface with the choice of two different controls (card and list versions) for convenient tagging and untagging. Icons and pictures can be used for easy visual identification.

Thrusted Tags has built-in lifecycle management capabilities such as Ownership, Scope and Groups. These capabilities can be extended or modified, since this is just regular tables and fields in Dataverse/Dynamics 365.

Thrusted Tags supports configurable duplication handling, because for some tags, duplications are allowed and desired, but for other usages it is not wanted. For example, with the ESG tag, if another user wants to add another ESG tag for the same Account, we want to ignore this – since it is already tagged. However, if we have a tag called “Christmas Card list”, the same contact might be on the list of two different users. This “duplicate tag” is actually valuable information by itself in this scenario.

Thrusted Tags uses standard and supported mechanisms. If one for some reason one later wants to remove the components, the tagging information is still there as out-of-the-box Connections.

Thrusted Tags is provided free with no license costs, and the source code with ready to install managed and unmanaged solutions are available on GitHub. On the GitHub repo we also provide links to our product page with further information and help. If you use Thrusted Tags and like it, we expect nothing in return, but a testimonial is always appreciated!

Skyvekraft provides consulting services, IT-development, help and advice, not only related to Thrusted Tags, but to most areas related to Dataverse, Dynamics 365, Azure and the Power Platform.

Want to learn more?

The Thrusted Tags product page contains more information, screenshots, a video walk-through and link to the GitHub repo that contains downloadable, ready to install solutions as well as the source code and all related assets.

Want to get in touch? E-mail us at skyvekraftinfo@skyvekraft.com or fill out our contact form. We would love to hear from you!

Share Post

Share on linkedin
LinkedIn
Share on facebook
Facebook
Share on twitter
Twitter

Latest News

Kontaktskjema