Sonoma Partners Microsoft CRM and Salesforce Blog

Dynamics 365 Defect: Cannot Create Emails in Unified Interface

Today's blog post was written by Angel Shishkov, Principal Developer at Sonoma Partners.

Version 9 of Dynamics 365 is out and available for new customers. One of the new features released is a completely new interface called the “Unified Interface” with the goal of standardizing the look and feel between different clients – web, phone, tablet, etc. This interface is brand new and obviously will have some issues to work through, however there is a particularly serious problem on Mobile clients.

One of the most obvious (and strange) problems in the Unified Interface is that it does not allow the user to create emails in CRM. The email activity is conspicuously missing from the quick create plus button in the top nav bar, the Activities ribbon, and the new Notes Pane (previous Activities Pane). Just to make sure that we hadn’t somehow hidden or lost the email activity create buttons, I constructed a URL that would normally open a new email form. A blank page opens with this message.


It looks like the email activity has been deliberately made read-only in the Unified Interface. We opened a support case with Microsoft, and they confirmed this is a defect and will be scheduled for a fix in the future. As of now, there is no ETA on the fix.

Script Errors

Another common issue we have seen in the Unified Interface is a lot of script errors, especially when a custom script web resource is attached to the form. The errors usually come from native script libraries, such as uclient/scripts/app.js, however some errors come directly from the XRM methods as well, such as Xrm.WebApi.retrieveRecord. These are reproducible from multiple clients – browser, phone and outlook, so it seems to be a problem specific to the Unified Interface. Microsoft support has noted that the product team is working through those as they find them.

Mobile Clients are forced into Unified Interface in v9

These errors will be fixed in time, so they are not a big concern. The problem is that with v9, the “Dynamics 365 for phones” mobile client forces the use of the Unified Interface. The previous version of the mobile client worked based on CRM “apps”, where an app was created in CRM that defined the sitemap, and entities, forms, dashboards available. It was a way to create a subset of CRM that was available to select users. The mobile client then used the Web interfaces and forms built for those apps to display its content. With v9, the mobile client will only display apps created for the Unified Interface. It is no longer an option to use Web Interface apps on the mobile client and they are not visible there. For one, this means you will need to re-create any CRM apps you are using on mobile currently, as your old apps will disappear from the mobile client. More importantly, this means that any bugs and limitations of the Unified Interface are automatically carried over into the current “Dynamics 365 for phones” mobile client and there is no choice or workaround to turn that off. This was reproduced and confirmed by Microsoft Premier Support working with the product team and confirmed as a feature in v9.

Normally when a feature is removed from Dynamics, there is a depreciation notice and a grace period during which customers can make adjustments before the feature is completely removed, however there was no deprecation notice for the Web interface being removed from mobile. Hopefully the issues with the Unified Interface are fixed quickly, so that there is less of an impact as customers begin upgrading to the latest version.

Topics: Microsoft Dynamics 365

iPhone Tip with the Dynamics 365 Mobile Client

Apple's recent iOS 11 update came with an interesting regression bug of how to autocorrect the letter i, even getting a parody on Jimmy Fallon (skip to the 2:34 mark). The bug is now corrected in a recent patch, but the original work was to use the iOS text replacement feature. This reminded me of how I use this feature to autocomplete CRM URLs and email addresses to make my login experience with the Dynamics 365 mobile client a better experience.

If you use the Dynamics 365 (online), version 9.0 then you get a nice prompt for your credentials (saving you having to type in your email address every time you wish to sign in). However, Sonoma Partners uses federation with our Dynamics 365 Online instance, and we are presented with the old school user name/password page. It was getting really annoying for me to type in on an iPhone keyboard. Moreover, I have multiple online environments I test, so I wanted a way to more quickly shortcut those deployment's URLs.

Enter Text Replacement.

Tap the Settings icon, select General, then tap Keyboard.

Then tap Text Replacement.

Now create your shortcuts. I have some setup for different domain url's, different email addresses, and for some reason left the default "On my way!" in there too!


Now when I setup my Dynamics 365 mobile application, I simply use my new shortcuts for the URL and email address.

SNAGHTML1e0ef4df SNAGHTML1e108330

Of course this shortcut technique works for any text field in an iPhone application, so use it as needed.

Topics: Enterprise Mobility Microsoft Dynamics 365

Power BI Accelerator for XRM Toolbox

Today's blog post and tool were developed and written by Keith Mescha, Principal Architect at Sonoma Partners.

The Dynamics CRM community asked, so we are delivering.

Power BI Accelerator for the XRM Toolbox is now available for download from our website.

If you are implementing or supporting a Dynamics CRM implementation and don’t know about XRM Toolbox then push that rock off you and go read this first.

Powerbi xrm1

In case you missed it back in June we release a tool for helping you with using your Dynamics data in Power BI. Please read the original blog post for more details or watch our video overview on our You Tube Channel. Additionally, I was recently asked to speak about this on the CRM Audio podcast. The community response to this original tool was great and we received some great feedback which we have incorporated into the current build (v1.1.8).

Many folks, including a couple we ran into at the CRMUG Summit last month have asked us to build a version for XRM Toolbox. One huge advantage of this is that you don’t have to be a CRM admin in an org to generate Power BI queries. Seeing that our original implementation was solution driven you had to have access to the Setup portion of Dynamics.

Now with this new XRM Toolbox Plugin you can use that framework to connect to any org you have access to and generate the Power BI queries you need without having admin access to the org. You also don’t need to install anything into your org to utilize this version as you do with the managed solution version.

All the prior fixes in the managed solution version are included in this 1.0 release. As will all first releases there are some known issues but we wanted to get it out so you can start to benefit immediately. Happy to take any feedback via comments to this post and we will do what we can to continue to enhance the plugin over time and release new versions.

The plugin can be downloaded on our website for you to try out. We hope to get this into the Plugin Store soon but for now it’s a manual install with 2 easy steps.

  1. Download/Run XrmToolbox on your machine if you haven’t already to generate the plugins folder.
  2. Place the DLL in %appdata%\MscrmTools\XrmToolBox\Plugins.
    1. %appdata% is C:\Users\<username>\AppData\Roaming\ if it’s for some reason unbound on your machine.

Once installed you can connect to your org just like any other XRM Toolbox plugin. Upon connection, you can press the “Retrieve Entities” button. From there the interface is very similar to what is spelled out in the original blog post.

Generate a query in 3 easy steps

  • Pick an entity
  • Choose a view
  • Click Generate

Powerbi xrm2

After you click Generate you are presented with a screen that allows you to copy the queries into Power BI Desktop Directly. If you used the previous solution you will notice we cleaned up the query generated in this version so it’s bit easier to read and debug.

Powerbi xrm3

From here normal Power BI modeling best practices kick and you should have some reports and dashboards up and rolling in no time.

Please be aware of a few small known issues we have on our list to address in the near future.

  1. The user is required to hit Retrieve Entities once they load the tool and connect to an Org.
  2. There are some performance issues with drawing the attribute checkboxes where the page freezes for larger entities with many attributes.
  3. Personal/System Views are in the same drop down and not split out so it’s not apparent they are all there.

We are happy to assist in your BI projects and have a team of data professionals ready to assist you as you extend your Dynamics system to other O365 offerings like Power BI.

Topics: Analytics Microsoft Dynamics 365

9 Wins for Manufacturers Using Mobile CRM - Part 1: Surface Info that Matters

Today’s blog post was written by Kayla Silverstein, Marketing Specialist at Sonoma Partners.

To keep up with today’s rapidly paced market, manufacturers must push their products at the right moment, in the right place, at the right time. Your field sellers are doing the best they can to stay on-the-move and in the field, talking to and meeting with potential customers. You need a customer relationship management (CRM) system that’s just as mobile as they are to track activities, pipeline, and progress to capitalize on your team in the field.

Over the next few weeks, we’ll share nine key wins for manufacturing companies using mobile CRM solutions.

Are you a manufacturing company with a field sales team? These nine wins should have you considering an investment in a mobile application sooner than later.

1. Surface the information that matters.

The old days of field selling are gone. No more printed excel sheets, spiral bound notebooks, or  wrinkled pages of contact information. With today’s technology you can access information on-the-go, anytime, anywhere.


Tracking quality, inventory, quotes, and individual client information… there’s a lot that a field sales rep is responsible for when meeting with customers on the road. When time is of the essence (as it always is), you need to be able to access all of this in one place. Don’t waste time working in disparate systems and spending minutes (and energy) navigating between windows. A mobile application that surfaces the information you need – when you need it – can leave you, and your team, with more time and resources to turn a greater profit.

Consider an Integration

An application designed for the field can help you surface critical data from a variety of systems, such as historical sales data, product catalogs, pricing information, and more. For example, you can utilize an integration with a back-end content database to surface product catalogs when meeting with potential clients onsite.

Consider an integration with your ERP system to display critical financial data within CRM. Without a clear CRM and ERP integration strategy, your organization might not be realizing its full potential in the marketplace. With an integration, you will reduce the amount of process steps, increase efficiencies, reduce errors when inputting data, all while providing your key stakeholders with a true 360-degree view of your customers in a single solution.

With complete visibility into each and every opportunity, you can save time clicking and updating your disparate systems and spend more time selling. If your customer information is stored in a variety of email systems and spreadsheets across your different offices, your customer service efforts also become inconsistent, translating to lost sales and unhappy customers. Enable your sales staff to deliver exactly what the customer needs exactly when it’s needed.

Customer Example: New Belgium Brewery

New Belgium Brewery worked with Sonoma Partners to help their field sales team (also known as “Beer Rangers”) provide the best service to their customers in the field. We created a touch-based mobile application to provide them with easy-to-access customer data when they needed it most.

Functionality on the Road

In today’s highly mobile and data-centric world, access to information on-the-go is not only necessary, but expected. A consulting partner can help you access your CRM data via a mobile application, while supporting a range of mobile devices and dashboards tailored for ease-of-use in remote locations.

Stay tuned for more wins for manufacturers who invest in a CRM mobile application. If you’re interested in learning what might be possible at your organization, contact us.

Topics: CRM for Manufacturing Enterprise Mobility

Columbia Distributing Taps into More Effective Sales Management and Operations with CRM

Today's customer success story and interview were completed by Kayla Silverstein, Marketing Specialist at Sonoma Partners.

Based in Portland, Oregon, Columbia Distributing serves a customer base of retailers and restauranteurs throughout the Pacific Northwest. Well-known for offering a diverse portfolio of both alcoholic and non-alcoholic beverages, they are one of the country’s largest malt beverage distributors and employ approximately 3,100 people.

Columbia Distributing has 300 sales people who are out in the field for a majority of the day. A large part of their work involves completing onsite surveys to assess how the stores and bars display their products. Columbia initially hired a different partner to integrate Dynamics 365 with a custom iOS mobile application. They found this previous partner to be unresponsive and unable to fix their many existing bugs within the application. The leadership team decided to improve the app and invest in a new partnership with Sonoma Partners to successfully meet the following needs:

  • They needed a data tracking tool to effectively share valuable information, such as consumption rates and in-store marketing efforts with their suppliers. Their previous tool was unstable and made it difficult to extract data, sometimes requiring weeks of work.
  • They needed a standardized process to conduct on-site surveys. The team responsible for visiting distribution sites found tracking quality control difficult to evaluate.

Columbia Distributing wanted to equip their sales team with a tool to help them perform their jobs more effectively.

We sat down with Project Manager Alyssa Wood to learn more about the project, the importance of tracking customer data in Dynamics 365, and the new and improved mobile application at Columbia Distributing:

Why is CRM important to Columbia Distributing?

Alyssa: CRM is the only way to truly analyze our data to understand what is and isn’t working for us. We have certain methods of tracking our products and supplier relationships, and CRM allows us to do so with a complete 360-view, recording and analyzing our sales process. We can’t be everywhere at once – with so many field sellers collecting data, we have to have a tool that presents all of this information in one place. Making an investment into CRM was an obvious move for us as it gives us the ability to deliver consistent, exceptional products to our customers while analyzing how we can be better.

How have your data efforts improved with the deployment of the new application and its integration with CRM?

Alyssa: We’ve streamlined our data collection process. Before, each branch collected data differently. We would get data from one branch in one form, but receive a completely different subset of data from another form. We wanted to make sure everyone used the same survey and delivered data in the same method. This effort also improves the quality of our data. Our sellers report in real-time using the mobile application. This means they don’t have to wait until they get back to the office, eliminating the risk that they might forget to log something.

Columbia-sonoma (002)

Before, taking these onsite surveys was an incredibly manual process. The reps had no product information at their fingertips. With standardized screens and preprogrammed options to choose from, the reps can differentiate products based on what they’re seeing on tap. With the data collection process controlled and consistent, we can see how we’re performing as an entire company rather than just on a granular, rep vs. rep scale.

How does that help Columbia Distributing?

Alyssa: We can now extract and compile the data and truly compare apples to apples to understand our analytics and performance in the field as a company. All of this helps our analytics team to understand what’s going on in the field, to help forecast sales more accurately, and so forth.

How does this impact management?

Alyssa: A single, easy-to-read dashboard helps management better oversee and direct our sales teams. Our sales reps are held accountable for the information they’re collecting. One dashboard shows the number of surveys per site completed by a rep. If this percentage is low, we can have a conversation about it with the seller. This visibility didn’t exist before and there was no way to hold our reps accountable.

What problems have you been able to solve with a reinvestment in CRM and the enhanced mobile application?

Alyssa: We now have a platform we can build on. In the future, we’ll have the ability to provide more granular surveys to collect more data specific to where it is collected. Now that we have the groundwork built with this application and the connection to CRM, we can start optimizing and improving the application.

How are you using the data you’re collecting?

Alyssa: Not only does CRM help us track the performance of our sales reps, but we’re now able to see trends and opportunities as a company at a higher level. We look forward to being able to leverage this tool in the future – once we’ve collected a years-worth of information, for example – to take a clear snapshot of how things have improved pre-/post- project. But I can say, that the sheer amount of data we have to analyze is so much greater. We’re optimistic we’ll have some very valuable insights in the months ahead.

What efforts did you use to boost user adoption of the new application?

Alyssa: We’ve learned the value in having leadership drive a project like this. Reporting is part of the job. If leadership positions it this way, and says the reps have to do this as part of their jobs, it’s powerful. The dashboards help our adoption levels too.

What was the hardest decision you had to make during the implementation process?

Alyssa: The hardest decision during this process was knowing when to go live. There’s only so much we can test on our own and plan for, but ultimately, pushing it live and giving the sales reps access gave us far more to go off in terms of improving the system than we could have without going live. Our business has adapted well, and we have feedback loops in place to make sure we’re keeping track of what we can improve in the future.

How does CRM help Columbia Distributing better compete in your industry?

Alyssa: It’s a competitive business; there’s only so much grocery store shelf space or tap handles in a bar. To keep up, you have to be strategic in how you’re presenting your product to your consumers. We need to constantly evaluate our work and be positioned to collect data, analyze it, and act on those insights. CRM allows us to do this.

What was it like working with Sonoma Partners?

Alyssa: We’ve really enjoyed working with Sonoma Partners. I found the team incredibly knowledgeable; they clearly know their stuff when it comes to CRM. Whenever questions would come up or there were problems we weren’t sure how to tackle; Sonoma was there to answer them all. It felt like having a translator. I’m rather new to CRM and we have a lot of non-technical sellers who didn’t understand the system initially. Sonoma bridged this gap effortlessly. In working with our previous partner, we sometimes felt like we were speaking two different languages. I never felt that way working with Sonoma Partners because of how well they got to know our business.

Columbia.sonoma (002)

What interested you in working with Sonoma Partners?

Alyssa: During one of our initial conversations with Sonoma Partners, they showed us the Ranger App they built for New Belgium Brewery. Immediately I thought: that’s it! That’s what our sellers need. In the demo, I saw how the app changed throughout the project with New Belgium, and seeing this phased approach made me even more confident that this partnership would be a good fit. Sonoma Partners knows the food and beverage industry and CRM. We made a great decision in switching partners.

What do you think the future is for Columbia Distributing, mobile applications, and CRM?

Alyssa: Now that we can see CRM and the mobile application used the way it’s supposed to be, I’m optimistic that we have only just begun our CRM program as an organization. Even in just a few months of having the application in the field, I’ve already heard from the sales reps how they want the app improved and added to. Management has their own list of asks. I think we’ll continue to evolve and build upon our platform to make sure that we’re continuing to provide value and quality products to our suppliers.

CRM puts us in a strategic mindset. We can already see what we’ve learned from the data we’ve collected thus far. Just imagine what else we could be tracking at our organization and what we could learn from that data, etc. It’s pushed us to be more strategic and given us the tool to do so.


Our thanks to Alyssa for taking the time to sit down with us to discuss their project with us.

Are you interested in learning about how a mobile application could help your sellers in the field? Contact us.

Topics: CRM for Manufacturing Microsoft Dynamics 365

D365 v9 Unified Interface Icons

If you’ve had a chance to play around with the new release of Dynamics 365 and dove into the new Unified Interface, you might’ve noticed that custom icons (whether entity or ribbon buttons) are all defaulted to a puzzle piece. This is due to a new Vector image format (SVG) that D365 supports in the latest release. The standard web interface will use the old image formats and Unified Interface will only use the SVG format so you will need to provide icons in both image formats if you plan on using the Unified Interface.

So how do we update our icons? First, create a web resource like normal and you will notice a new Type of Vector format (SVG). Select this and upload your SVG icon.


If you’re wondering how to create an SVG icon, I highly recommend SyncFusion’s Metro Studio app. There is a lot of great icons and you can easily edit them to how D365 expects and export them to many different formats.

In Metro Studio, find an icon you like and set the Height and Width to 32px with a padding of 0px. Select the transparent Background Shape (checkered box on the far right). For entity icons you will want to have an Icon Color of black (#FF000000) and D365 will automatically set the color to how it should be. I have noticed however that currently ribbon button icons will not automatically set the color so you should set the Icon Color to white (#FFFFFFFF) for ribbon icons.


Once you have the right settings, click Export and select Scalable Vector Graphics (*.svg) as the Save as type.


Now that you have your SVG icon uploaded as a web resource, head to your Entity customization and select “Update Icons” at the top. You will be able to upload entity icons like normal but there will now be a second tab called “Unified Interface” where you can select your new SVG icon.


Now we can check out our new icon in the Unified Interface. Use the App selector to navigate to an app where Unified Interface is enabled.


Now your custom entity icon will display correctly instead of using the default puzzle piece icon.


With custom ribbon buttons, as stated earlier, currently D365 does not automatically change the foreground color so we need to set it to white to be consistent with the native UI. Using the wonderful Ribbon Workbench, just set the ModernImage property of your button to your new SVG web resource.


Our new SVG icon in the Unified Interface:


Now your icons are all set in both the Web and Unified Interface!

Topics: Microsoft Dynamics 365 Microsoft Dynamics CRM Microsoft Dynamics CRM Online

Struck by Lightning: 5 Reasons We're Excited for New Winter '18 Service Features

Today's blog post was written by Sarah Parise, Consultant at Sonoma Partners.

At Sonoma Partners we're excited about new Salesforce releases, but we're super excited about the Winter ’18 enhancements for Service Cloud!

For organizations that have been holding off on moving to Lightning because of Service Cloud Lightning limitations, this is a big release.

Several key features, including Omni-Channel, Live Agent, and Milestones could mean its time to make the transition. Check out why we’re excited about each of these features in our top 5 Winter 18 Service Cloud enhancements!

5. Ability to Clone Cases in Lightning

Customers ask for this feature a lot, and it was previously not possible without custom code in Lightning. Now your agents can clone and create multiple cases for the same customer easier and faster than before.

4. Advanced Email Sending Options

Although you could send out Case Emails within the Lighting Console prior to the Winter ’18 release, there are new features that make the experience a whole lot easier:

  • Your Classic Email Templates are now available in Lightning, meaning you can continue to manage your already existing templates in Classic and push them out to your agents.
  • Agents can enter merge fields on the fly – no need to remember or click through Salesforce to remember a customer’s account, or other information. Now agents can use merge fields and have the system fill in the details for them.
  • You can preview emails with their merge fields before you send them out.
  • Additional editing options if your agents change their mind – remove files, revert emails to previous state, and more.
  • Create custom actions to send emails that automatically CC or BCC certain users or case contacts, such as a Financial Contact or a manager.
Email Component in Lightning


3. Running Macros from the Macro Utility bar in Lighting

Macros help your service agents automate the repetitive tasks they do within Salesforce. For example, say your service agents get the same questions over and over again about a blinking light on their refridgerator. Normally an agent would  go  into a case, send an email, update the case topic, and then update the cases’s status to indicate that they’ve responded to the customer. They could do this over and over again each day. With a Macro, all they would have to do to complete these multiple items is click the “Blinking Fridge” Macro, and Salesforce would take care of each of those steps for the agent. Time instantly saved!


Macro Utility (lower left corner) and upcoming Milestones (upper right corner) [click image to zoom]

2. Milestones and Entitlements in the Lightning Console Widget

For accounts that use or want to use Salesforce Entitlements and Milestones to track and enforce their Service Level Agreement, you can now display the Milestone Timers as a component on your Lightning pages and as feed items within the Lightning Console.

Show agents whether they are approaching a deadline for any case milestone, such as case responses, sending parts or information, or following up with a customer. Currently, the milestone component can only be added to Cases in the Lightning console, not work orders.

1. Omni-Channel and Live Agent within the Lightning Console

Transfer your existing Live Agent and Omni Channel Routings to the Lightning Console with just a few clicks. Just add the Omni-Channel widget to your and customize the Lightning page for Chat Sessions.

Incoming Cases in the Omni-Channel Lightning Widget


Take advantage of the new larger Chat Window, and the ability to customize the chat component and related contact, previous chat, and case components within the Console. If you are using Live Agent but haven’t switched to routing your Live Agent Chats through Omni-Channel yet, you will need to do so as part of the Lighting Transition process.

With these new key service features available in Lightning now has never been a better time to think about making the switch. Reach out to us to find out more about how we can help you move your Service Setup to Lightning!

Topics: Salesforce

Implementing Machine Learning in D365 – Part 2

This post is the final part of our two-part series on Implementing Machine Learning in D365. Head here to read part one if you haven’t been following along yet.

In part one, we built an Azure Machine Learning (AML) algorithm against our Opportunity data in D365 to come up with a probability that the Opportunity will win. In this post, we will use AML to generate a web service for us and then we will use Microsoft Flow to retrieve the probability and update newly created Opportunities with the value.

Within AML, after you successfully ran the experiment, select Set Up Web Service –> Predictive Web Service


Once it is finished, you will then have to click Run to go through the experiment again. Once that is finished you can click Deploy Web Service –> Deploy Web Service [New] Preview. You will have to create a new Price Plan (fortunately there is a free one with 1,000 transactions) and then click Deploy. Once it is deployed, you will want to click Use Web Service. On the next page you will want to make note of the Primary Key and Request-Response values as we will need this shortly.


Next, head over to Microsoft Flow and sign in with a Microsoft account. Click “Create from blank” and then search for the “When a record is created” for D365 trigger.


You will need to authenticate to D365, select your organization and then select the Opportunities entity.


Click + New step –> Add an action. Search for and select the “HTTP – HTTP” connector. We will use this to call our AML web service that we just deployed earlier. Set the Method to Post and the Uri to the value of the “Request-Response” that we noted earlier from AML. Next, add a header and set the key to ‘Authorization’ and set the value to ‘Bearer xxx’ where ‘xxx’ is the value of “Primary Key” that we noted earlier from AML. Then add a new header value with a key “Content-Type” and value “application/json”. Lastly, set the Body to the following:

    “Inputs”: {
        “input1: [
            “description”: <description>,
            “estimatedvalue”: <estimatedvalue>,
            “statecode”: 0
    “GlobalParameters”: {}

Using the dynamic content helper on the right, replace <description> from the Body by selecting Description from the list of dynamic content. Do the same for the <estimatedvalue> so that the whole HTTP action looks like the following screenshot:


Next, click + New Step –> Add an action and select Parse JSON. Using the dynamic content helper, set the Content field to the Body from the HTTP action. Set the Schema field to the following text:

            "type": "object",
            "properties": {
                "Results": {
                    "type": "object",
                    "properties": {
                        "output1": {
                            "type": "array",
                            "items": {
                                "type": "object",
                                "properties": {
                                    "estimatedvalue": {
                                        "type": "string"
                                    "description": {
                                        "type": "string"
                                    "statecode": {
                                        "type": "string"
                                    "Scored Labels": {
                                        "type": "string"
                                    "Scored Probabilities": {
                                        "type": "string"
                                "required": [
                                    "Scored Labels",
                                    "Scored Probabilities"


This will help parse the response from the AML web service call so we can get to the actual probability value that is returned.

Lastly, click + New Step –> Add an action and select the “Update a record (V2)” for D365. Set your organization and the Opportunities entity again. Then using the dynamic content helper, set the required fields to the respective values from our first trigger from D365. For the probability, I created a custom Decimal field called Predicted Probability. This field will show up in the “Show advanced options” section in Flow. Click that and find the Predicted Probability field and set the expression to the following:

mul(float(body('Parse_JSON')?['Results']?['output1'][0]['Scored Probabilities']), 100)

This expression is using the Parse JSON action we added to get to the Score Probabilities value from AML, converting it to a float and then multiplying by 100 to show as a percentage in D365. The “Update a record (V2)” trigger should look like the following screenshots:



Now you can save the flow and make sure the trigger is set to “On”. Now in D365, we can create a new opportunity. I set the Description to “Wine” with an Est. Revenue of $90. Back in Flow, you can check the Run History and make sure the Flow ran and was successful. It may take a minute or two for it to run.


Once you see a successful process in Flow, refresh your D365 Opportunity and you should see the Predicted Probability updated.


Now we have a complete round-trip from getting the data out of D365 to train it and then pushing the predicted probability back into D365. For existing records, you will want to build a process to retrieve them all and call the AML web service for each one.

Azure Machine Learning has many different algorithms (here is a nice cheat sheet) for all different types of business processes. This is just one example and will hopefully give you an idea of what you can accomplish in your own organization. If you have an questions or are interested in enhancing your organization with machine learning, contact us.

Happy Machine Learning!

Topics: Integrations Microsoft Dynamics 365 Microsoft Dynamics CRM Microsoft Dynamics CRM Online

Are you ready for change?

Today's blog post was written by Scott Hinton, Principal Consultant at Sonoma Partners.

When thinking about the Change Management required to successfully implement a CRM application, the first thing that you need to understand is whether or not your user community is even ready for the change. Most likely, they’re not. But that doesn’t mean you shouldn’t move forward with your CRM initiative! You just need to figure out how much time and effort will be required and the best approach for managing the change which can be done with a readiness assessment.

What is a Readiness Assessment?

Sonoma Partners methodology for managing the people side of change is called our primary focus during the Discover phase. Readiness assessments can take many forms but we typically use 3 tools:

Change Risk Assessment Survey

Start with a Risk Assessment Survey which is usually sent to the key members of your project team covering topics around your organization (leadership, history of change, and expected resistance) and the specific project (size of impact, type of impact, resources and training needs). From this survey, you can identify change barriers and create a plan to overcome those barriers.

Change 1

User Survey

Next, survey the users who will be impacted by the CRM initiative. Some example questions that you will want to understand include:

  • I believe that CRM will benefit our company.
  • There is sufficient executive level support for the CRM implementation.
  • I know where to find information about our CRM implementation.

From this survey, you can better understand how to address project communication, training, and sponsorship needs. A similar survey should be distributed before and after launch as well to ensure that users are onboard with the change and that your company is adapting appropriately to the feedback received.

Stakeholder Impact Assessment

Interview your key stakeholders including the leaders who are (or should be) driving your CRM initiative and map their degree of influence, engagement and change impact. Next, develop tactics to keep them engaged throughout the life of your CRM program.

Change 2

Why Assess Change Readiness

There are many benefits to assessing and managing readiness as users move from current to future state from a system, process, and people perspective.

  1. Drive user adoption through informed data driven decisions.
  2. Gain unique stakeholder and stakeholder group perspectives, needs, and priorities.
  3. Establish a baseline measurement for readiness. Future data can be measured, evaluated, and communicated against this baseline to understand sponsorship, communications, and training effectiveness.
  4. Provide a feedback loop and opportunity for users to participate in the change and voice their opinion which increases buy-in.
  5. Identify change risk and scope the change management effort.
  6. Align leaders around your findings.
  7. Demonstrate leadership commitment.

A change strategy that includes a readiness assessment increases user adoption through targeted change management tactics versus a one-size fits all approach. Unsure how to get started assessing readiness of your organization for your CRM program or unsure what to do with what you find? Give us a call, we’re happy to help!

Topics: CRM Best Practices