Wednesday, June 28, 2017

Dynamics 365 Version 9.0 Business Edition and more

Version 9.0 is soon here and it is set to be the largest release ever from Microsoft. The biggest news on my horizon is the relase of the all new Business Edition of Dynamics 365 (BE). This will be an interesting new product and I'd thought I'd write a few lines about it just to clear some things up based on my understanding of the product.

Note that these are my thoughts, they are based on what I have heard and what information I believe is in the public domain (non-NDA). If you know that anything is wrong or have something to add, please leave a comment and I will try to fix it as soon as possible. Due to the high level of spamming I have to use moderation on all comments.

Is it xRM?
Yes, it is going to be based on the xRM platform but it will be using the all new and shiny "Unified Experience" UI which is probably going to be great in many aspects, looks great and everything but also will probably have a glitch or two as it is just coming out the factory doors.

Ok, so can I customize it?
Yes, to some extent you will be able to. It will have specific limits that set it distinctly appart from Enterprise Edition (EE). As of now Microsoft have not been very specific on the details but they have said that the limits will be on:

  • The amount of users in the system
  • Number of custom entities
  • Max amount of GB of usage on disk
I am an ISV developer. Will my ISV 3:rd party addon work with BE?
As far as I understood Microsoft, they will limit ISV addons to only be able to work with the OOB entities in BE. As creating entities in the "normal" CRM/EE has almost no cost, almost all ISV solutions I have seen have at least one custom entity, if not to contain customizations. So, my answer would not be a blanket "no" but a probable, "no". If your addon isn't too advanced, you could probably rewrite it to make it work, but with larger addons like for instance ClickDimensions or Resco, I don't see how that would be possible.

Can I use a sandbox with BE?
No. No non-production instance will be included in the price and as far as I understood, you won't even be able to buy a non-production or even production instance of BE.

Can I upgrade from BE to EE?
Yes. As it is based on the same xRM framework this will totally be doable on a theoretical plane. However, I don't know how this will work on a short term basis if, for instance, you start with a BE in Nov 2017 and in Dec 2017 decide that it was too limiting too you and you want to upgrade to EE. The reason for my hesitation in this is that BE will be based on Unified Experience and EE will not at the time of release of 9.0. I would, however, expect 9.0 to catch up further on the line and after it has been upgraded to Unified Experience, then an upgrade of an instance from BE to EE should be no problem.

I bought the interim EE offer for BE pricing level, will I be able to downgrade to BE?
This is a tricky one. First of all Microsoft has not made any public statement on this that I am aware of in either one or the other direction. However, I do think that the key here lies in the level of customizations that you have done to you system. If your EE system falls with the limits of # of users, # of entities and # of GB that is set by MSFT, and also not having any ISV addons not allowed according to BE and any other limitations that Microsoft might come to set before the General Availability (GA) of BE then I think you have a very good chance of being able to downgrade. However, just as I mentioned above in the ISV section, the limitations might be too limiting and creating a lot of entities and adding ISV addons both free and purchased might make it hard to move to BE.

Can I use the Marketing App of BE in EE?
This is a really interesting case, as this is an area where the BE will have a featureset that exceeds EE, at least at the time when it is delivered. In the big overview of all Dynamics 365 Apps (for example the one above) - the Marketing Automation slot is filled by Adobe Marketing. However, for the BE there is a Marketing App which has been created from the bottom up by Microsoft on the xRM platform. Do note that for those of you who were unfortunate to have chosen Microsoft Dynamics Marketing, that product has been discontinued, so that is as of the General Availability of Dynamics 365 (dec 2016) you should really start thinking of moving away from it.

However, the new and shiny Marketing App for BE is strickly speaking only for BE for the time being. I think that the feature set it has is perceived to be too small for the Enterprise segment, although I can perceive many customers using the Enterprise edition that would probably be more than happy with it.

As for the future for the Marketing App in EE only Microsoft knows what they have planned and if I knew I couldn't have written anything here either. What we know is that they have invested quite a lot of money in building some Marketing Automation features for the BE which is only aimed at the lower end of the customer segment. I would find it noteworthy if they did not leverage that investment in some way in the Enterprise segment as well. However, building a Marketing Automation solution that can match other Enterprise Marketing Automation systems is not something that even Microsoft can do at the flick of the hand, so I would not expect this to show up for at least a year or two. And it might of course be that they will slowly evolve the BE Marketing App until it is fit to grow into the larger Enterprise segment by just turning some switches, but I guess only the future will show.

As of now, Adobe is the preferred partner for Marketing, something I personally would like to see more detail to. What does it acutally mean? Seems there is some integration engine but no availble whitepapers to dowload that describes what it does. http://www.adobe.com/enterprise/microsoft-partnership/digital-foundation-azure.html 

If Microsoft are investing in building their own EE Marketing Automation App, which does not seem very far fetched althought it might take some time, you might need to take this into consideration if you are considering investing in a new Marketing Automation system for your organization and you are already running Dynamics 365.

If you have any other questions on Dynamice 365 Business Edition, please ask them in the comment. Not sure I can answer, but I can try!

By the way, my blog was awarded the 78:th best CRM blog of all in the world in all CRM categories. Hence the new shiny logo to the right. That was worth some celebration!



Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Tuesday, June 20, 2017

Don't miss our new sales oriented blogging

When blogging on this blog I try to keep content king why I would rather not blog than blog about
something that I don't think brings value to you as readers. I have the greatest respect for you as readers of this blog and I hence try to keep the content focused on what typically developers, architects and application experts might be interested in.

Content is King
However, there are a lot of other topics that are relevant as well and we have started blogging about those as well at CRM-Konsulterna. You can find it at http://crmpaketet.se/blogg/ where we discuss matters which are of more interest to salespeople. It is in Swedish as this is our primary market and it is also part of our new digitalization strategy which we are implementing with inbound content marketing (the blogging and articles) and technically driven by ClickDimensions as the Marketing Automation tool. This is a great new way of doing business but requires all the techy parts to really work so there is a lot of room for us tech-weenies to get our hands dirty. But the tricky part is getting the business end people on track, they are usually a bit slow (not dumb) when it comes to changes and hence it takes some time for them to accept these new ideas of digitalization.

Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Thursday, April 20, 2017

Some dashboards are more equal than other

Typically you are not allowed to remove components from the system layer in Dynamics 365/CRM
Is this dashboard more pig than horse?
but for some reason this does not apply to dashboards in some earlier versions of Dynamics CRM. It seems this bug has recently been fixed but if you have a version of CRM where this was possible or have been upgraded from this version, you might be missing it. I just tried this in the Online version
8.2.0.798 and in this version it is not possible to delete dashboards but I have managed to in earlier versions.

My friend Jerry Weinstock has blogged about this as well.

One particular dashboard that the system is in dire need of for its mobile features is the "Sales Dashboard" as this is the default dashboard for the mobile and tablet clients. This cannot be changed although the default dashboard can be changed within the mobile client by the user after it has been started. See MSDN for more info in this.

In case you do manage to delete it or it has been deleted, Power Objects blog have described how to restore dashboards from instance with this dashboard in it. In short, create an unmanaged solution in that other instance containing the "Sales Dashboard" and then export and import the solution into the instance missing it.

Before closing the window showing the results, open the log of the import and get the guid of the dashboard and then use the url of another dashboard to insert the GUID into the url to get to the "Sales Dashboard" and change it's name and/or the label of the the tab to what it typically is in case it doesn't show up directly.

In case you do not have one, here is a link to an unmanaged solution file (version 8.0) containing just the sales dashboard. SalesDashboard_1_0_0_0_target_CRM_8.0.zip


Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Saturday, March 18, 2017

Update on BPF gotcha

Wrote an article a few days ago on the BPF new architecture and effects that it might have.

I spoke with Roger Gilchrist, a Principal Program Manager with the Product team during the eXtreme365 conference and he mentioned that using the "Process Stage" fields are actually not supported if you read the SDK very closely. This document is a very long document and it is not very clear in the UI and there is no other very obvious way of solving triggering on stage changes than the triggering on Process Stage changes, with which he did agree.

The important lesson from that, I think is that not everything you see in the UI is actually supported for use.

Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Monday, March 06, 2017

Strange error when deleting managed Solution

Seems like that Dynamics 365/CRM doesn't catch all dependencies for managed solutions. This is how you can find and remove one of the tricky ones I got when uninstalling a managed solution which was:

Unhandled Exception: System.ServiceModel.FaultException`1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=8.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]: During Solution Uninstall of Solution Id [solution-guid], cannot find any instances of the component with Component Id c97cd9d7-a0fa-4ed5-b360-3c2ad998a620 and Component Type 2.Detail: 
<OrganizationServiceFault xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/xrm/2011/Contracts">
  <ErrorCode>-2147220970</ErrorCode>
  <ErrorDetails xmlns:d2p1="http://schemas.datacontract.org/2004/07/System.Collections.Generic" />
  <Message>During Solution Uninstall of Solution Id [solution-guid], cannot find any instances of the component with Component Id c97cd9d7-a0fa-4ed5-b360-3c2ad998a620 and Component Type 2.</Message>
  <Timestamp>2017-03-06T13:06:54.6280227Z</Timestamp>
  <ExceptionSource i:nil="true" />
  <InnerFault i:nil="true" />
  <OriginalException i:nil="true" />
  <TraceText i:nil="true" />
</OrganizationServiceFault>

After some thinking I figured that this was probably a reference to an attribute (Component type = 2) with the Guid = c97cd9d7-a0fa-4ed5-b360-3c2ad998a620 so I opened another attribute and then cut-n-pasted the url. And it seemed that you didn't have to worry about the entity guid:


https://<onlineorgname>.<globalcrmcenter>.dynamics.com/tools/systemcustomization/attributes/manageAttribute.aspx?appSolutionId=%7bFD140AAF-4DF4-11DD-BD17-0019B9312238%7d&attributeId=%7bc97cd9d7-a0fa-4ed5-b360-3c2ad998a620%7d&entityId=%7b70816501-edb9-4740-a16c-6a5efbc05d84%7d

Change <onlineorgname> to your org, and <globalcrmcenter> to the crm-subdomain you are using, which for EMEA is crm4.



You will then see the field editor, and can then show the dependencies of the field and remove all of them manually to make sure they are not bothering the Solution uninstall. After that "publish all" and retry removing the solution.


Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Wednesday, February 08, 2017

Dynamics 365 new BPF architecture gotcha

The new Dynamics 365 release of CRM or as I like to call it 8.2, as that makes it a bit simpler. Dynamics 365 is a bit ambigious, it can mean AX and NAV as well and at the same time I want to discuss the platform and not just an app... so it becomes trick. I hope Microsoft figures some decent naming for the xRM part of the platform so we all have something to call it. (hint... xRM is a decent word)

Well, one of the cool new features of the 8.2 release is the revamp of the Business Process Flows (BPF) which now have gotten a couple of different facelifts, of which some are:

  • A new editor which looks identical to the Business rules editor. However, the Workflow editor is still very old-style... I wonder if this might be next. :)
  • BPF:s final stage can now be closed/or you actually close the entire BPF. This was not the case previously where the last stage simply sat there.
  • If you have multiple BPF:s and you switch between them, D365 will remember where you are in each of the BPF:s. This was not the case in earlier versions when it always restarted when you changed.

In order to handle the last point, the underlying architecture of the BPFs have been changed. Previously when you had an entity that was BPF enabled by a lookup called "Process stage" and when this changed you knew that the record had changed stage in the workflow.

Alas, in comes 8.2 on its white horse, and "Process stage" lookup falls dead to the ground like knight before a modern day tank. In other words, it simply isn't triggered.

The new BPF architecture is based on the principle that a new shadow entity is created for each BPF that you create. And yes, they are removed when you remove your BPF.

So, when is this typically a problem? The most common uses for triggering on stage changes in BPF is using a Workflow to trigger on changes in an Opportunity to set the probability. This is then later used in calculated fields like Weighted Estimated Revenue (not a standard field) and similar fields.

The effect upgrading to 8.2, which is just a minor upgrade from an upgrade perspective, is hence that these customizations that you might have done to set the probability, stop working and the opportunities get the wrong, 0 or no probability making any calculation based on this number incorrect.

So, how are you supposed to fix this? There is a new WF triggering mechanism built in to the BPF designer. You simply create a workflow that can be manually triggered, and drag a workflow compontent into the appropriate step in the BPF designer.

Do note that you can choose if you want it to trigger when the stage is started or completed.
BPF Editor with a workflow added with the Stage Entry trigger selected as highlighted

And this is how the workflows needs to look
This is the workflow that was selected in the BPF Editor above. Note the highlighted checkbox. This needs to be checked in order for the workflow to show up in the BPF editor lookup


A final comment. Even though the BPFs can now be completed, that does not mean that the final stage's Stage Exit is triggered. As far as I have understood it, it is still in this phase even though the BPF in it self is considered closed. I would call semantics on that. I hope Microsoft fixes that bug or enhances that lack of feature if they rather call it that.

Was this original workflow supported? Was it ignorant of your partner, you might ask, to create a workflow that triggered as described in the old manner and this has now stopped working and you
are faced with additional costs for fixing this? Shouln't they have known? Well, frankly no, your partner, if they followed what I described above, did make what are called "supported customizations" which according to the documentation from Microsoft is supposed to be upgradable. At least one major version, often 2 or 3 major versions This time it was not even a minor, from 8.1 to 8.2. Hence it is a regrettable situation but if you want to complain somewhere, I do suggest you complain to Microsoft.

Gustaf Westerlund
MVP, Founder and Principal Consultant at CRM-konsulterna AB
www.crmkonsulterna.se

Monday, February 06, 2017

Finding URL to dependencies on installed managed solutions

Uninstalling a managed solution? (ie Deleting it) Getting a bad error message saying you can´t? (Cannot Delete Component) And you don't know how to find what the dependencies are for the solution? So did I. And perhaps you, as I, did not notice the small link in the dialog which says "Details" that takes you directly to the "Dependencies" page.

Click this to go see the dependencies for the solution,
or follow the instructions below to manually generate an URL 
So, if you did miss that, or for some other reason want to know how to get to the dependency page of a solution, read on.

I found this blog article: https://www.interactivewebs.com/blog/index.php/crm-2015/crm-2015-2013-find-dependencies-for-managed-solution/

which described how to find the dependencies in a nice way in a CRM 2013/2015 on-prem environment where you have access to the database. But I was using Dynamics 365 (8.2) so that was no option.

The one part you cannot do in an online instance, in that article is to open the SQL database, in case you tried. So the trick was to find some other way to find the guid of the managed solution and it is of course quite simple, just right click it and select "Email a link" and your favorite email editor will open with the guid shown and you just have to know which part to cut, see the picture below:

Cut the guid between the %7b abd %7d which are the { and the }

Then just follow the instructions from the blog above and insert the guid into the url provided:

https://YOUR CRM URL/tools/dependency/dependencyviewdialog.aspx?objectid=GUID&objecttype=7100&operationtype=dependenciesforuninstall

Replacing "YOUR CRM URL" with the url to your D365 and GUID with the guid above.

That got me to this page, which after some de-privatization looks like a document from the Swedish tax authorities:

Thanks again to InteractiveWebs for the original article.

Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Sunday, February 05, 2017

Emailing Queues internally - OrgDBOrg to the rescue

Using queues is in D365/CRM for managing functional email addresses is the the only way to go as
far as I know, unless you want to set it up as a full user, which I don't really see the point of.

I recently ran into an interesting issue with a customer pertaining to queues and that is when you want to be able to forward mails internally to users that are registered in D365/CRM. What happens is that with the standard setting you will get two emails. Hence, you might think that going into System settings and the email tab and unchecking the "Track emails sent between CRM users as two activities". However, this will have the unpleasant effect of disabling internal emails to queues, or in other words, if an internal user sends an email to a queue, to a system with this setting unchecked, D365/CRM will simply ignore the mail and not pull it into the D365/CRM.
By RRZE - Own work, CC BY-SA 3.0, Link

So, do we have to choose between duplicate emails for internal users and being able to send emails from internal users or not getting duplicates and no emails from internal users? Well, no, there is a very special set of settings to the rescue, OrgDBOrg, which are described here: https://support.microsoft.com/en-us/help/2691237/orgdborgsettings-tool-for-microsoft-dynamics-crm

There is a setting here called: DoNotIgnoreInternalEmailToQueues which by default is set to False. So, if you uncheck the "Track email sent between to activities" and then set this to True, the system will not ignore your internal emails.

A small word of caution, OrgDBOrg settings are fringe (but still supported) settings which hence are probable not as tested as normal settings in D365. I would hence recommend that you only use OrgDBOrg setting in the case you need very specifically them.

Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Wednesday, February 01, 2017

Dev L300 Training in Stockholm!

George Doubinski is coming to Stockholm and he is going to be holding a very rare level 300 (= advanced) Dynamics 365 developer training.

George is an MVP and a good friend of mine and one of the bright beacons in the D365 community, co-founder of both http://crmtipoftheday.com/ and http://crm.audio/ . He is an excellent developer who told me that he is always striving to learning something new. Last he said his goal was to learn a new programming language every year. And to top that off, he is a great presentor and teacher as he is a lot of fun to listen to and almost none can match his skills when it comes to coding in Dynamics 365.

We at CRM-Konsulterna were very happy when we were able to convince him to come to Sweden and Stockholm and teach us some of what he knows! He lives in Australia so this doesn't happen often.

Read more about it here: https://www.eventbrite.co.uk/e/dynamics-365crm-developer-master-class-in-stockholm-with-george-doubinski-tickets-31443903562

Hope to see you there!

Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Wednesday, January 18, 2017

Warnings mean something - don't just click them away


Warnings like the one you see above, I often see in my customers systems when rudely looking over their shoulders. And what do they do? Call support and tell them that there is some weird error about email coming up and that there must be some error in the CRM-Exchange inter-server email synchronization mechanism? No. They don't. They ignore it. Totally. Every time. They typically get a bit annoyed every time and think the system is a bit crappy but they ignore it. And we as their CRM-partner might never know that there is anything wrong unless we have very deep monitoring of their system (has anyone built this? Would be a great tool! Tanguy to the rescue perhaps?)

Well, as you guessed I don't agree that you should just click away these error messages or actually any error messages. They usually mean something. In the case above, there is something wrong with the synchronization of emails, why emails that have be written and sent in CRM have not been delivered. Once fixed, these WILL be sent, which might be a bit problematic. Once, maybe 6 or 7 years ago, we had a customer who had had problems with synchronization of emails and hadn't told us. We got to know during our summer vacation (don't you always), and when we fixed it, the CRM system sent out loads of old emails to their customers. Which was not really appreciated. Well, we all do misstakes, but not all learn from them. So, do check which emails have Status Reason"Pending Send" as you can see in the picture below.


Having emails with this status for more than 24 hours is also what causes the alert at the top of this post. So, before fixing Server Side Sync, the Email Router or installing Outlook clients, do check this list to make sure that there are not a lot of old emails that will be sent to your customers and contacts. Advanced Find is very useful if you want to find them all, and not use the built in view that I am showing above.

Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Monday, December 12, 2016

Beware of Legacy forms and how to fix broken case forms after upgrade

Been working with the upgrade of a customer from CRM 2013 to CRM 2016 on-prem and we ran into this weird error. The case form didn't want to work after upgrade if we didn't turn of the turbo forms. For those of you who are not aware of this, in 2015 Spring wave, there was a revision of how forms were loaded, called the turbo forms. After this version there is a setting in the first tab of System Setting where you can turn on "Legacy form rendering" if you want to go back to the old rendering method.

However, we noticed some other strange errors, for instance bool fields with Yes/No values with No as default, were shown as "False" when the form was in create state. Once the form had been saved this error went away.

Another error we saw was that if you tried to save emails, (not send them), you got an error message. The email got saved anyway, but you got a nasty message.

However, if we switched back to turbo forms, both this email error and the bool-error disapeared. Hence, it seems the legacy form controls are not nearly as well quality tested as the turbo form versions so I would strongly suggest that you do not use them unless you have no other option, and then try to move away from them as soon as possible.

So, trying to stick to my paradigm for troubleshooting; "Find where the error is first, then what the error is" - I wanted to go back to the case entity and find out why the turbo forms didn't work.

Rickard and I, who were troubleshooting this together, enabled the dev-mode in IE (pressing F12, if you don't know it) and opened a case. The odd thing was that the point where it broke was in one of Microsoft's functions. I have been unable to recreate the error now so I cannot show it. And after some nitty gritty debugging in IE, we found that the script seemed to be missing "productid" and "primarycontactid" or in laymans terms, Product and Contact.

So, I added them to the case form, and magic! It worked.

But the story doesn't end there. As I thought that this might be a good blog article and I wanted to recreate the error to have as a screendump, I removed the fields again... and mark my surprise when the form still worked... twilightzone.

Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Sunday, November 20, 2016

Getting started with AppDesigner

During the CRM UG Summit I was approached in the Medic booth by two nice guys from Microsoft  who asked me if they could show me and get my opinion on a new feature of Dynamics 365. It was the AppDesigner. There had been so much hype around a lot of the other stuff (editable grids, editable grids, editable grids) that I hadn't noticed this and when they showed it and I had time to think about it I recognized that it is really a cool and useful feature that I think can do a lot of good in the system.

One of the things I try to evangelize about is to slim the system down, not "dumb it down" but make it slim, and efficient to what you are trying to do. Hence not include a lot of unnecessary stuff. The AppDesigner is excellent for this, it creates subsets of Dynamics 365 (not operations/financials) into what are called apps. With their own sitemaps, view sets, form sets, business process flow sets, chart sets.

I made another film about this, on how to enable and get going with it. Why not watch it?


Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Tuesday, November 01, 2016

Video - How to enable editable grids

So, time to try something new. I recorded a small screencast with SnagIt to show how easy it is to enable the awsome new feature Editable grids in Dynamics 365. So, please have a look and let me know what you think!


And yes, I know I keep saying CRM, and Dynamics CRM. I have been working with this product for more than 11 years now. It's going to take some time for this old dog to sit.

Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Dynamics 365 is up!

It is here!

I just spun up a trial of Dynamics 365! So do it yourself and go check out all the awsome cool functionality everyone has been talking about!

For now, this is news enough!


Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Monday, October 24, 2016

Extending Max amount of components on dashboards only for onprem

Some of you might have found some sites like this https://msdynamicscrmblog.wordpress.com/2014/05/23/how-to-change-the-dashboardsettings-of-maximum-controls-limit-in-dynamics-crm20112013/
one:
I, Soupeurfaive, via Wikimedia Commons

or even the original MSDN or Technet sites regarding how to be able to change the maximum amount of components on a dashboard from the maximum of 6 to for instance 8 using PowerShell.

On the MSDN and Technet pages there are some default CRM version text in the header and footer but make no misstake, you can only do this change in a CRM onprem environment where you are the deployment admin.

As the change is deployment wide and you need to have deployment administrator access rights, you are also extremely unlikely (unless you have a dedicated Online environment) to get that set.

Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Sunday, October 02, 2016

Dynamics 365 and the hopes for the Common Data Model

As many of you probably have heard Dynamics CRM will as of Nov 1 2016 be part of Dynamics 365 in a commendable push from Microsoft to bring the Dynamics products closer together. This is partly a branding thing as the products themselves, as Dynamics CRM, will still be the same product from a technical perspective, at least in the Enterprise Edition, (little is known of the Business Edition) and partly a technical concept as they are introducing something called the Common Data Model which is canonical data model (unified data model) to which all "Apps" are integrated to automatically. This is what I wanted to discuss some.

This all sounds great, and I will admit that I havn't had time to fiddle with it yet, but I have had the pleasure of working with quite a few integration projects between CRM and ERP. And that is not easy, even if you do have a ready made point-to-point integration. So I would just like to make a few points that I hope you do consider before switching it on and hoping it will solve all your issues.

1. Addresses in ERP and CRM are typically not the same. In ERP the addresses that are needed can typically be invoicing address and delivery address, while in CRM the most important addresses are visiting address and postal address. If you naivly presume these to be the same the effects can be dramatic and sometime even catastrophic. I friend of mine, Peter Björkmarker, told me a story of a company integrated just like this, and as CRM was set as the customer data master, it overwrote all invoice addresses in the ERP system with visiting addresses. Next month, all invoices which were sent out were automatically, without anyone noticing sent out to the wrong address, hence nobody paid them. The company got into an accute cashflow problem and almost filed for bankcrupcy. So this is no joke.

2. Ready built integration are usually on a technical level, but you expect it to work on a business level. Integration technology is usually about moving data, but just having the data in the other system doesn't always DO anything. An example is if you have a boolean field on the customer in the ERP where the financial people can block the customer from further business if they havn't payed their invoices. So you integrate this field to CRM and can now see it on the account form. But without any additional logic in CRM it will still be possible to create opportunities, quotes and orders. Maybe not what you would like.

3. Data structures are different. My colleague Rickard Norström, whose blog you can find in the list to the right, was part of a CRM project which integrated to Dyn AX. One of their issues was the AX address data structure. An address record in AX can be used by both an account and a contact, And I think even several accounts. When this address is changed, of course this is seen in all affected places. As this is very different from the customeraddress built in logic in CRM they had to create their own new address entity to solve this. Other typical areas where there are large differences are in the logic of setting prices on opps/quotes/order. As you can expect, a system like AX with MPC and many other deep links into costs can of course use that as a base for pricing, something that is very hard for CRM. It also has more complex or just different ways of handling pricelists. I was working with an iScala integration and iScala for instance can have a current price in a pricelist and a comming price with a specified date on which the new price will be enforced. However, no event in the system will trigger at that time. Customer specific pricelists are also something that occur, not advisable but existing especially for larger customer accounts.

4. Centralized integration architecture. The Common Data Model sounds great but it only handles two of the components in the Business system infrastructure. If you for instance are a Telco the amount of business systems will be a lot more, billing systems, provisioning system, logistic systems, product configurators, etc. Banks are also complex worlds. Many of these have tried to consolidate their integrations to integration hub technologies like WebSphere or BizTalk and if done properly they will of course have their company defined canonical data model. It would be interesting to see the story of how the Common Data Model works together with this. It probably can by shuffeling data using Logic Apps to and from the CDM, but in essence you will have two hubs to orcestrate. Another option is of course to use the CDM as the central hub for all information, as long as that is extendable and doable. So, from this perspective, the main issue is probably, if we have 8 systems connected to our existing integration hub, is it plausible to use the CDM or do we manually integrate anyway directly to each application?

To conclude, I think the CDM will be a good tool but I will keep my expectation to a reasonable level and I recommend you do this too. Do not think it will make your highly customized CRM and AX automatically integrate all data and make it work from a business perspective, that would simply be too increadible. If they manage that, I will buy the entire team building CDM a beer (or similar).

Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Monday, September 12, 2016

xRMVirtual Presentation

By Charlotte S H Jensen - Flickr: Maskiner på Brede Værk, CC BY-SA 2.0,
https://commons.wikimedia.org/w/index.php?curid=20868496
Ever thought about the fact that there nowdays are so many ways that you can create logic in CRM?
Or did you start with callouts in CRM 3 and then learnt plugins in CRM 4 and have stuck with those, I mean, why change?

If you are interested in discussing this and listening on my views, join me on September the 27:th at 9:00 PST/18:00 CET when I will be presenting on xRMVirtual on this topic.

Hope to see you there!

Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Monday, June 13, 2016

Microsoft + LinkedIn == True

Todays biggest news in the Microsoft sphere is of course that Microsoft is to aquire LinkedIn for the
astronomical sum of $26.2 billion. This is hopefully great news for us in the Dynamics CRM world as LinkedIn have during the last couple of years been very protective of their data by not opening up, even with payed subscriptions, their API:s for integrations.

Imagine how cool CRM married with LinkedIn data looped through Azure ML would be when trying to find out how to get a good entry point on a opportunity. And that's just the beginning. Let's see what Microsoft does with this. They have a few dollors of synergy to win back.

http://news.microsoft.com/2016/06/13/microsoft-to-acquire-linkedin/#sm.000005b8xzynywdhe10mp9ndvkv8e


Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Sunday, June 12, 2016

New colleague blogging!

Sofia Sparr
I love when the community grows. I was recently at eXtreme CRM in Warsaw and talked a lot to
people about trying to share to the community and of course this is also something I advocate a lot to the people I work closest with.

My close colleague Rickard Norström has a popular blog on which he shares some of his insights from his work and now another colleague has chosen to join the merry gang of bloggers at CRM-Konsulterna, something that I of course have to tell the world about.

Her name is Sofia Sparr and she is a technical application consultant who also does project management. She focuses on marketing areas in our company, but will of course work with CRM in general as well. Due to this fact, she is certified in ClickDimensions, and will share some of her insights in that product and how it works in real life with you. Make sure you head over to her blog and check it out! Sofia's Blog

Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se

Sunday, May 29, 2016

Which browsers are actually supported?

I sometimes get people complaining to me that CRM doesn't work in Firefox. What i usually ask them when I hear this if they are running Mac, which of course is the reason why it isn't working. 

The simple fact is that Firefox isn't supported for Mac. The only supported browser for Mac OS X is Safari. And Safari isn't supported for PC.
Below is a simple matrix showing the support matrix for the browsers (for CRM 2016).


Windows 7
Windows 8/8.1
Windows 10
Mac OS X
IPad
Google Nexus 10 Tablet
IE 10






IE 11






Edge






Firefox






Chrome






Safari






Green = Supported, Red = Not supported, Grey = Not applicable

However, do note that there is a difference between "not working" and "not supported". The latter just means that you can't open a support case with Microsoft and complain that CRM looks weird in some of the non supported combinations described above.

So why is this? Are Microsoft just lazy? No, Just like everyone else, they have a limited amount of time, money and resources. So, they can't test all possible combinations unless the price of Dynamics CRM were to go through the roof, and I think we all agree that we prefer it not to.

Do refer to the official documentation from Microsoft on what is supported for more detailed information.


Gustaf Westerlund
MVP, Founder and CTO at CRM-konsulterna AB
www.crmkonsulterna.se