Manual way of using Intersect Entity – Dynamics CRM

Posted by

In one of the recent projects I completed at Infinite, I was involved in the implementation and design of the intersect entity in Dynamics CRM. It is an interesting concept especially when you design it for the first time.

Problem Statement

In the project, I had a scenario of having Raw Product(s) and Supplier(s). Each Product in the manufacturing setup had multiple suppliers, and each supplier could be assigned to multiple Raw Products. Additionally, we had to initiate a Business Process of setting up fields that manage:

  1. Initial Order details
  2. Payment Processing details
  3. Closure

Solution

N:N or many to many relationships are designed and implemented in two different ways in dynamics CRM

Native 

An Native N:N relationship is managed through an hidden intersect entity. The intersect entity is created by the Dynamics CRM platform itself where we merely provide the names of the related entities. Since the intersect entity is hidden, it is not available for customization and workflow rules.

In our case, we wanted a full business process flow attached to this intersect entity, so this for obvious reason is not going to work.

Note: If I was using this system to assign parkers to events and do nothing else,

Manual using Intersect Entity  (Works out exactly how we wanted)

A Manual N:N relationship is created utilizing a combination of two 1:N relationships that share a common intersect entity.  The intersect entity acts as the related entity in both the N:1 relationships

Not every different from an entity relationship design in Relational Database, correct?

We called this entity in this case as “Product Purchase Order”- Purchase Order Record of a product“. One single record in this intersect entity represents a Raw Material Purchase Order to the seller

To create a manual intersect entity, all you have to do is to get into your customization screen of the solution, and within the relationship section of your entity (you have to do it twice), add a new relationship between the newly created intersect entity and the existing entity that you have.

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s