Goals are one of the exciting features in Microsoft Dynamics CRM 2011. They can be created for a wide variety of purposes: from tracking progress on how many phone calls salespeople are completing over the month to measuring current customer satisfaction scores against a yearly goal (made possible by our very own PowerSurvey!).
While goals can be created for any time frame (daily, weekly, monthly, quarterly, yearly, etc), we have found that it can be cumbersome to create goals with a short time frame since you need to create a new goal once the current time frame expires. Imagine if you had daily goals in Dynamics CRM for 50 salespeople. You would be creating 50 goal records every day! Surely there must be a better way…
We previously blogged about how to recreate goal records via a dialog, but wouldn’t it be great if we could create these recurring goals and report on them?
Let’s go to the drawing board!
First, we need to add a field onto the goal form. This field will be a picklist where we will decide how often this goal is recreated (daily, weekly, monthly, etc).
Now, we need to create the workflow that will make this all happen.
First, we want to create the workflow as an on-demand process. We also want to mark this AS A CHILD PROCESS
Then, create the overall structure as seen below.
We first want to create some CHECK CONDITIONS to see what type of goal recurrence it is (daily, weekly, etc)
Next, we have a wait condition. We will have the workflow WAIT for however long the recurrence is (1 day, 7 days, 1 month, etc)
After the wait we will CREATE A GOAL. The key here is that the START/END date are set in relation to the PROCESS EXECUTION TIME. Here is what a daily goal would look like:
Finally, we will have the workflow start a child workflow. We want to configure it to start itself (FYI, my workflow is called ‘Test2’)
We can now run this workflow against any goal we want to recur!
BONUS TIP: If you want to report on daily goals created with this workflow, create a view for GOALS CREATED ON TODAY (or LAST 7 DAYS, LAST MONTH, ETC depending on your recurrence). You can then use this view on a dashboard to only show today’s goals!