I was having a chat with a colleague recently about the new Interactive Service Hub (ISH) in CRM, in particular the new entity forms that are used as part of this. One of the questions that came up was “From a form scripting point of view, do ISH forms let you utilise all of the same references, properties and methods available as part of a Main form?”. As is generally the case in these situations, we can turn to our good friends TechNet and MSDN for answers. Specifically, we are able to find out the following on MSDN:

All the form scripting events and methods supported by the CRM mobile clients (phone and tablet) are supported in the interactive service hub.

If your organisation is fortunate enough to be using CRM 2016 Update 1 or CRM 2016 Service Pack 1, then you can also utilise the following methods/events as well:

Source: https://msdn.microsoft.com/en-us/library/mt671135.aspx#Anchor_1

So what does this mean in practical terms and how should this factor into your decision to utilise Interactive Forms over standard CRM forms? Here are a few things to consider, as well as my own thoughts on the best way to proceed:

If you are on CRM 2016, then get yourself Update 1/Service Pack 1 ASAP

There are a number of important new methods that can be used for interactive forms as part of this update. For example, you get much better options when it comes to working with IFRAME controls, interacting with the currently loaded record you are working with (via getID), loading a new record form (via openEntityForm or openQuickCreate) and setting focus to a particular field on a form (via setFocus). This goes above and beyond what is currently supported via the CRM tablet apps, and it is good to see that this CRM update has added these in. Having access to these methods may help to decide whether you can safely migrate or start using ISH forms within your organisation. And, as we have seen previously, the update process to SP1 for CRM 2016 is relatively straightforward, so why wouldn’t you look at upgrading?

Be sure you familiarise yourself with Interactive Form debugging

Anyone who works with CRM form scripting will be familiar with the trials and tribulations of browser debugging your scripts via Developer Tools on your browser of choice: open up your script library, set your breakpoints and then perform the actions needed to trigger your script. Try this with the new Interactive Forms, and you will notice that your custom library is not loaded onto the form. What the fudge?!?

Before panicking too much, the good news is that scripts can still be debugged, but you just have to go down a slightly different route. The CRM Team have written an excellent blog post that covers not just debugging for interactive forms, but for all forms as well. The first two options suggested seem to be the most straight-forward way of debugging interactive forms, but you can’t help but laugh at the fact that one of the suggested options is to use functionality within Google Chrome! 🙂 Joking aside, using Dynamic JScript in the manner outlined looks to be an effective way of setting breakpoints in a familiar manner. I may have to look at trying this at some point in the future.

You cannot programmatically switch to a different entity form in the Interactive Service Hub

It is sometimes useful to change the currently loaded form that a user is presented with depending on certain conditions. For example, if a user enters certain data within a Lead form to indicate the record should be treated as high priority, you may want a new form to be opened that contains additional fields, subgrids etc. that need to be completed in order to progress the record accordingly. Within the Xrm.Page.Ui reference, we have two methods that help us achieve this objective: formSelector.getCurrentItem, which returns the GUID for the currently loaded form, and formSelector.items, which returns a list of GUID’s for all forms that the current user has access to. The bad news is that, because these two methods are not supported in the mobile app, you will also be unable to use them within the ISH. This is likely due to the fact that, similar to Mobile Forms, only one form is presented to user when using the ISH, which is dictated by the form order and the users security permissions.

ISH forms do not contain a Ribbon

This may be one of the major reasons that prevent against an en masse adoption of ISH forms in the near future. One of the benefits of using the default CRM forms is the ability to modify the the CRM ribbon in order to add, remove or modify button behaviours across the application. This is great if you decide that you don’t want your users to have access to the Delete button, need to modify the order of the buttons to match the ones that are used the most or you need to setup a custom button that performs a web server call to an external system. Again, similar to the mobile application, there is no ribbon anywhere on the ISH, which means you may be missing out on key functionality going down this route.

ISH can only currently be used with a limited list of entities

If you are hoping to get your CRM setup to use ISH for your Sales related entities, then don’t get too carried away at this stage. You are currently limited to using ISH with a specific list of CRM entities. The full list, courtesy of our good friends again, is as follows:

  • Account
  • Contact
  • Case
  • All Activity Entities (System/Custom)
  • Social Profile
  • Queue Item
  • Knowledge Article
  • Custom Entities

Expect this to change in future, as one of the things that I have previously highlighted as part of Update 1/Service Pack 1 was the ability to add Feedback onto any entity within CRM, including custom ones. It would make sense that the Sales side of CRM gets some love and attention to include Leads, Opportunities etc. as part of ISH (so we may not even call it this if that happens!).

Conclusions or Wot I Think

It is clear that, whilst some of the headline benefits of using ISH are clear – visual experience, ability to drill down to individual records and efficient record filtering – , there are some very crucial and important technical limitations with the feature that need to be factored in before you decide to just completely migrate across to ISH. I would say that if your organisation has not been extensively customised to utilise form level scripting and other types of bespoke development work, then you can perhaps get away with making the jump. By contrary, you should be holding off and evaluating your existing customisations first to see if a) they are supported/unsupported by ISH or b) if there is some way to drop certain form scripting, ribbon customisations etc. in favour of using something default within CRM (for example, a Business Rule instead of a Jscript function). It could be that you can ditch a whole load of code that is not required as part of this exercise and instead utilise base functionality within CRM, something which is always preferable.

One thing I have been wondering about is the eventual aim with the ISH: is it intended that this will eventually replace the existing CRM user experience or will it continue to just be an alternative way of using CRM? It will be interesting to see how the feature is developed over the next couple of releases of CRM; one of the key indicators of this replacing the “old style” CRM forms is if we start to see all form scripting options made available in ISH and the introduction of the Ribbon.

In the meantime, make sure you do check out ISH at some stage, as the potential of setting up a visually attractive reporting and day-to-day application tool is huge. Just don’t let your Sales team see it yet, as you will end up disappointing them!

Header

When I first took a look at some of the additions I was looking forward to as part of the CRM 2016 Spring Wave, I made reference to the new Email Signature feature. At the time, there did not appear to be any way of accessing this via the GUI interface within CRM; this is despite the fact there were, clearly, new system entities in the system corresponding to Email Signatures. There appears to have been some small update or change since my original post however, as it is now available within Online/On-Premise 8.1 CRM instances 🙂 . To take advantage of the new feature depends on what version of CRM you are running:

Once you’ve finished updating, you are good to go. To then setup an Email Signature for your user account, you will need to do the following:

  1.  Navigate to the Email Signature window within CRM. This can be accessed in either 1 of 2 ways:
    • The first is via the Set Personal Options screen, on the Email Signatures tab:1 2 3
    • The second is via the Sitemap Area, in Settings -> Templates -> Email Signatures:9 10
  2. Regardless of how you have got there, press the New button to open the New Email Signature window:154
  3. Give your signature a name and then populate the text area with your desired signature. You can make use of the rich text formatting in order to style your signature. Or, alternatively, you can copy & paste your signature from another application (Word, Outlook etc.):5
  4. Once you are happy with your signature, press Save. At this point, the signature will now be available whenever you create a new email record. However, in order to make the signature appear automatically whenever you draft a new email, you will need to press the Set as Default button:6If you need to revert this at any point, then you can use the Remove Default button, which replaces the above button:7
  5. Press Save and Close to finish setting up your signature. It will now be visible within the Email Signature subgrid view:8 11
  6. Now, when you navigate to create a new Email record, your newly created signature will be visible on the email:12
  7. If, for whatever reason, you need to select a different Email Signature, then press the Insert Signature button, which will then prompt you to select a new Email Signature to use:1413

I am really glad that this feature has finally been added to CRM, however…

There appear to be three glaring issues, that really need to be addressed in order to make Email Signatures work better:

  • Email Signatures are only configurable on a per-user basis. What that translates to is that if one user creates an email signature and sets it as their default, another user can log in and see this, but cannot apply it to themselves or set it as their default; if the second user wanted an email signature, they would need to create one manually. The implications for this should be fairly obvious, and I find it somewhat confusing that there is not way to setup a common template that can be then be applied and customised individually for each user on CRM.
  • There is no option, unlike Email Templates, to insert dynamic Data Field Values. So you cannot, for example, populate an e-mail signature based on information from the Job Title field on the currently logged in User account. This makes the feature impractical as a central Email Signature management tool; instead, you would have to go through the potentially rather tedious task of setting up Email Signatures for every user account on a system. Not so bad if you have a dozen or so users on your CRM instance, but if you have hundreds of users…you get the point.
  • Whilst recently studying for the CRM 2016 Service exam, I was really impressed to see that the Knowledge Article feature had been given a face lift in line with the new Interactive Service Dashboard. In particular, the text editing functionality has been improved significantly, with a range of new text editing options – many of which are not included as part of creating an Email Signature. Below is an image highlighting each of the new text editing features not available on Email Signatures, but available as part of the enhanced Knowledge Article functionality:16As you can see, there are a number options as part of the above which would be incredibly useful from a Email Signature creation point of view – Insert Image, Font Colour and View Source (perhaps the most crucial, if your organisation uses HTML signatures). I wonder why, therefore, the new Email Signature feature was not modeled in the same vein as the above.

Conclusions

Previously, in an attempt to replicate email signature functionality, the recommended approach was to setup an Email Template. This is beneficial when it comes to larger CRM deployments, as the dynamic data fields functionality can be utilised when creating a common template. The introduction of the new Email Signature functionality does not, in my view, mean there should be a change to this approach. I think if your CRM deployment contains a small amount of users and you have a very simplistic, existing email signature, then you can perhaps get away with using this new feature without causing yourself too many problems. Until the above issues are addressed however, I would not recommend migrating away from what you are using currently to provide email signature functionality within your CRM. This is a real shame, as I was hoping the introduction of this feature would resolve some of the headaches that I have encountered previously working with complex email signatures in CRM. Fingers cross we see Email Signatures get a bit more love and attention as part of the next major release of CRM.

The current talk around CRM at the moment is all about the Spring Wave AKA the CRM 2016 Update 1. Unlike Dynamics CRM 2015 Update 1, released at the same time last year, On-Premise customers can also take advantage of the latest update now by downloading Service Pack 1. Now it’s worth pointing out that some features, such as Guided Help and Field Service Management, are not made available to On-Premise customers at this time. Nevertheless, I think it’s a really positive step forward that On-Premise customers get most, if not all, of the latest updates as part of the Spring Wave, at the same time as Online customers. I’ve already talked previously about some of the great things to expect as part of the Spring Wave, so I would strongly recommend that organisations look at scheduling in their on-premise upgrade sooner rather than later. The main reason is the simplicity involved behind the actual upgrade process, which is the focus for this week’s blog post:

How to Download Service Pack 1

If you have enrolled your Dynamics CRM installation into Windows Update, then currently SP1 does not appear when your run Check for Updates on your CRM Server (this will change starting from Q3, according this knowledgebase article). Therefore, you will need to download the update manually via the following link:

https://www.microsoft.com/en-us/download/details.aspx?id=52662

There are a number of install files available as part of the update. On first glance, it can be difficult to determine which update file relates to which component of your CRM installation, so I have provided a summary of this below:

CRM2016-Client-KB3154952-ENU-Amd64.exe – Outlook Client (64 Bit)
CRM2016-Client-KB3154952-ENU-I386.exe – Outlook Client (32 Bit)
CRM2016-Mui-KB3154952-ENU-Amd64.exe – Outlook Client (64 Bit) Language Pack – English
CRM2016-Mui-KB3154952-ENU-I386.exe – Outlook Client (32 Bit) Language Pack – English
CRM2016-Router-KB3154952-ENU-Amd64.exe –  Email Router (64 Bit)
CRM2016-Router-KB3154952-ENU-I386.exe – Email Router (32 Bit)
CRM2016-Server-KB3154952-ENU-Amd64.exe – Server Update
CRM2016-Srs-KB3154952-ENU-Amd64.exe – Reporting Extensions

There is also a final file – CRM2016-Tools-KB3154952-ENU-amd64.exe – which I believe may be some kind of utility to perform database upgrades. I have been unable to get this working successfully on my end and, from the looks it, the server update performs the database upgrade as part of the update. If anyone knows what this is for and how it works, let me know in the comments below.

Installing the Update

The update is really simple – this is backed up by the fact that it can be completed in as little as 6 button presses!

After running the self-extracting installer, you will be greeted with the first screen of the setup process:

SP1_Update_1

As is always the case, accept the license agreement:

SP1_Update_2

Then, confirm that you are ready to begin the installation:

SP1_Update_3

The installation process shouldn’t take long (about 10 -15 minutes when I performed it). Once complete, you’ll then be able to view the installation log file and specify whether or not you want to restart the server immediately:

SP1_Update_4

 

As part of the update, your organisations and databases will be automatically updated to the latest version. So, no need to manually perform this yourself after the update.

Reporting Extensions Update

The only thing to point out with this is that this will need to be installed on the same machine as your CRM’s SSRS instance. Depending on your On-Premise deployment, your SSRS instance may be installed on a different server. The actual process of installing the update is identical to the above. Fortunately, however, a server reboot is not required 🙂

Outlook Client Update

Updating the Outlook client is also very similar and straightforward. Any existing connections will still work after the update. You will also need to install the update(s) for any currently installed language pack(s) immediately after this update is complete. In most cases, this will just be the one update for your CRM organization’s base language. Depending on the size and complexity of your CRM deployment, you may need to plan carefully to ensure a successful roll-out; you may be happy to note that the existing CRM client should still work with a 8.1 CRM instance, so you can always choose to defer this part of the update entirely.

The Testing Conundrum

As with any application update, it is always prudent to ensure that you have performed some kind of testing. This can be invaluable in identifying issues that can then be resolved in good time, without causing disruption to colleagues/end-users of the application.

The difficulty in this particular case is that the update appears to automatically update all organizations on a CRM instance in one fell swoop. So you cannot, for example, setup a copy of your primary CRM instance that you can perform a test upgrade on. You would therefore have to deploy an entirely separate CRM instance which you can perform the necessary testing on. You can use a trial key to cover the initial licensing hurdle, but you will still need to allocate hardware and put time aside to get your temporary testing environment setup.

Given that this release is not a “major” release of the application, I would argue softly that you can probably throw caution to the wind and perform the update with a minimal amount of testing, particularly if your CRM instance has not been significantly customised/extended. There does not appear to be anything majorly changed under the hood of CRM for this release that could cause problems (unlike the 2015 Spring Wave release for CRM Online). In order to best inform your decision on this, you should consider the following factors:

  • Are you able to schedule your CRM update over a weekend or extended out of hours slot, and have resources in place to perform any post-update testing? If the answer is yes, then you may be able to get away with not performing any pre-update testing.
  • What is the maximum amount of time your CRM instance can be taken down for during normal working hours?
  • Does your CRM utilise the Email Router, CRM for Outlook and/or multiple language packs? If yes, then performing upgrade testing of these components may be beneficial.
  • Does your business have a spare Windows Server instance that can be used for a test upgrade, without incurring additional cost to the business? If yes, then a major impediment has been eliminated, meaning that you should look at performing a test update.

Has anyone performed an On-Premise upgrade to SP1 yet? Let me know your experience and comments below!

CRM2016Update1

It was a very nice post-bank holiday treat in the UK to be treated to news on Tuesday morning that the CRM 2016 Spring Wave has now been released, and can now be accessed as part of a Sandbox Reset or a new CRM Online Trial. 🙂 Microsoft will be targeting organisation updates on Office 365 tenants starting from the 1st week of June, and it’s a better time then ever to upgrade to CRM 2016 if you are still using 2013/2015 within your Online environment.

So what can we look forward to as part of the new release? I have taken a look at what’s new (both obvious and under the hood), and have highlighted the 5 new features that I am most looking forward to as part of the new release:

Characteristics

I’ve been getting myself more and more familiar with the service side of CRM (partly for exam preparation, and also because the new interactive service hub looks really cool!) and I have been impressed with the breadth of options that are available within CRM for service management, scheduling and resource management. One thing that is lacking though is some easy method of recording detailed information regarding a particular resource. For example, if you have a Network Engineer that you need to schedule out for a site visit and you need to ensure that he has a particular certification or qualification in order to complete the job, there is no (easy) way to record this against the resource in CRM.

I am therefore pleased to see that new entities called Characteristics Bookable Resource Characteristics have been added as part of this CRM release, with the following descriptions:

Characteristic – Represents the skills, education, and certifications of resources.

Bookable Resource Characteristic – Associates resources with their characteristics and specifies the proficiency level of a resource for that characteristic.

The entity has fields that records a Characteristic Type and Rating Value, which would seem to be perfect for scenarios similar to the example provided above.

Unfortunately, after digging around in a trial version of the Spring Wave update, I cannot seem to find any obvious means of accessing these entities via the user interface. I assumed that you would be able to add this information from the User form, but no dice. Perhaps this entity has been added in preparation for the next big release of CRM, but there is nothing (in theory) stopping system customisers from exposing this entity manually themselves and start using it. If anyone else manages to find this within CRM, please let me know in the comments below!

Email Signatures

Buried within the What’s New announcement page for the release, is the following small, but potentially significant, new feature announcement:

Save time on your email correspondence and add a professional touch by adding an email signature. Use a default signature for everyday replies and new email messages, and then create other signatures for those special cases. You can also assign a default signature to a queue. When you change the From field from a user to a queue, the default signature changes automatically.

This has been one of my major headaches in attempting maintain consistent email signatures between our Outlook and CRM clients. The problem is compounded somewhat by the fact that the Email Template functionality does not offer a HTML editor. You therefore have to go through a number of different hoops in order to replicate this within CRM, and even then it doesn’t look 100% perfect when compared to our Outlook signatures. If there is therefore a better way of managing this in CRM moving forward, then I am very interested in finding out more.

One problem I’ve noticed straight away though – similar to Characteristics, there doesn’t appear to be any way to access this through the CRM interface! There is a new entity in the system called Email Signature though, which can be accessed via Advanced Find, but looks as if its not something that can be used yet. A real shame, as I was looking forward to seeing this in action.

Guided Help

Eagle eyed CRM users will immediately spot, when first logging into the new CRM update, that the help button looks distinctly different on the top right corner of the screen:

GuidedTours3

The new release introduces the Guided Help feature, which aims to offer more detailed, context sensitive information for users who need help within CRM. Clicking the above button will pop open a sidebar on the left of the screen, that changes depending on where you within CRM:

GuidedTours1

Then, by clicking one of the green links that are listed (again, these change depending on where you are within CRM), you will then be given a tour of how to complete a specific action, such as creating a Lead record:

GuidedTours2

Rather then attempt to poorly emulate some of the existing information available online for this new feature, the video below provides a great summary of what Guided Tours is capable of:

I am really excited to see how this feature develops over the time, and hope that eventually you have the option to create your own guided tours that can then be tailored specifically to individual CRM systems. This feature is also a great example of how Microsoft is leveraging some of the benefits and features of the Azure platform to deliver better services to their online customers.

Feedback

Within previous versions of CRM, there was no out of the box way of recording post-sale information in regards to Products that are setup on the system. I would say that pretty much all businesses are not just concerned with how well their products sell, but also want to drill-down further and get feedback directly from their customers on a Product that has been sold to them.

Now, in the Spring Wave release, the existing Feedback entity (previously used for Knowledgebase Articles) has been extended for use by other entities. To enable for your system/custom entities, all you need to do is tick the Feedback option within the Entity Definition page:

CRM_Feedback

Just to advise you, once it has been enabled for an entity, it cannot be disabled. Once enabled, you can then access it from the entity record page:

CRM_Feedback2

So now, system customisers can modify their CRM systems in order to enable Product feedback and feedback for any type of record. For example, you could configure Feedback for the Competitors entity as well, in order to allow sales users to capture feedback when speaking to potential customers about a supplier they are currently using.

CRM Portals

One of Microsoft’s most high-profile acquisitions last year was ADX Studio, a company that provides customer portal solutions for CRM – the great benefit being that you don’t need to be an ASP.NET whiz in order to setup highly functional, attractive portal systems that feed data into and out of CRM. Starting from the 2016 Spring Wave, Microsoft are starting to more tightly integrate the product with CRM, to the extent that portals will now be manageable from within CRM itself and integrated as part of the Office 365 subscription plans, effectively becoming an add-on product that can be purchased from the portal. Organisations who are considering to use ADX Studio may be advised to wait to see what happens with this, as it is likely that Microsoft may introduce price breaks on the product in order to entice CRM Online uses to try the product. In the meantime, trial ADXStudio account are still available on their website for those who are curious. I am hoping to start getting to grips with the product within the months ahead, so expect a blog post or two on the subject in future.

What are you most excited about as part of the Spring Wave release? Let me know in the comments below.