GDPR and October Update of Dynamics 365, that is what has been the main take away from today for me at CRM UG Summit, (UG is User Group for those who do not know.)
I have discussed GDPR a lot with a lot of different people here, some more in tune with what it is about than others and some not even realizing that it will affect all companies in the US having EU Citizens in their systems.
And of course the new release of Dynamice 365, called October Update or version 9.0 for those of us who like to be clear about what we are talking about.
I will come back to some of the details, for now I will leave you with some recordings I made.
Gustaf Westerlund MVP, Founder and Principal Consultant at CRM-konsulterna AB www.crmkonsulterna.se
As many of you probably have noticed version 9.0 has just been released. If you havn’t, spin up a trial by clicking here: New Trial
It has a very nice and shiny UI which I really think you should try and some very other very nice new features. However, you should be a bit wary of using it in production environments just yet as there seems to be a bit too many serious bugs as described in this document:
I am working with a customer and we have a specific non-production instance we call “sandbox” which we use to test apps and features outside of the ALM (application lifecycle management) process, so we installed v9 or July Update as it is called and tried it out.
What I found when trying to deploy our unmanaged customization with all the entities which we have changed in the project, was that I got the weirdest error, it complained that it was missing an internal Microsoft Web Resource with the name of: “CampaignActivity_main_system_library.js”
So, I opened up the customization.xml (yes, all you oldtimers from CRM 3.0 time remember it as the true export file) and searched for the guid and the web resource name in the file. I found that it was actually used on the main form of Compaign Activitiy, and if you look at the read-me document I have linked above, it mentions that the Campaign Activity is one of the entities which does not work. Hence, there is probably some old code in there that Microsoft have decided to remove, and havn’t had time to replace.
So, the temporary fix to get our solution to work in Dynamics 365 v9.0 (July Release), go into the customization.xml and then manually remove all <Event> tags which include that webresource, and if the <Events> tag was empty, remove that too. Then put the customization.xml file back into the solution file and reimport it.
The campaign activity still won’t work but at least our solution imported. Perhaps there are similar issues with other entities.
I will expect this issue to go away very soon.
And on the issue of if it is ok and supported to manually edit (hack) the customization.xml file I am under the impression that it is as long as it actually import into a system without any forceful shoehorning as it is up to Dyn365 to validate it.
On monday, I will be heading to CRM UG Summit in Nashville which is sure to be a great trip. I am planning to try to make some video there which I will post here and on my Youtube, and don’t miss my session on if it is really is a fair fight to compare Online with Onprem? Guess what I will say?
Gustaf Westerlund MVP, Founder and Principal Consultant at CRM-konsulterna AB www.crmkonsulterna.se
When authenticating to Dyn 365 with S2S the following is a simple program using the S2S authentication which core I think I got originally got from my pal George Doubinski. I like to use it to test S2S. Very clean and easy to build on. string organizationUrl = “<org url>”;string clientId = “<client id in Azure>”;string appKey = “<secret for the clientid>”;string aadInstance = “https://login.microsoftonline.com/”;string tenantID = “<contoso or whateveryouhave>.onmicrosoft.com”; ClientCredential clientcred = new ClientCredential(clientId, appKey);AuthenticationContext authenticationContext = new AuthenticationContext(aadInstance + tenantID);AuthenticationResult authenticationResult = authenticationContext.AcquireToken(organizationUrl, clientcred);var requestedToken = authenticationResult.AccessToken;
using (OrganizationWebProxyClient sdkService = new OrganizationWebProxyClient(GetServiceUrl(organizationUrl), false)){sdkService.HeaderToken = requestedToken;OrganizationRequest request = new OrganizationRequest(); WhoAmIResponse response = sdkService.Execute(new WhoAmIRequest()) as WhoAmIResponse;
Console.WriteLine($”UserID:{response.UserId}”);Console.WriteLine(“Press any key to continue…”);Console.ReadKey();
} However, the line: AuthenticationResult authenticationResult = authenticationContext.AcquireToken(organizationUrl, clientcred);
Cloud computing – isn’t it great?
Requires ADAL version 2.x and the method AquireToken has been removed in the later version of that library.
If you look around the net, many advocate staying on 2.x version of the library but I didn’t have that option as I was integrating with Dyn 365 Operations and that was using the ver 3.x.
So, to make this work in version 3.x you just have to make a simple fix:
Have been trying to install Voice of the customer for one of my customers. As with larger customers, and of course, many of the smaller ones too, I am not allowed to (and I don’t really want to) be the global admin in their Office 365. I am however a Dynamics 365 Service Admin, which I think is fair.
So I was trying to provision Voice of the Customer (VoC) but it failed and after many weird loops and dances with support, of which I will not mention here, I finally got hold of Microsoft support and they were able to tell me that not only did I need to get hold of one of the global admins (you know, one of the scary pale guys who they lock in a safe somewhere cause god knows what would happen if they stepped in front of a car…) but the user also needs to have a full plan 1 Dynamics 365 license.
Said and done, we allocated it, and restarted the installation – do remember that you have to install VoC from the “Applications” tab, and not only as a Solution.
So, quick recap: To install VoC, you need: – Dynamics 365 online instance – User with Dynamics 365 Plan 1 license – Same user with Global Admin rights
Today I was informed that this blog was awarded among many other very great sites, as one of the 25 top Dynamics CRM Sites of the World by the site Dynamics101. It is of course a great honor that someone acknowledges the work that I and all the other people on the list have done and I would also like to encourage all that were not on the list that you might very well have been nr 26 so keep pushing and you will soon get there! I personally have been running this blog since May 2006 so it I will soon be celebrating 10 year and it is amazing to see that there are still posts from 2009 that are popular.
I was also very happy to see that my friend and colleague Rickard Norström’s blog was also on this list. My warmest congratulations to your achievment!
Some of you who read this blog are probably consultants and find it strange (or stupid) that I should share my knowledge with you and others on this blog and in the forums that I attend (mostly the swedish forum www.itproffs.se). Some other find it strange that I wont give answers to certain questions, so I thought I might clear things up a bit by describing my thoughts on what to blog on and what not.
In general, I will blog on topics that are non-customer specific, meaning that I will discuss common problems, design patterns, installation issues, tips and tricks. I might also discuss a specific solution in the aspect that it might be of interest for other implementors as inspiration. However, specific customer problems that are very unlikely to happen in other environments, customer specific analysis and designs are what I do for a living. I will not blog on these topics, in more than a general sense.
So, I will be more than happy to share my thoughts on common issues and if you want my opinion on any of those, please comment my blog or send me an email at gustaf (a) humandata.se.
I apply the same rules for postings in forums meaning that I will not answer questions like: “We are a company that has 50 emplyees with 10 inside sales and 4 outside sales. How should we configure CRM?”. This question can only be answered by doing a deeper analysis of how the companys sales processes (and other processes) work, and the answer is a CRM design. The same question but focused on which license or what hardware would be needed, is more of a general question and this I could discuss.
Of course there will always be gray areas and I will leave this to my judgement and I hope you will respect this.
As for commenting, your chances are a lot greater if your comments are not anonymous. I also like to quote my grandfather who used to say: “It is better to drive a strong point than strong language (freely translated from Swedish)” meaning that harsh language will get you nowhere.
Recent Comments