I came across a very common and usual requirement one day.
A business would like to send notifications using Microsoft Dynamic CRM to the contact added on the Invoice entity on due of Invoice end date.
I guess workflows would be the best suitable option here to
send an email notifications, probably using the template and adding dynamic
content would add a personal touch and even who is
not from a developer background can construct a beautiful workflow.
But let me tell you a simple workflow may sometimes
can be a very nasty to handle and play around.
Let me outline an example and share my small tips and learning.
On Invoice entity we have following relationships:
- Company : One-to-Many Relationship between Account and Invoice.
- Primary Contact : One-to-Many Relationship between Contact and Invoice.
- Due Date : Date when Invoice is due.
We customize Primary Contact field to allow
only contact associated under Company.
Now we will create our workflow which would
simply send reminder email to a contact on Invoice due date.
I am creating a very basic workflow and not handling complex
logic for workflow getting multiple times when an invoice due date get updated, just to stay focus on showcasing a different situation.
We are done with creating our workflow and we have activate it.
Now, we would test it with some sample data.
We have a Account with two contacts in CRM.
We created an invoice with information as depicted in below
diagram.
According to our provided business scenario we need to send an
email notification to Mr. Vipin Jaiswal on Invoice Due date (31-Dec-2018).
But let assume here on 1st-Apr-2018 that is before Invoice due date is reached, Mr. Vipin Jaiswal is no longer a Primary Contact for Account Microsoft.
The changes had happened on Account entity and Vipin Jaiswal
was removed from the Contact sub grid. But on the Invoice entity CRM is still
referring to Vipin Jaiswal as his Primary contact.
Our workflows would still be sending an email to the contact
which is no longer associated with the account which invoice is related to.
The business would be interested in sending email
notification to the changed Primary contact of an account which is been
reflected at the account entity level.
Typically we should always be sending such email
notification to the current contact which is associated to the account and not
the contact that is got recorded on the Invoice creation.
Conclusion
• Account
and Primary contact are tightly coupled.
• At the
time of Invoice creation, we select Account first and then we are allowed to
select only related contact as a Primary Contact.
• A Primary
Contact can move from one organization to other, account will remains the same.
• In this
case, we should always send an email notification to the Primary Contact of the
Account and not the Primary Contact of any Invoice.
Thanks.
Please let me know if someone came across such issue and resolutions steps taken towards it.
No comments:
Post a Comment