It has been long; I posted something on this blog. Nevertheless, I promise to write more often going forward.
Today, I would like to write about one of the oldest topics and a fundamental feature of Dynamics CRM - “Owner” Field. Almost all the entities with in Microsoft Dynamics CRM have an owner field mentioned.
I said almost all because the “organization” type entities are global and not specific to a particular individual user, so they do not have Owner field mentioned. The Organization entities are more like master data whereas “user” entities hold transaction data. But, not necessarily always. I will explain the difference in my next blog.
Coming back to the “Owner” field on user entities, it exists automatically when any new entity is created. Most of the out of box entities like Account, Contact, Email, Phone call, Task have “owner” field. This is a mandatory field. The key functionality of this field is it granting security permissions to a user for a particular record based on who the owner is. For example, it is possible to allow a user to have access or additional permissions on records that they own. It also grants access to records that are owned by other users in their business unit and sub business units. Therefore, it is not similar to “Assign to” functionality you might have come across in other CRM applications.
To summarize the Owner field address three major behavior of the record/entity/form in Dynamics CRM:
1. Access to the record (based on user value mentioned in the owner field)
2. Transfer of ownership of the record by changing the owner value a.k.a Assign
3. Access to the related records (using cascading functionality of the entity)
Assign
1. Manually – Using the ‘Assign’ icon in the ribbon bar of any entity or changing the user value in the owner field.
2. Automatically using workflow – It is possible to set up an automatic or manual workflow rule that can reassign a record or list of records based on certain criteria. For example, an account can be assigned to a user based on the territory match.
When re-assigning a record it is possible to automatically have the system share the record with the previous owner.
Ownership Cascading - related entities
When a record is assigned to a new user certain related records can automatically be assigned. This automatic assignment occurs based on the relationship type between the entity type of the record being assigned and the related entities.
There are three main relationship types that we are concerned with:
1. Parental – In a parental relationship between two entities, any action taken on a record of the parent entity is also taken on any child entity. For example, If the relationship between an account and its associated contacts was parental, when the account was reassigned from User A to User B, all of the associated contacts, irrelevant of who their owner is, would also be reassigned to User B.
2. Configurable Cascading - Any action taken on a parent entity record can also be applied to any child entity. You can define the behavior for each type of action. For example, you can set it up so that if you share a record in the parent entity, any related records for the child entity are automatically shared. But if you delete a parent entity record, any related child entity records are not automatically deleted.
3. Referential - In a referential relationship between two entities, you can navigate to any related records, but actions taken on one will not affect the other. If the relationship between an account its associated contacts was referential, when the account was reassigned from User A to User B, the associated contacts would not be affected and would retain their current owner.
I hope this is helpful.


