Removing the secondary series in a chart

So you want to create a chart that has both the estimated and actual revenue of opportunities, simple right, yes in principle.

When you configure this simple chart, by default you are left with 2 series right and left showing different scales for the $ amounts, based on the data like below:

Secondary Series post 1

What I really want is one series, one scale and easy comparison, so how do I remove the secondary column?

It’s simple of course, just need follow these simple steps:

  1. From the chart options menu, select export chart
  2. Open the chart in a text editor
  3. Search for the following string – YAxisType=”Secondary“
  4. Now delete this string but don’t remove the />
  5. Save the file
  6. Now back in Dynamics, select import chart and select the new file
  7. Follow the wizard for importing and you are done
  8. Your chart should now look like this.

Secondary Series post 2

Simple, you can now apply this to any chart with a secondary axis. Happy Charting.

Changing the Entity Tile Colour

Did you ever wish you could change the colour of one of the entity tiles like account from the Case from purple to say yellow?

Well in Dynamics CRM Online Spring 2015 Update 1 you now can and its really easy if you know your hex colours 🙂

So my scenario I want to change the Case Purple tile to Yellow, this is what it looks like out of the box:

Changingthe entity colour in the site map 0

To change it to yellow, follow these simple steps:

  1. Open up Settings->Customise the system
  2. Open up the entity you want to change in this scenario Case
  3. Now you will need to use a hex converter like to identify the colour you want
  4. When you have the hex code simply update the field in the entity form labelled Colour, as below
  5. Changingthe entity colour in the site map 2
  6. Now save and publish the entity
  7. Refresh you CRM browser and now navigate to Case, you will see it has changed to the colour specified
  8. Changingthe entity colour in the site map 3

Happy colour changing!

Immersive Excel, the future looks very exciting

So what is the immersive Excel experience you say? Well imagine you are working with a list of records and you want to do a quick sum or ad hoc calculation on the values, you can now open in Excel Online inside of Dynamics CRM and perform the action that you want to do. You can even update the values and reimport in if you have the right security roles.

So what do you need?

  • Dynamics CRM Online Spring Release Update 1
  • An Office 365 plan that includes Office products

What does it look like?

So basically select any view in CRM and then select export to Excel and select Excel Online.


The view will then open in Excel online as below:


Now you have it in Excel you can manipulate the data. In the example below I have summed up the estimated value and have added a Pie Chart for effect!


Finally If update the Probability of my opportunities, I can simply select Save Changes to CRM button above the Excel logo and import the changes into CRM, easy.

Update Behaviour, the basics

One thing to note if someone else has subsequently updated one of the opportunities that I have updated in Excel, that specific row will fail on the import, the online update will always win.

What’s next?

At Convergence 2015 in the roadmap session, in the Fall release we may see some pre-built templates that can be opened in the context of the view selected and have the ability to create and then easily share. Slide from the CRM Roadmap session:

fall excel release

Export to Excel redesign, what you need to know

Have you ever exported to excel to find that some of the column formats that were exported did not match the type of record in CRM?

Well in the Spring Release Update 1 this has been fixed. So what’s new?

The Redesign

  • The export dialog has gone, you choose via the dropdown how you want to export the data i.e. to excel online, static or dynamic
  • What you see in the view is what is exported
  • No more warning messages, file format is set to XLSX
  • The column names and view column widths are used to pre format the excel sheet
  • The tab name is the same as the view name
  • All pages are exported
  • The data is always importable no more separate process, the same file is used
  • Export and import limit updated to 100k and 32mb

The New Mapping

The table below details the new CRM data format mapping to Excel.


** Excel does not native data type to show date + time in one cell, as a result, only date is visualized in Excel for a date-and-time data.

CRM 2015 Update 1 Highlights – DiffinDays Calculated Field Update

I want an easy way to calculate the average time an opportunity is open for by sales person without writing any code.

Pre CRM 2015 Update 1, I would have to write some code to calculate the difference in days between created on and actual close date, then use a chart to display average for the sales person.

With the latest CRM Online release update 1 a new calculated field formula has been added “DiffinDays” this allows me to calculate the difference between two dates or difference between a date and Now.

So to solve my problem:

  1. Open up the solution file
  2. Navigate to the Opportunity entity -> Fields
  3. First of all I have to create a new field to store the actual close date, with the date behaviour set to User Local to match that of the created on date. The out of the box Actual close date is set to Date only which makes it incompatible with created on.
  4. Create a new field named “Number of days to close” as a whole number or decimal.
  5. Click on the field type and select Calculated
  6. In the designer, create the following rule, you can use the intelisense to type ahead
  7. calculated rule
  8. Save and the new field to a view and to the form optionally
  9. Now you will need to create a workflow to populate your new date field, simple check for actual close date to be populated and then update the new actual close date.
  10. Save and Publish
  11. Now navigate to the opportunity view for closed opportunities
  12. Create a new chart as follows:
  13. average days chart
  14. You now have the average open days for won and lost opportunities by sales person

As a note the image below depicts the entire set of Diff functions:


Insider’s Guide to Managing Service Level Agreements with Dynamics CRM 2015


The Microsoft MVP Award Program Blog

Insider’s Guide to Managing Service Level Agreements with Dynamics CRM 2015

How do you as a business manage Service Level Agreements (SLAs)? How can you utilise Dynamics CRM to manage multiple SLAs against a Case and monitor the performance against them? This post will discuss the ins and outs of setting up and working with SLAs from a business perspective.

Dynamics CRM 2015 provides the ability to manage Sales activity, Marketing activity and Service Activity. This post will focus on Service activity with a customer and specifically related to creating and managing SLAs.

An SLA or Service Level Agreement determines the level of service you will provide your customers. A level of service can be dependent on a number of factors including but not limited to:

–          Whether the Customer is entitled to service via an entitlement. An entitlement could be a something you sell or is included in a product offering i.e. you get 9-5 service with a response time of 8 hours

–          Based on an attribute of the customer i.e. high value customers get x service level and low value customers get y service level

–          Based on an attribute on the Case i.e. if the Priority or Severity is high then provide x level of service

–          Different channels of communications could drive a different level of service i.e. a post on Twitter could require a response in under 30 mins, whereby a response via email requires a response in 4 hours

–          Based on any other attribute related to the Case or associated records i.e. Customer details, product details etc.

As an organisation, you want to measure your levels of service to ensure that you are performing well against them and ideally meeting them. If you are not meeting them you want to be able to monitor why you are not i.e. is a particular team or user, or customer type or product type that is the issue.

Dynamics CRM 2015 enables you to both create multiple SLAs aligned to any attribute, channel or entitlement and monitor through views and charts on how you are performing against them.

I will now walk through the components that make up SLAs, how you create them, how they are executed and how you report on them.

Types of SLAs

Dynamics CRM 2015, provides for 2 SLA types as below:

–          Standard – standard SLAs were introduced as part of the CRM 2013 – Q2 2014 Spring release (Leo). They required a number of manual steps to get working, for example including in the warning actions updating the SLA status field appropriately, so that the timer field can behave as expected.

–          Enhanced – enhanced SLAs were introduced with the CRM 2015 release and removed some of the manual processes of the standard and introduced a number of new enhanced features.

Note: It is recommended to only use one type in an implementation and not mix and match, for consistency and ongoing management. If you have not used SLAs to date it would be recommended to use the enhanced SLAs over the Standard SLAs. If you have used Standard and wish to move to enhanced, you have to recreate the SLAs. Please note you should consider how your data and views are set up currently to report on the data captured.

The feature matrix below details the differences between the two:


Standard SLA Enhanced SLA

First Response By and Resolve By dates and statuses maintained on Case Entity



Use of new SLA KPI related records



Use of Quick view cards to display timers



Timer display added to Case Form



Ability to pause and resume SLA



Start date, warning, failure and succeeded date stored

No (partial only Failure date stored)


Last on hold time and hold minutes supported



Business Hours support



Entitlement Support



Ability to create custom SLA KPI measures



Ability to add success actions



Ability to add warning actions



Ability to add failure actions



Support for default SLA



Update the SLA status via the SLA Item rules



SLA statuses updated automatically



Components that make up an SLA

The following components make up an SLA:

–          Customer Service Calendar – defines the business hours to be used in the SLA calculation. A business can have multiple calendars to support different SLAs i.e. 24×7, 9-5 business days, Customer specific calendars

–          Entitlements – defines the agreed number of Cases or Time that has been contracted with the customer for support. Entitlements can only be associated to one SLA. An SLA can be associated to many Entitlements.

–          Service Configuration – define which statuses place an SLA on hold (shortcut to System Settings). Note that the pause and resume statuses apply to all SLAs and thus are not SLA specific.

–          Holiday Schedule – defines the dates that are considered holidays in a particular region. If you work in multiple regions then you may have multiple holiday schedules. Holiday schedules can be applied to the Customer Service Calendar to be observed.

–          Service Agreements – define the rules that apply to the agreement, when a SLA is triggered, when and what should occur if the SLA is successful, non-compliant or nearing non compliancy.

Creating an Enhanced SLA

To create an enhanced SLA you need to have first created your customer calendar schedules if applicable so that they can be selected as part of the SLA definition.

You should consider the following before creating SLAs:

–          If a customer does not have an entitlement what default SLAs should be applied? Only one default SLA can exist in the system, so all general SLA business rules will need to be included in the default SLA.

–          Should the SLA dates be calculated off the created or modified date?

–          Do we allow SLAs to be paused and if so what statuses are permitted?

–          How will my SLAs be structured? I.e. by product, by customer segment, by customer value, by type of case, by entitlement type, by priority / severity. It is crucial to have consistency of rules so that you and your customers understand how they applied.

–          What should happen if an SLA is nearing the warning time or failure time, what processes should be initiated on failure for example and does it depend on the type of SLA?

Once you have determined your business rules you are ready to configure them in Dynamics CRM.

To create an SLA record, follow the steps below:

  1. Navigate to System Settings -> Service Management
  2. Select Service Level Agreements
  3. Create New
  4. Complete the form, entering your specific information:

5. Save the new SLA to enable the SLA Details area

6. Select the “+” to add a new SLA detail record, complete with your data as described below:

7. Note you can over type the Failure and Warn after with your own defined values as long as you keep the same syntax i.e. x hours or y days
8. To enable the Success, Warning and Failure actions, you need to first save the record.

9. Repeat step 6 for each business rule. An SLA can include multiple business rules. If this will be the default SLA you will need to include all the default SLAs rules in this one SLA as only one SLA can be defined as default i.e. not associated to an Entitlement.
10. In my example I have defined multiple First response by and Resolve by KPIs by Customer category.

11. Once you have created the rules, activate the SLA, by clicking Activate

12. If it is to be the default SLA i.e. the SLA to be used when no entitlement is selected, click “Set as Default”

Note: Only one SLA can be defined as the Default.

SLAs in Action

Now that the SLA has been activated, any new Cases that meet the criteria will have the SLA applied.

The screenshot below is of a Case related to a premium customer. You can see two SLA KPIs created for First and Respond by SLAs, the applicable countdown timers and the details if the case has been on hold. The timers will automatically change colour from black to orange to red and to Green based on the warning, failure and success criteria.

Note: The Last hold date and minutes are not displayed by default on the Case form. You will need to add these to the case form to view them.

Each SLA that is triggered against a case is reflected as a workflow on the case. The clauses that you defined based on trigger for success, warning and failure are converted in Wait and If conditions. So if we take a look at the workflows associated to this case we will see two workflows and if we open one up you will see the conditions as defined in setting up the SLA depicted in workflow logic. It’s a great place to look if for some reason your expected SLA KPI is not working as expected.

Advanced Topic – Adding a new KPI measure

So we have discussed creating an enhanced KPI for the standard First Response by and Respond by KPIs, but what if you want to measure another KPI like for example Decision Date or Second Response by?

With Enhanced SLAs for Dynamics CRM 2015 you can now create your own KPIs. So what do you need to know?

–          The SLA KPIs are defined as lookups to the SLA KPI Instance, so by default there are two lookups one for Respond by and another for First Response by.

–          The timer is displayed by using a quick view for each SLA KPI. When a quick view is added to the case form you define the lookup field for which the quick view will display

–          Any new look-up to the SLA KPI instance are dynamically displayed on the SLA item form when defining the SLA details. So to add a custom SLA item you need to first create and publish the new relationship

So to create a new SLA KPI for Decision Date you will need to:

  1. Open up the customisations area – Settings -> Customisations -> Customise the solution
  2. Open the SLA KPI Instance entity and create a new 1:N to Case for the new SLA KPI, providing the name of the new KPI i.e. in this example Decision Date By KPI
  3. Open up SLA KPI Instance Forms and copy one of the existing Quick Views by using Save As
  4. Open the new quick view form and change the labels to reflect the new SLA KPI
  5. Save and Publish
  6. Open up the Case form and add the new quick view form to the Enhanced SLA tab
  7. Select the new lookup field to SLA KPI Instance that you created in step 2

8. Save and Publish
9. You can now create a new SLA item against an existing SLA definition or new using the new SLA KPI Decision Date:

10. Once you have created the SLA item and activated it, you will be able to view the new KPI Decision date on the Case Form as per the out of the box KPIs. You can as many new KPIs as required, triggered on             any condition.

Reporting on SLAs


You can report on SLAs by using the standard views, charts and excel. One key point to remember when you are reporting on Enhanced SLAs, is that the key fields to be reported on are stored in a separate relationship SLA KPI Instance.

To create a chart on first response by status, you will need to add the First Response SLA instance fields to the Case form. You can then include the fields on a chart. For example the chart below depicts the status of first response by all active cases:

You can report on any of the SLA date fields and review which cases are nearing non-compliance. You can create specific dashboards on SLAs so that you can monitor SLAs and performance against them.


If you have CRM installed in an On Premise or Hosted environment (not CRM Online), then you need to be aware of a current issue with date calculations for non US based users. If you do not apply this fix you will notice that the date calculations for the SLAs may appear incorrect because of the date format being used. Unfortunately until a fix is applied to CRM you will need to ensure that the CRM servers running the web application are set to the US region as per this blog

Once you have applied this change then the dates will be calculated as expected. A detailed community support blog can be found here detailing some of the issues that other users have experienced with a reference to this fix

Adding an associated view button in Unified Service Desk

If you have used the Unified Service Desk you will know that the navigation is different, you do not have access to the standard navigation bar, if you want to access an associated view then you need to add a button or a sub grid to the form. This is not a simple process if you have tried! So I have documented the steps to achieve this. In my example I am adding Connection to my contact form tool bar.

To enable this change you will need to create:

  • A new Hosted Control
  • A new Action Call
  • A new Button
  • A new Button Action

Once you have completed the following steps the outcome will be:

End outcome

The steps to create this:

  1. Open up your CRM via the browser and navigate to the Contact form or form that you will be adding the new associated view to
  2. Open the associated view
  3. Press F12 or select Developer tools in the browser settings
  4. Search for the name of the associated view in my case Connnections
  5. Find the following line and copy the URL, you will need it later.Developer tools
  6. Now Navigate to Settings->Unified Service Desk
  7. Select Hosted Control
  8. Create a new Hosted Control of type CRM Page for the associated view as below
  9. 1 - Hosted control
  10. Now navigate to the UII Actions associated view of the new Hosted Control
  11. Open the Navigate record
  12. Select the Action call associated view and create a new record
  13. Select the Hosted Control and Action Navigate and copy and paste the URL from step 5 into the data section as below.3 - create new action call and paste in url details
  14. The final step is to add a button to the form
  15. Navigate back to Settings->Unified Service Desk
  16. Click on Toolbars
  17. In my case I will open the Contact Navigation Toolbar4 - Toolbars select appropriate one
  18. Click into buttons and create a new button, as below
  19. Now add the action call that you created in step 12 to the button5 - Create new button control and link action call just created to it
  20. Save and you have completed the steps.
  21. Open Unified Service desk and you should now see the new button



Where do I control which states pause and resume an Enhanced SLA?

You know you can pause and resume in CRM 2015 SLAs but where do you specify which states control it?

2 ways of doing this as follows, its easy when you know how:

  1. Open System Settings from Settings->Administration and scrolling to the right for the tab named “Service”
  2. Or via the Service Management settings area and selecting “Service Configuration Settings” – Settings->Service Management – Service Terms Section

It is that easy. Remember the statuses apply to all SLAs.

CRM 2015 – Global Search – what you need to know

So how do I set up Global Search? How do I search my custom entities? How can I change the columns that are displayed?

In this blog post I will discuss the things you need to know about Global Search.

Key Features:

  1. You can only define 10 entities to be included in the search, these can be system and custom entities
  2. The returned values display the first 3 columns of the record quick find view
  3. You can specify whether to use enable a limit of 10000 records to be returned to improve performance
  4. You can search using 1 or more characters and you can use wildcard searches
  5. You can initiate a global search from the navigation bar
  6. You can create new records straight from the global search view
  7. Global search provides vertical scrolling
  8. Global search entities are system specific and are set up for the organisation
  9. Search displays the record images for easy identification of records

Setting up Global Search

  1. To select the entities to be included in the search, navigate to Settings->Administration->System Settings
  2. Scroll down on the general tab to the Set-up Quick Find section and click on Select.Global Search 1
  3. Use the controls on the form to select, deselect and move up and down the entities that you want to search upon.
  4. You can only select a maximum of 10 entities and the order in which they are listed is how they will appear
  5. Save and close and the Global Search settings are now updated

Updating Quick View forms

  1. If you want to change the columns that are displayed or change the columns that are searched then you need to update the quick view form
  2. Navigate to settings->Customisations->Customise the solution
  3. Select the entity to update
  4. Select Views
  5. Open the Quick Find view
  6. Update the columns and search fields.Global Search 2
  7. Save and publish the changes

Using Global Search

  1. To initiate a global search, enter a search term in the search box on the navigation pain, and click the looking glass. If you resolution is low or you have minimise the CRM window then only the looking glass will be displayed. Clicking the looking glass will open the search windowGlobal Search 3
  2. The Global Search pane is displayed with the results
  3. You can now filter the search to a specific entity, select the record to open, create a new record or change the searchGlobal Search 4

How do I manage subscriptions with ClickDimensions? How do I keep my lists clean?

Every marketing department wants some form of subscription management as a blanket un-subscribe is not ideal. Using ClickDimensions you have access to subscription lists. Subscription lists enable you to create areas of interest for your customers to subscribe to. Subscription lists can be added to one or more subscription pages using the standard web content record type. Once you have a subscription list you can then add it to an email you send out. All sounds good so far.

The problem though is how do you maintain a nice clean list of contacts or leads who have subscribed to stuff? If you use ClickDimensions you probably know what I am talking about if not see here for the details  (no point me going into it here as well, as fully articulated in this great article by ClickDimensions). The basic point is that you either have dirty lists or need to add fields to the contact or lead form.

But wait there is a better way of doing it now with the latest release of ClickDimensions that keeps your lists clean and does not require any new fields to represent new subscriptions.

How you ask? Use the workflow custom step provided by ClickDimensions to add and remove users from a static marketing list.

So how does this work, you ask?

  1. The concept first
    1. Subscription Lists are used to manage the interests that you want a user to sign up to
    2. Static Marketing Lists are used to represent your internal representation of the subscription list
      1. An internal marketing list might relate to one or more external subscription list as internally mean same thing but externally you might want to break things out
    3. The value of Static marketing lists is that they can be used in advanced finds to identify individuals that exist in the list or not, you can combine lists into a dynamic marketing list, you can easily view on a Contact or Lead record the lists that a person is in just like having a field on the list, you can manually add people to the static list
  2. Setting it up
    1. Create the subscription lists and Subscription Page as per articles here
    2. Create your static marketing lists to represent the internal subscriptions
      1. staticlist
    3. Create a workflow to add or remove people from the static marketing list based on whether they subscribe in or out via the subscription page
      1. Create a new workflow from Settings->Processes
      2. Select the Subscription Preferences entity
      3. Run on create of record and tick the delete workflow after execution to save space
      4. In the designer you will now have to add a condition per subscription list, and sub condition to see if the person opted in or out. The action step will use the new ClickDimensions workflow custom step that can add or remove contacts and leads from lists.
      5. The workflow should look something like this where I have 2 subscriptions lists one for Newsletters and the other for Events
      6. Marketinglistworkflow
      7. The first condition checks the subscription preference subscription list record
      8. The second sub condition checks the value of the Subscription Preference Preference attribute. In resembles ticking the box, out resembles leaving it blank or unpicking the box.
      9. The parameters to be used in the new custom step are:
      10. Customstep
      11. You can add this to the workflow via the Add Step button and selecting Marketing Lists -> Update Marketing List Members
      12. Repeat the conditions for each subscription list and then Activate and you are now done.

Once you have activated you are up and running, your lists will stay clean, it will be easy for users to view what subscriptions a customer is subscribed up to and managed on going. Screenshot below is of the Contact associated marketing lists.


Any questions let me know. Hope it is useful.