Sonoma Partners Microsoft CRM and Salesforce Blog

Introduction to Dynamics CRM and Salesforce Data Migrations Using SQL Server Integration Services

Today's blog post was written by Rob Jasinski, Principal Developer at Sonoma Partners.

There are many occasions when you’ll need to migrate a large amount of data from some outside data source into your Dynamics CRM or Salesforce environment. Both systems do have native import tools, but they have many limitations and can be difficult to use on a large amount of data. If your company owns SQL Server licenses, those also come with SSIS licenses and that can be a viable alternate solution to migrate data into CRM. This article will give you an introduction to setting up a simple data migration to get you started for creating your own CRM migration solutions.

First you’ll need SQL Server Data Tools. This can be downloaded from this link. You should have Visual Studio installed, but if you don’t this will also install a light version, enough to run data tools and allow you to create SSIS integration package.

Next, since you’ll be migrating data to CRM, you’ll need a third party destination component. Now you can write your own custom code, either in C# or VB, and code directly to the API of the destination CRM system, but this can be tedious and very time consuming. These third party tools encapsulate all the code into easy to use drag-and-drop components. They are very reasonably priced and will save a lot of time and frustrations. There are many third party components you can use from vendors such as CozyRoc, CData, and KingswaySoft. For this example, we’ll be using KingswaySoft, but the other vendors would work fine as well. You can download the component used in this example from this link.

Once you have data tools installed, launch Visual Studio and choose new solution and choose “New SSIS Package."

Rob j 1

This will create an empty canvas ready for you to start creating your first SSIS data migration.

Rob j 2

Next you’ll need to create a data source. This is the location of the source data that exists outside of your current CRM solution. SSIS has several options to pull data from many sources, including Excel, SQL Server, ODBC, CSV files, etc. For this example, we’ll assume our data is located in a SQL Server database. So in the Connection Managers area, right click in that area and choose “New OLE DB Connection.” Configure the server name, credentials, and database name, and click OK. In this example, I’ve renamed the connection to “Source.”

Rob j 3

Next drag and drop the “Data Flow Task” from the SSIS Toolbox onto the Control Flow canvas.

Rob j 4

Double-click the Data Flow Task just created to open the Data Flow canvas. This is where you’ll create the actual migration using source, destination, and transformation components (if needed).

Next drag and drop the OLE DB Source component from the SSIS Toolbox onto the Data Flow canvas and configure the component along with the query to pull the data that you need. In this example, we’ll be pulling basic account information from some outside system into our Dynamics CRM environment.

Rob j 5

Now you’ll need to configure a Destination connection. In this example, we’ll be using the KingswaySoft Dynamics CRM adapter for connecting to our CRM environment. Right click in the Connection Managers area and choose “New Connection.”  From the Connection list, choose DynamicsCRM and click Add. Also, you must have already installed the KingswaySoft Dynamics CRM adapter for it to appear in this list.

Rob j 6

Next you’ll need to configure the CRM connection. Choose the appropriate Authentication Type, depending if you’re online or on-premise. Then enter the CRM Discovery URL, then any credentials and finally choose the appropriate organization name from the drop-down list. Since there are many environment configurations you may be using, please refer to this KingswaySoft documentation for further details on configuring this.

You should now have two connection managers. In this example, I’ve renamed it to DynamicsCRM. Most migrations you create will mostly like just have two data sources, one source and one destination. But there may be cases where you have multiple sources that are then merged together within the Data Flow process before migrating to CRM.

Rob j 7

Next drag and drop the Dynamics CRM Destination components from the SSIS Toolbox onto the Data Flow canvas. Then manually connect the arrow from the OLE DB Source to the new CRM Destination just created. The component has a little red X displayed because it still needs to be configured in the next step.

Rob j 8

Next double click on the Destination component to bring up the configuration screen. Choose the CRM connection manager you just created. For this example, we’re migrating data into accounts, so choose that as the destination entity.

Rob j 9

Next select the Columns tab and map the fields from the source query to the fields in CRM. Using a third party component, like KingswaySoft, it’s that easy and no custom coding is required.

Rob j 10

Press OK and you’re done. You’ve created your first, although very simple, data migration of data outside of CRM into CRM. Now the nice thing about SSIS, it comes with many transformation tools out of box that allow you to cleanup, manipulate, or even de-dupe data. For example, here is a link that is a more complicated example of an SSIS data migration that also de-duplicates data. So from this simple example as a starting point, you can expand it to perform almost any kind of complicated data migration your business may require.

Topics: Integrations

Support: Keep Away from the Runaround, Sue

Today's blog post was written by Jeff Meister, Principal Consultant at Sonoma Partners.

Recently, I've had conversations with several customers around frustrations when it comes to dealing with the various support channels related to their CRM platform. Whether it be core platform support, partner support, or third party support, there always seems to be a great deal of runaround as it relates to getting the basics communicated in order to move on with the real support.

Here at Sonoma Partners, we have the same frustrations, but have worked to formalize a process as it relates to support to ensure all questions are answered upfront to avoid the back and forth. Below is a rough template we follow which covers a lot of the basics and will hopefully help get you to the right people, right away.


Additionally, if you feel that the “runaround” is starting, don't be afraid to ask for a phone call. Oftentimes a quick phone call can be much more efficient than going back and forth over email. One other suggestion is to include all parties involved in the communications. If you are working with a partner, you should keep them CC’d throughout the life of the case, as they might have additional input into the issue.

Unfortunately, we can neither confirm nor deny that this will make your support request process more efficiently, but I can tell you that this has improved our process and provided efficiencies in areas where we have historically struggled. Happy supporting!

Topics: CRM Best Practices

How to: Migrating Unified Service Desk Configuration Data

Today's blog post was written by Michael Maloney, Principal Developer at Sonoma Partners.

As with many projects, we typically follow a development, staging, and production model of deployments. On larger projects, it’s not unheard of to have four, five, or even more environments. When it comes to deploying Unified Service Desk, this can be a challenge due to the heavy reliance on data as configuration. Today, we are going to walk through how you can easily migrate this configuration data from one environment to another. For the purposes of this walk-through, we will assume the environment(s) already have the required USD solutions installed. If not, take a look at one of our previous posts on how to get Unified Service Desk up and running.

Before getting started, be sure to download the latest version of the Dynamics CRM and UII SDK from here and extract each to a designated folder, e.g., D365\SDK and D365\UII.

Exporting Unified Service Desk Configuration Data from the Source Environment

To export the configuration data, run the DataMigrationUtility.exe file found in the D365\SDK\Tools\ConfigurationManager folder and choose Export Data on the main screen, then click Continue.

Maloney 1

Enter credentials for the organization you would like to export data from and click Login.

On the next screen, select the default Unified Service Desk configuration data schema file (USDDefaultSchema.xml) to be used for the data export. This is found in the UII\USD Developer Assets\USD Configuration Tool Schema folder.

Specify the name and location of the data file to be exported.

Maloney 2

Click Export Data. The screen displays the export progress and the location of the exported file at the bottom of the screen once the export is complete.

Maloney 3

Click Exit to return to the main menu.

Importing Unified Service Desk Configuration Data to the Target Environment

Before importing the USD configuration data to the target environment, be sure to import the necessary packages and/or solutions first.

From the main screen of the CRM Configuration Manager, select Import Data then click Continue.

Maloney 4

Enter credentials for the organization you would like to export data from and click Login.

The next screen prompts you to provide the data file (.zip) to be imported. Browse to the data file, select it, and then click Import Data.

The next screen displays the import status of your records. The data import is done in multiple passes to first import the foundation data while queuing up the dependent data, and then import the dependent data in the subsequent passes to handle any data dependencies or linkages. This ensures clean and consistent data import.

Maloney 5

Click Exit to close the tool.

To verify the changes in the target environment, open up the Unified Service Desk app and click the “Change Credentials” link on the loading screen.

Maloney 6

If you have more complex customizations involving many solutions and configuration data, you can opt to create a custom package instead. These packages bundle everything up so that you can then run them from the Package Deployer Tool, just as the original Unified Service Desk packages you see when setting up for the first time. We’ve written in the past on how to get started creating your own package, and you can find more detail on MSDN on how to include your configuration data along with the package. 

Dynamics 365: Editable Grids

Topics: Microsoft Dynamics 365

SystemForm with Id Does Not Exist

Today's blog post was written by Matt Dearing, Principal Developer at Sonoma Partners.

I had a customer reach out recently saying they were trying to open contact records from one of their sandbox Dynamics 2016 online instances and were getting the following popup:

Matt dearing 1

The log file showed the following:

"systemform With Id = 04238d8a-dbf8-467c-805f-4af4b757870 Does Not Exist"

I asked the user if they had deleted any forms recently. They said they had deleted a secondary "test" form in that org. My thought was that something had cached that old form id and CRM was continuing to try and load it even though it no longer existed. I asked the user to clear their browser cache, but they still received the same error. I asked them to try and load the same record in a secondary browser while I went ahead and queried "userentityuisettings.lastviewedformxml" via a fetch xml query and noticed that the old form's id was still there.

lastviewedformxml <MRUForm><Form Type="Main" Id="04238d8a-dbf8-467c-805f-4af4b757870f" /></MRUForm>


I did a "publish all" and queried again and saw that the correct form id was now stored.

lastviewedformxml <MRUForm><Form Type="Main" Id="1fed44d1-ae68-4a41-bd2b-f13acac4acfa" /></MRUForm>


Which meant the publish all may have triggered a refresh, or it was a coincidence and what actually refreshed "lastviewedformxml" was the user's secondary browser. Either way I asked the user to try again in the primary browser, expecting everything to work, but they still received the same error. I navigated to the same record, which loaded fine, so I decided to take a quick look at local storage via the dev tools. I noticed form ids were cached there.

I had the user run "localStorage.clear()" from the console window of the dev tools instance on their primary browser, then reload the page and everything loaded correctly.Although the user had cleared their cache it appears some browsers tie local storage to clearing cookies, so depending on what your cache clear is actually doing, it may not be clearing local storage.

The need for deleting a form rarely arises, but if you find yourself in a similar situation be very careful. If the form must be deleted and users have been using it, you may need them to fully clear their browser cache in order to get the correct form loaded.

Topics: Microsoft Dynamics 365

How to Be Awesome at Sonoma Part 5: Foster a Positive Environment

This post continues our “How to Be Awesome” series, highlighting exemplary Sonomans who live out the different elements of our “How to Be Awesome” list. Banner

We’ve heard how Sonomans act like pros, deliver quality work, communicate well, and just do it. Next is the fifth item on our “How to Be Awesome” list: foster a positive environment.

We believe fostering a positive environment is about setting positive examples for others to follow. Your complaints include ideas and suggestions on how to fix a problem. You are humble and accept constructive feedback without defensiveness. Staying open to new ideas and suggestions is important along with accepting work assignments with a positive attitude, no matter how small a task it may seem.

Here is how some Sonomans help foster a positive environment:

DibbsWilliam “Dibbs” Dibbern – Principal Developer

“Dibbs is one of the most cheerful and helpful people to find when you have a question and is always willing to discuss and help you find your way.”

What advice do you have for others trying to “foster a positive environment”?

Dibbs: I really enjoy solving problems as I see each one as an opportunity for me to learn something new, as well as a puzzle yet to be solved. Mentally framing a problem in a fun way like that helps to keep you energized and on track. One thing I picked up along the way is to be conscious of when I’m voicing a problem by itself. That poor problem is so lonely. Problems like to be paired with solutions. Offering a solution up with a problem will show that you’ve really thought through the problem at hand and cut back on a lot of the back and forth.

Mike Collins – Senior Consultant Mike-collins

“Mike brings ideas to start a conversation or project, but isn’t set on his way being best. He is open to team suggestions and goes with whatever solution makes the most sense, even if it is not necessarily his.”

Why is “foster a positive environment” an important part of the “How to Be Awesome” list for Sonoma?

Mike: I think that having a company culture at Sonoma that focuses on the positives rather negatives is a huge asset because so much more can be accomplished when everyone stays positive and is focused on the same goal.

Interested in joining our awesome team of Sonomans? Check out our open positions here.

Topics: Careers at Sonoma

CRM for My Generation

Today's blog post was written by Kristie Reid, VP of Consulting at Sonoma Partners.

We recently hosted our third annual CRUSH event for professionals in the professional services industry to come together, share best practices, and gather ideas for improving the usage of CRM in their organizations. My favorite session was led by our very own Jim Steger and Ariel Upton where they discussed the different expectations of the Gen X versus Millennials. This discussion sparked a few ah-ha moments for me to keep in mind when designing CRM systems including:

  • Gen-X wants to have access to the information they want when they need it.
  • Millennials expect transparency and need to understand how they are adding value.

So how do you take different wants and needs that you will get across your CRM user base and merge them into your CRM system to ensure a successful deployment?

The simple answer is to get them involved with your CRM program. Their involvement could range from participating in interviews during requirements gathering sessions, having them participate in your CRM Steering Committee, or having them act as your CRM Champions. In other words, make sure you focus on them as part of your Change Management strategy. But remember, that strategy cannot just focus on the executives and management for approval (typically your Gen-Xers). You must also identify what your user base wants and needs (and who better to target than the Millennials who are quickly becoming your largest audience).

Some things to ask understand from these different groups include:

  • What types of actions do you need to take on your mobile device?
  • What type of information are you expecting to see from your CRM system?
  • What is the best way to communicate upcoming changes with the system?
  • How do you learn new technology?
  • What don’t you have today which would make CRM a no-brainer to use if there?

The answer to these questions can help drive how you communicate, train, and prioritize your CRM program rollout and ongoing enhancements.

Does getting people from your organization from all generations still feel like an overwhelming task, don’t hesitate to ask for help

Dynamics 365: Editable Grids

Topics: CRM Best Practices

Building a Program in Perpetual Motion

Today's blog post was written by Adam Barr, Principal Consultant at Sonoma Partners.

In my experience implementing CRM, I have often been asked by clients, when do we know we are finished? Or, when is the application complete? Better yet, how do we know we’ve optimized our investment in CRM? The answer is relatively simple on both fronts: Never.

You should continue to invest into your CRM platform in perpetuity, defining success by hitting milestones along the way and measuring results.

This focus on building a program in perpetual motion will continue to stretch the optimization target while regularly adding value to your organization. 

The key difference I want to focus on is between projects and programs. If we are generally managing CRM in the same manner as a “set-it-and-forget-it” implementation, we are settings ourselves up to become another failed CRM statistic.    

Successful CRM programs are designed with a multitude of features supporting the organization cross-functionally which mitigates the risk of becoming stale. These programs focus on automating business processes, extending channels for customer touchpoints, and providing overall structure, efficiency, and consistency in your message. Saying a CRM program is complete is similar to saying, employee development has peaked and we're not expecting any future turnover - or - the way we interact and engage with our customers is working for us and there wont be any need to adjust our approach going forward...and all our competitors agree. Or - even more incredulous - the technology industry has plateaued and we won’t see any new innovations for our industry. Don’t brush these parallels off as just a dramatic ploy to get you to keep reading. Thought, I do want you to keep reading, so I ask you again, hear me out.

Think back for a moment, why did you invest in a CRM solution? A very common answer is to achieve the Utopian goal of obtaining a true 360-degree view of your customer. Why is this so important? Why do organizations dedicate significant resources, both human and financial, to achieve this goal? Why do you strive for consistent messaging, predictable interactions, and ultimately the ability to streamline or deflect non-value added touchpoints?

At the most basic level, it is because the customer is still king. For the foreseeable future, the customer will continue to be king. The challenge you are faced with is finding ways to optimize your customer value in perpetuity. You need to be able to manage process inefficiencies, balance employee turnover, minimize onboarding learning curves, and do so in a manner that is transparent to the customer to ensure they consistently have superior experiences with your brand. Frankly, your customer does not care about your internal processes, nor do they care about internal structure or any cost optimization pressures you may be facing. Your customer cares about having easy access to your product or service. Your ability to deliver said product or service in an environment that fosters a superior customer experience will drive brand loyalty and advocacy in the market.

CRM programs should underpin all initiatives that support these efforts. Internally, business processes should be reinforced through the CRM tool so the desired behavior becomes intrinsic simply through the use of your application. Externally, customers should have simple access to your company, on their schedule and through their desired channel. You need to provide them with a consistent experience regardless of when or how they engage with your organization. Connecting this omni-channel expectation to a shared CRM environment ensures a full understanding of your customer and mitigates any potential for a less-than-desired experience.  

Only when your customer relinquishes their purchasing power. Only when technology vendors feel they’ve saturated the innovation market. Only when your employees have mastered every business process and your competitors decide status quo is good enough. Only then, should you consider your CRM program complete.

Is your CRM

Topics: CRM Best Practices

Apple AppStore Lessons for the CRM App Ecosystem

A few weeks ago, Apple released some important data about their AppStore:

  • AppStore revenue exceeded $28B in 2016
  • AppStore revenue grew more than 40% year over year
  • Sales of apps exceeded 90% growth in China in 2016
  • App developers received over $20B in revenue last year

Obviously the AppStore represents big business, and a massive revenue opportunity for companies looking to capitalize on the Apple ecosystem! When you consider that iPhone sales actually declined over the last few years, the massive growth of the AppStore becomes even more impressive. Apple continues to grow the value of their AppStore network, which in turns motivates more developers to create apps for the AppStore, which again increases the value of the network! Economists and other really smart people call this concept the network effect which basically states “a phenomenon whereby a product or service gains additional value as more people use it.”


While the AppStore numbers might get your interest, you might wonder what do $0.99 video games have to do with the enterprise CRM market?!?! We think that ISV’s (Independent Software Vendors) in the business software market should sit up and pay close attention to what’s happening in the AppStore…because the same network effects generating 40% year over year growth in the Apple AppStore will create that same growth within the two largest CRM ecosystems:

Salesforce and Microsoft Dynamics 365 represent two of the leading and largest CRM applications in the world. Each of these systems offer their own app stores that work similar to the Apple AppStore, they provide a streamlined and easy way for customers to find and purchase add-ons for their system. Here’s a quick comparison of AppExchange to AppSource:






Microsoft Dynamics 365 for Sales
Power BI
Office 365

Launch Date



Approximate # of Apps


~380 total apps
~130 for Microsoft Dynamics 365 for Sales apps

App deployment

Cloud only

Cloud & on-premise offering

In-CRM App Marketplace



Customer reviews and scores



From this chart, you can see that the Salesforce AppExchange owns a longer history and a larger selection of apps compared to Microsoft’s relatively new AppSource. However, we think that the Microsoft AppSource offers great growth potential for ISV’s because its ecosystem extends beyond CRM into Power BI and Office 365…and both of these related Microsoft platforms have large numbers of customers and high growth rates!

Stephen Cummins presented some interesting tidbits about AppExchange revenue:

  • He projected that average app in the AppExchange would generate almost $1 million in annual revenue in 2016.
  • Neeracha Taychakhoonavudh (Salesforce’s SVP of Partner Programs) said Salesforce will boost AppExchange revenues 5X over the next 5 years.
  • The top-performing apps in the AppExchange like Veeva, Apttus and Docusign each generate hundreds of millions of dollars in revenue.

So what does all of this mean for ISV’s? We think that every single business software company ABSOLUTELY needs to have an integration or offering on the Salesforce AppExchange and Microsoft AppSource. With the continued growth of the CRM market, these CRM app ecosystems will start seeing significant network effects which will generate amazing revenue opportunities for ISV’s.  

If your company wants help developing a new app for AppExchange or AppSource, please contact Sonoma Partners. We can help you refresh an old app, or build a brand new one from scratch!

Topics: CRM Best Practices

Plotting CRM Audit Data

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

CRM field audit data is notoriously hard to retrieve. It is not available through Advanced Find and is not exportable through the Audit view on the CRM record. Going the custom route, it is possible to retrieve audit records through FetchXML queries, but getting to the concrete values that changed becomes harder. The recommended and supported way of getting to the field audit logs then is to use the RetrieveAttributeChangeHistoryRequest message.

I will demonstrate how to use the RetrieveAttributeChangeHistoryRequest message in CRM by setting up a simple feature that requires us to read the Audit logs.


We have a custom currency field on the Account entity called new_revenue. We have an integration or some other process that updates this field periodically with the total revenue on this Account. We would like to plot the value of revenue on the Account over time, so we can visualize the trend.


We will make use of CRM’s native field auditing to track the historical values of the revenue field on Account. We need to enable auditing on the CRM org, on the Account entity, and on the custom new_revenue field. We will use a custom console application to retrieve the field audit data for new_revenue through the RetrieveAttributeChangeHistoryRequest request of the CRM SDK. The data retrieved will be dumped into a CSV file, which can be opened in Excel and the data can be analyzed and plotted on a graph.


The relevant C# code for the console app is below.

This is what it does:

  • Creates a RetrieveAttributeChangeHistoryRequest and sets the Account record as the Target and the new_revenue field as the AttributeLogicalName. This request will return all the audit history for this field.
  • Executes the request against the CRM OrgService and receives the response.
  • Opens a stream to write to a file called output.csv. This file will contain the audit history output in a comma-separated format that is readable by Excel.
  • The response returns a collection of AttributeAuditDetails, each of which represent a single change in the value of the new_revenue field.
  • We loop through all AttributeAuditDetails, and for each one we extract the following:
    • createdon: This is the date and time of the change. We retrieve it from FormattedValues, so that we get the date and time converted in our local time zone, instead of UTC.
    • new_revenue old value: This is the current value of new_revenue at the time the change occurred.
    • new_revenue new value: This is the new value that was assigned to new_revenue.
  • We format these values into a comma-separated line, and write the line to the CSV file.

When we run this code, it produces a file with contents that look like this:

We can open this file in Excel and see the three columns of data we extracted, the date and time of the change, the old value, and the new value of revenue. Now that it is in Excel, we can set up a simple chart to visualize the data. Select columns A and C (the date and the new value), open the Insert tab in Excel, and select a chart, for example a 2D Line. Excel automatically sorts out the axes, plotting the revenue dollar value on the vertical and the date and time values on the horizontal.

Here is what it looks like:

Angel image 1


Mining your audit data has lots of uses, and this is just one of them. If you are looking to expand on this, or build something more complex and you need some help, give us a call. Thanks for reading!

Ease into the cloud with Microsoft Dynamics Lifecycle Services

Topics: Microsoft Dynamics 365

Eat, Drink, and Deploy: CRM for Food and Beverage Manufacturers

Sonoma Partners is no stranger to the food and beverage industry. Even the name Sonoma Partners is inspired by the wine producing region of Northern California!

Our experience in deploying CRM for manufacturers in the food and beverage industry ranges from breweries to hard lemonade. We’ve written summaries on a few of our F&B projects to highlight what we’ve learned along the way about successful CRM implementations for food and beverage manufacturers:


New Belgium Brewing Company
Craft brewery located in Fort Collins, Colorado.

When we first started working with New Belgium, they had a CRM system up and running; however, the employees underutilized the system and the data had long grown stale. This ineffective system failed to provide their sales team with a productive tool in the field. In order to provide optimal service to their customers, we built them a touch-based mobile app to access CRM account information wherever, whenever.

“This new application that Sonoma Partners has designed for us has really taken things to the next level for us, in terms of being able to do everything on-the-go. It is a very valuable tool from both a time-saving perspective and the ability to have information at your fingertips with the swipe or click of a button.” – Matt Furlong, Sales Project Manager, New Belgium

With their new application Rangerland, sales reps can manage appointments, conduct surveys, take notes, and even view sales histories using CRM data on-the-go. While on site, sales reps can easily pull up client information to display past transactional information to help the customer repeat orders andlook up previous records. Since deployment, data entry time has dropped by 5 minutes per sales call, giving sales reps more time to sell, meet with clients, and distribute product.

“Working with New Belgium taught us the value of an on-the-go application for food and beverage manufacturers. Their sales reps are constantly in the field, meeting with the locations that sell their product. Having access to critical customer data while in the field along with a simple way to communicate any issues back to the home office has proven instrumental for their team’s efficiency.” – Kristie Reid, VP of Consulting, Sonoma Partners

Mark Anthony Brands
U.S. division of Mark Anthony Group, leading distributor of wine, beer, and beverages in Canada. Flagship product: Mike’s Hard Lemonade.

Mark Anthony Brands (MABI) leadership team wanted to provide their sales reps with a more productive method of doing their jobs. Depending on the sales rep and their region, the mechanisms for collecting and storing account information varied. Without a single procedure in place, th quality of the data and data collection suffered. Further, without a defined method for data collection, leadership struggled to track customer engagement and transactions. The outdated procedures and lackluster tools caused the sales team’s morale to suffer.

Sonoma Partners conducted a Mobility Test Drive with the MABI salespeople to learn how they operated in their day-to-day jobs. Based on ride along observations, we created an optimized mobile application that satisfied their unique requirements. Ultimately, the mobile app revitalized the sales team by providing them with a tool to better access customer information in the field.

“The Mobility Test Drive was key for us to get an inside look into how the sales reps operated and to allow us to customize an application accordingly. For an industry that demands detail-oriented focus and customer experience consistency to survive, a customized application that fits into the daily lives of sales reps can be essential for productivity.” – Aaron Robinson, Principal Consultant, Sonoma Partners

Brooklyn Brewery
Based in Brooklyn, distributes beer to over 25 states and 17 countries.

Like most breweries, Brooklyn Brewery’s sales reps maintain relationships with their customers (restaurants, bars, stores, etc.). Mostly, this work involves monitoring product quality, building relationships with buyers, and conducting surveys. Previously, Brooklyn Brewery sales reps lacked an outlined process or set of procedures to ensure client interactions were consistent in the field. Without a centralized system to track procedure or historical performance data, leadership struggled to make key business decisions.

“CRM has brought a ton of focus into what we’re doing. A brewery of our size has a lot of brands and items we are trying to sell. That can be a big headache. CRM helps our sellers focus on what they need to do from day to day.” – Greg Donheiser, Sales Analyst, Brooklyn Brewery

With Microsoft Dynamics CRM, Brooklyn Brewery provides their sellers with better support and record keeping that improves both efficiency and process, resulting in faster and more strategic sales. A new Sales Call Template built into CRM provides a survey and list of to-do's for reps to follow each time they visit with customers.

“The responsibilities for sales reps at food and beverage manufacturers can manage hundreds of accounts at a time. CRM can allow this industry to better compete by providing client-specific experiences with data available at their fingertips.” – Tom Demana, Consultant, Sonoma Partners

You can read more customer success stories on our website here.

Looking to take your sales organization to the next level with CRM? Contact us.

Download our infographic on D365 for manufacturing

Topics: CRM for Manufacturing