Microsoft Dynamics CRM 4.0 Tidbits - Entity Relationships

Long Train Running...

It's October 1st, which means the NDA gloves are off for Microsoft Dynamics CRM 4.0 (formerly known as Titan). There will be postings-galore from all the usual suspects over the coming weeks, but being in the UK, I get an 8 hour headstard on my Seattle colleagues, so I'm formerly kicking off proceedings with the very first blog posting - eat your heart out Menno :-).

So what's new with entity relationships. Well, In CRM 3.0 we had One-to-Many (1:n) relationships between entities, with the following limitations:

CRM 3.0 Entity Relationships

Description

One-to-Many System-Custom

A custom entity is linked to a system entity. The custom entity has a lookup field to associate it with a system entity.

One-to-Many Custom-Activity/Note

This common relationship can be created automatically when you select to have Notes and Activities associated with a custom entity.

One-to-Many Custom-Custom

This represents when you include a custom entity as the child of another custom entity. The child entity has a lookup field to associate it with the parent custom entity.

One-to-Many Custom-System

This represents when a custom entity is linked to a system entity. This cannot be a parental relationship type; it can only be a referential relationship type. A lookup field is added to the system entity, but it is not a required field.

Custom-Custom

A referential relationship can be added between two custom entities. This means that you can create two relationships between two custom entities. This creates lookup attributes on both entities so that each entity has a reference to another.

In addition, only certain system entities could participate in a One-to-Many relationship. Now with CRM 4.0, the range of entity relationship options has been increased and you can now create the following:

Additional CRM 4.0 Entity Relationships

Description

One-to-Many System-System

A system entity is linked to another system entity. The child system entity has a lookup field to associate it with a parent system entity.

Self-Referential

An entity linked to itself. For example a Case can be linked to a master Case.

Multiple Relationships Between Entities

For example the Account entity might have two relationships with a Contact entity - a primary and secondary Contact

Many-to-Many System-System, System-Custom & Custom-Custom

The one that everyone has been waiting for. Not only will this remove the need to build a "joining" entity, but you have control over how the relationships show up in the UI

This posting is provided "AS IS" with no warranties, and confers no rights.

Laughing Boy