Tip #391: Mandatory fields in dialogs

Dynamics CRM TipperMini truck stop.

Straight after visiting the CRM facebook group.

Ankit Shah: CRM 2013 SP1 – is there a way that we can set the dialogue fields as required?

Joel Lindström: Not exactly, but you can trick it with conditional logic. Have a check condition that checks if the field is populated, and if it is not have a page that tells them they must populate it or loop to the page again via a child dialog.

Tip #390: SLAs for dummies, Part 2: SLA

¡Hola, amigos! Our good friend Pablo “CRMGamified” Peralta continues about all SLA things he started in la primera parte.

¿How is the SLA applied?

We will see an “SLA Details” section where we can set SLA Items, each of their conditions, associated KPIs, and Alert or Failure actions to take whether set service levels are met or not. For instance:
SLA Definition
SLA Conditions
This item is set to apply a 10-day tolerance SLA with a warning sent 3 days after certain conditions are met. An email will be sent when a deadline (failure or warning).

Take the following into account:

  • The first SLA Item that fulfills the specified conditions for a KPI in “Applicable when” will be the only one set off for that KPI from all the SLA Items within the “SLA Details” section. No other SLA Item will be set triggered, even if it could also potentially fulfill all conditions.
  • Therefore: pay close attention to the order in which you create / place SLA Items, making sure you clearly specify the conditions to trigger the correct Item. For instance, verify client type (VIP client, Premium client, standard client, etc.) as the first condition:
    SLA Details
  • Avoid including fields that significantly vary in the conditions, since this would force the system to constantly re-evaluate them, potentially impacting performance.
  • Situations where one (or other) SLA Item applies to the same case more than once can emerge, unless we control them. This could happen, for instance, when changing a case’s priority, triggering the system to re-evaluate the “Applicable when” conditions. If conditions are met, the specified actions will be executed again. In order to prevent these kinds of situations, we need to flag some fields to avoid multiple processing.
  • You can’t change the length of the field ‘Name’. You’ll wonder why I highlight this :). Well, we are going to need to clearly differentiate each SLA Item from the next, especially if this turns out to be our default SLA (see next section) – and SLA Items lists can grow to be extremely long. It might be useful to establish a name/code standard.
  • An SLA Item’s KPI can’t be edited after the record is created. Therefore, pay close attention to the selected KPI. You’ll find two by default: “Resolve by KPI” and “First Response By KPI”. The former measures case resolution while the latter measures first responses to a case. In upcoming posts I’ll share how to create new personalized KPIs to track as well.
  • Even though the list of available actions for each situation (Success Actions, Warning Actions and Failure Actions) is very similar to the one on Workflows, NOT ALL actions are available: you can only Send Email, Create Record, Update Record, Assign Record and Change Status.
    SLA Workflow
  • Actions will be triggered as asynchronous workflows, so they might not happen at the right time. If the Async Service is down, they will not be set off automatically.
  • At the moment, there is no supported way to set SLAs by using SDK. Hopefully this situation can be improved very soon.

Tip #389: Disable email profiles when copying organizations

Earlier this week we noticed that users were receiving some strange emails from our CRM online. These emails were from a workflow notification that we have sent out when a case is created, but the link included in the email was not a valid record in our CRM environment.

In tracing where the problem started, I determined that it corresponded with when we had done our most recent refresh of our sandbox organization. We did the full copy option in the office 365 administrator console. What I forgot was that when you restore or copy an organization, the email server profiles that you have in your production environment will be active in the copied organization.

What this means is that after you restore the organization, the server synchronization will kick in on the copied organization. This can lead to many different issues.

So the lesson learned is be sure you disable your email server profiles in CRM before copying and organization.

Tip #388: Shape the future of Dynamics CRM

Are you a Microsoft Dynamics CRM, Microsoft Dynamics Marketing, Microsoft Social Engagement, or Parature customer? Your mission is to contribute to the future of these products.

To accomplish the challenge, please stop reading this blog for 20 minutes, and answer the call from CRM team.

If you are both a customer and a partner, say you are a customer otherwise you will receive an immediate “thanks but no, thanks” page.

You have until May 18, 2015 to complete the mission. Good luck.

Tip #387: SLAs for dummies, Part 1: Fields

¡Como estas amigos! Our good friend Pablo “CRMGamified” Peralta takes the podium again with another pepita de oro!

What does each field in my SLA configuration mean?

(To create new SLA: Configuration > Service > Management > Service Level Agreements: +New)
Nuevo SLA

  • Name: Basically, a descriptive name for our SLA, i.e. “Service Level for VIP Clients”. You can edit this field later on.
  • Applicable from: This field sets the starting point for calculations. Typically, you would want to track a case since its creation, but you can choose dates and/or hours. It is important you know this information at this point since this field can’t be modified after creating your SLA.
  • Business Hours: Select your business work days -and hours- needed to track SLA fulfillment. Keep the following in mind:
    1. If left blank, the system will consider your business hours to be 24×7
    2. So if a VIP client’s case needs to be resolved in 2 days tops, and we receive the case on a Friday afternoon, we would need to resolve the case by Sunday afternoon. Depending on the type of business, this is generally NOT the desired outcome. The system doesn’t consider holidays either.
    3. Therefore, it’s important to set the correct business schedule to properly reflect our organization’s work days and hours.
    4. We still need to be careful when selecting work hours (and not just days) because we can get unexpected results. In order to track the SLA’s fulfillment, the system calculates 24 hours over total work hours per day. Therefore, if my business hours are typically set at 8 per day and my SLA service needs to be resolved in 2 days (as in the last example), my Dynamic CRM will set my deadline at 6 days. Why? Because the system uses the following formula: (24 hours / x daily work hours * n SLA tolerance days) + Date Created (assuming you selected “Created On” as your starting point). So, (24 / 8 * 2) + Date Created = 6 days to close a case after opening it.
    5. You can find a very good explanation for this here.
    6. Conclusion: if measuring minutes and seconds is not mandatory, I would recommend basing your schedule on work days, making each day 24 hours long. I explain how to set a business schedule in the next part.
    7. Good news: you don’t necessarily need to set a business schedule when creating the SLA. You can edit Business Hours later.
  • SLA Type: We need to opt for an “Enhanced” SLA unless we have no other choice, or need it to be compatible with the “Standard” SLAs introduced in previous versions. Not only do enhanced SLAs allow pausing, success actions and individual KPI tracking, Standard SLAs are to be discontinued and will become obsolete.
  • Allow Pause and Resume: This lets us select if we will allow our SLA to be paused or not. This feature is useful if our case enters a waiting period that depends on the client, or for when a client isn’t reachable. We can set different scenarios that will automatically pause our SLA in Configuration > Administration > System Settings.

Tip #386: The fastest way to provision new organization

For people who complain that they provision CRM organizations daily, hourly, weekly and cannot relax for 5 minutes while new organization is being created, here the quickest way to provision new CRM on-premises organizations:

One-off preparations

  1. Go through the pain one last time and watch the paint dry while creating a new organization (name it, say, template).
  2. Delete the organization.
  3. In SQL Server Manager, optionally shrink the database template_mscrm, then detach it.
  4. Find .ldf file, delete it. Find .mdf file, set it aside

Create new organization

  1. Copy the template_mscrm.mdf into your SQL Server data directory, rename it.
  2. Attach the database. Remove missing .ldf file, system will recreate it for you.
  3. Adjust mdf and log file sizes as per David’s advice above.
  4. In CRM Deployment Manager start the import and use that database.
  5. 5 seconds later you’ll have your new organization.

Don’t forget to repeat preparations after applying update rollup to the deployment.

If you do, indeed, provision organizations frequently, consider automating the process using Adxstudio ALM Toolkit.

Tip #385: Why aren’t my workflows running?

I recently received a frantic email from a friend testing an upgrade from CRM 4 to 2015. He was testing workflows, and they did not appear to be working, as the completed workflows did not appear in the workflow history for the record.

It turns out that they were working, but when we had upgraded the environment, we changed some of the workflows to be real time. When you do this, the workflow no longer appears in the system jobs or workflow history. The workflows were actually running.

To test the success of the workflow, check for the desired outcome. Also, a real time workflow that runs on create of a record will typically throw an error when saving the record.

Tip #384: Billable emails

Would you like to make your emails billable? Of course, you would. Add the field(s) dealing with the billing information and you’re all set, right? Not so fast. The problem is that tracked emails “arrive” into CRM as activities already closed so editing won’t be possible.

Enter the realm of Adam “I’ll leave nuggets everywhere I go” Vero. He casually dropped the solution for this problem in one of his comments. We thought it’s so useful that it deserves a tip entry of its own.

What I (Adam Vero, that is – t.j.) have also observed and taken advantage of a few times is that if you have a field on an activity that is configured to be Business Required, but this field is not filled in, then even after the record is closed, you can enter this data – including users just using the regular form. But this is a one-time thing – once it is filled in, it cannot be changed again.

Scenarios

Custom field on an activity record that is created by tracking in from Outlook, such as a category picklist used for billable/non-billable time. Especially useful on emails, which are closed by definition once they are sent or received, so the user does not get an opportunity to fill in the additional fields (you can’t “view in CRM” until the email is copied to CRM, by which time it is too late).

New custom field that did not exist on previously closed activity records can now be filled in by revisiting those records (eg to use Bulk Edit).

Tipp Jarr’s $0.02

As it turns out, this technique works well only for emails but not any other activities. I suppose that’s because emails are special in the sense that they can be tracked in CRM automatically, leaving a user without any opportunity to have a say.

Tip #383: Enable Preview Features and Use CRM in Outlook on a Mac

If you have CRM Online 2015 Update 1, there are several preview features that you can enable. For instructions on how to enable these features, see this link.

Probably the most exciting preview feature is the new CRM App for Outlook. This is the Outlook client reimagined as an Office app. One of the more exciting ramifications of this is that it will now work on a Mac. I would like to apologize to all of the people that I told that the Outlook client would never work on a Mac without virtualizing Windows. It truly is a new day.

Important things you should know:

  • This is a preview feature–that means that it should be treated like a beta. You should test it, and you don’t have to push it out to all of your users.
  • It’s not out yet (but will be very shortly).
  • It requires Outlook 2013, CRM Online, and server sync. Yet another reason to go to server sync.

 

 

Tip #382: Training? On New Features? Free? Yes, Please!

All A lot of good things in this life are free. Including, as it turns out, some awesome CRM training videos.

There is, I kid you not, the whole TRAINING TAB in the Dynamics CRM section on YouTube, and after a release becomes publicly available, Dynamics CRM Support Team publishes awesome training videos about the new features for all the world to share. The latest and greatest Spring 2015 content has been updated here, covering different features, changes from previous releases, and best practices.

Go to https://www.youtube.com/user/msdyncomm/DynamicsCRM, click on Training tab on the right and be trained!