Matthew C. Anderson

Author Archives: Matthew C. Anderson

I'm an enthusiastic speaker, creator, and problem-solver.


Convergence 2013

Oh how I wish I was going to Convergence this year. ¬†Time for a little shameless bragging ūüôā

Heads held high, the Hitachi Solutions CRM team has two clients that are 2013¬†Customer Excellence Award winners¬†in the Productivity category (Sales Force Automation and Customer Care categories), and the broader Dynamics team has four total winners and many more finalists! ¬†We’re also a Platinum sponsor and I’m extremely proud of the presence we have planned for the event (I’ve seen the booth layout…so cool!).

Congratulations to the 2013 Customer Excellence Award Winners!

Way to go team!

For those of you who will be at Convergence, make sure to stop by the Hitachi Solutions “Caf√© Du Monde” (booth #2013) to learn more about the other exciting things our team does.

P.S. I may have forgotten to mention the¬†complimentary coffee and beignets at our booth…

Dynamics CRM Mobile Offerings

With the January CRM update from Microsoft, there are now more mobile access options for Dynamics CRM than ever. ¬†While this is great news when it comes to flexibility, it adds a wrinkle when it comes to making a decision on which method to use. ¬†Fortunately, there’s an upcoming webinar that will explain many of the available options. ¬†See the details below:

Please register for Microsoft Dynamics CRM – Mobile Productivity Overview on Feb 27, 2013 11:00 AM CST at:

Microsoft is making large investments to expand and enhance Microsoft Dynamics CRM’s mobile productivity capabilities.

Join us to see a broad overview of mobile CRM productivity capabilities and options. We will also demonstrate leading edge mobile solutions for CRM Clients.

Don’t miss this exclusive opportunity to see the latest and greatest features and functionality in Microsoft CRM.

Register now – attendance is limited.

After registering, you will receive a confirmation email containing information about joining the webinar.

Full Disclosure: This webinar is hosted by my employer, Hitachi Solutions

Broken eggs…

So I was reading XKCD last week, and I laughed out loud when I saw the “Workflow” comic that had been posted:


I’ve been on both sides of this one. [xkcd]

It’s funny because it’s true.

It can be hard to let go of a process that works, even when the foundation it’s built on is fundamentally flawed. ¬†In 2008 I built a utility that would copy records from an Access Database into Dynamics CRM. ¬†Every time the form layout changed, it would break the simplistic little utility and it irked the heck out of me. ¬†Eventually, we were able to strike a balance in the release schedule so it wouldn’t hit at an inopportune time.

I work with companies every day where we are re-engineering applications and the related processes to better support their business as a whole. ¬†Eggs get broken and when those eggs are yours. ¬†It’s unrealistic to expect that everyone will inherently find the value in a change–and even with communication like the post above, it’s easy to fall short of contented adoption.

When I think back to the most¬†successful¬†projects I’ve been part of in the last year, effective Change Management is a key theme. ¬†Understanding the scope of the change and the degree to which folks will be impacted is critical in providing a path showing how they can best navigate (and take advantage of) the change.

LongTimeUser4: There are better options than holding down the¬†spacebar¬†ūüôā

Excessive IE Add-ons PSA

I’ve seen an uptick in the number of Internet Explorer 7&8 Add-on related support issues for Dynamics CRM. ¬†Not sure what’s causing the spike, but I’m getting the word out so you can take some preventative measures. ūüôā ¬†Issues can surface in many ways, including:

  • Record windows not opening at all
  • Record windows opening but only partially loading
  • Wonky behavior when trying to change text in fields
  • Goofy pop-ups and error messages when saving a record
  • Unexpected impacts on the user experience (script oddities)
  • General slow responsiveness of the application

If your web browser looks like this….

Internet Explorer window with countless toolbars

Eep! [image via reddit]

…you will want to start removing (or at least disabling) these.

Microsoft has a detailed FAQ that covers details on how to deal with these, and how they may have gotten there in the first place.

Learning the basics about Microsoft Dynamics CRM

For those of you who are just starting to evaluate CRM options, Michelle Groen of Hitachi Solutions will be holding a free introduction demonstration webinar next week. ¬†It’s scheduled for¬†¬†February 6th, 2013 from 2-3pm EST and will be covering the following information:

  • Outlook ‚Äď Converting an email
  • Dashboards ‚Äď Drill down, Exporting to Excel
  • Marketing ‚Äď Lead Qualification
  • Sales ‚Äď Opportunities, Workflows
  • Service ‚Äď Case Management, KB‚Äôs, Dialogs

This is a great way to get a feel for the application and inspiration for what it can do to help transform your business.

If you’re interested, please register (the last one exceeded capacity and only pre-registrants could get in) using:


Full Disclosure: I am employed by Hitachi Solutions.

Scripts and the December 2011 Update

I’ve heard a few stories in the wild about some issues with custom JS in online CRM organizations that have recently received the December update. ¬†MS has published a blog post about the same topic, which goes into details regarding script differences between browsers and how to identify potential problem areas with a validation tool they’ve published.

Dynamics CRM Blog – Script Errors After the December 2012 Service Update

Validation Tool from MS

Screenshot of the validation tool from MS


Dynamics CRM – Follow the North Star

Polaris (the North Star)

Polaris (the North Star)

Out on the Dynamics CRM website you can find details around the upcoming Polaris release. This is a big one!  Microsoft has been steadily increasing their investment into their CRM platform and these next few releases (Orion, Leo, and Vega) promise to showcase some great new functionality.

Q4 Release Preview
Microsoft recently published a¬†preview guide¬†for the upcoming Q4 service release. ¬†Inside are details around the first steps toward a UI that will rely less on pop-ups. ¬†Reducing the number of windows has been a long-time request, so this is exciting news. ¬†We also see a general theme update in this release, dropping some of the images displayed on the main CRM window. ¬†Skype (or Lync if that’s your preference) integration with the forms is now available in a click-to-dial fashion. ¬†The redesigned “flattened” forms will be seen in Account, Contact, Lead, Opportunity, and Case for Q4.
The other notable addition is the introduction of the process-driven UI.  The potential here is very exciting, as it gives a dynamic visual representation (and quick access to) the steps that are involved when working with this record type.  The Q4 release appears to bring this Process UI for Lead/Opportunity (viewed as one record, rather than two) as well as the Case entity, with more entities to follow in future releases.  By surfacing (no pun intended) these key components of the process, it should help to make a user more productive since they are given better guidance by the user interface.
Enlarged view of the Process section of a Lead/Opportunity form

Note, the latest word on the street is that this is online only for the Q4 release. Whether online or on-premise, this update is opt-in for existing customers.

Lastly, this update brings the first iteration of cross-browser support, though I’ve heard conflicting answers on whether Safari on iPad will be supported in an on-premise environment in Q4…I hope so! ¬†We do get confirmation of Chrome and Firefox on Windows¬†(I’ve seen live demos with both)¬†and Safari on Mac OS.

Statement of Direction
Alongside the preview guide, Microsoft has published an updated Statement of Direction for the CRM product, which gives an idea of what to expect as a CRM online/on-prem customer or partner over the next 3 years.
Continued investment in sales force automation functionality.¬†¬†We can see this already in the Q4 release with the Process UI, but they’re also discussing improvements in team collaboration, quotation/pricing/ordering components, prospecting, planning, and performance management.
Increased investment in customer service.  This will include emphasis on the sharing of knowledge, improved contact center capability, and multi-channel service.

Major increased investment in marketing automation.  While some of this will undoubtedly be newly developed IP for Microsoft, their recent acquisition of MarketingPilot should give them a (much needed) jump-start in this area.

Baby Steps
When I got my first taste of the next updates to CRM, I got really excited. ¬†Now it’s time to be patient, as these releases are made up by a lot of baby steps.
Bob Wiley and Leo Marvin on Good Morning America

“But it did work that quickly, and that’s the miracle of Baby Steps.”

CRM Export Security – Mitigating Data Leakage Risk

When implementing a Customer Relationship Management system, whether as a new endeavor or as a replacement for an outdated system, there will inevitably be conversation regarding data security.  With good reason, as a lack of appropriate planning could be costly to the organization resulting in lost sales to competitors, lost employee productivity, and potentially legal action.

Data Leakage is real

Most data in a CRM is sensitive–with the real question being the degree of¬†sensitivity. ¬†When this data goes outside the walls of the organization, it can be quite problematic. ¬†Consider what it would mean to your organization if one of the following happened:

  • A list of all customer records is stolen by an employee before accepting a position with a competitor.
  • An employee leaves their laptop unlocked and unattended at a coffee shop, where someone seizes the opportunity to email themselves a full list of recent transactions.
  • Information regarding purchases made by government agencies was exported to a file, left on a USB drive, and lost.

You can imagine the questions that will be raised as a result of any of the above….all driving back to the questions of whether appropriate measures were taken to safeguard the data and who was responsible for enforcing them.

USB Flash Drive by Ambuj Saxena, on Flickr. Creative Commons Licensed.

Ernst & Young published a brief last year on data loss prevention, which is a great overview of the issues, costs, and considerations of data loss. ¬†The brief’s overlap with most CRM implementations is in the Customer Data and Corporate Data areas. ¬†Customer lists, prospect lists, contact history, and purchase history are among the most common, each of which have a cost associated with them in the event of a data breach.

Appropriate precautions should be taken

The major CRM applications have security models that allow permissions to be granted based on a wide array of business rules. ¬†The key to setting these up is to first understand the use cases behind accessing the information, then gain agreement of what the appropriate result should be. ¬†Often this CRM security dialogue raises awareness of situations that haven’t previously been considered and perhaps already exist as a risk for data leakage.

CRM technologies provides a great framework to begin guarding this data, but don’t discount the importance of process and training when it comes to data protection. ¬†During the course of outlining the usage scenarios there will be corner cases that fall outside of the systematic rules. ¬†Often this will stem from a project (perhaps cross-functional) that requires a one-time deviation from the standard security procedures. ¬†Having the processes to follow when accessing the information as well as the clear expectation of how it should be handled by all parties is critical…and not a problem that’s solved¬†inside of a CRM system.

Finding the right balance

A very common pitfall is to skip the analysis of the usage scenarios, and instead rely on more heavy-handed security policies.  These often end up getting in the way of user productivity, resulting in frustration and the opinion that the CRM is more of a burden than an enablement tool.

When I’m working with clients as a Manager at Hitachi Solutions, we discuss balancing many factors as part of this discussion. ¬†Some of these include:

  • Functional System Requirements
  • Regulatory Compliance
  • System Auditing Capabilies
  • Education Delivery Capabilities
  • Incedent Response Procedure
  • Corporate Risk Management Strategy

These are just a taste of the many factors involved when considering a CRM system’s export security. ¬†It is crucial to begin this conversation early, as it will save time and testing later in the process of deployment.


The power of a CRM system lies in enabling users to leverage relevant information when interacting with a customer or prospect.  Sometimes, this includes extracting details from the system in the form of a report or a standalone file.  When approaching this situation, the right solution will include well implemented technologies that will enable productivity while still protecting data.  It will also leverage clearly documented processes that guide the desired interactions with the system.  Finally, it will include sufficient training for the people who will be accessing the data regarding the proper way to conduct themselves when doing so.

Dyncamics CRM 2011 Email Sync Options – Simplified

If you’ve ever wanted a quick description of the CRM 2011 Email Router options, and maybe even tried a quick google or bing search, there aren’t a lot of plain-English descriptions. ¬†Sure you can dig up the deployment scenarios document on TechNet, but it’s a 2.4MB Word document that tends to get a bit too technical when explaining to a business user what the difference is.

What are the email options?

There are three options available…and here’s the skinny on each.

Outlook Client Synchronization

An individual user would have Outlook open, which communicates both with CRM and with Exchange (or whatever the email application is).  For email to be copied to CRM or sent from CRM, the person needs to physically have Outlook open with the CRM Plug-In installed, Enabled, and Connected.  This requires the least amount of administration and troubleshooting from an infrastructure standpoint, but introduces time lag in email being tracked in CRM as well as overhead when a user opens Outlook and the synchronization takes place.

Individual Mailbox Monitoring

The CRM Email Router monitors each user’s inbox. ¬†Each email that matches certain rules are copied to CRM. ¬†Depending on the number of Individual Mailboxes, this method can have significant ¬†overhead from an administration and troubleshooting standpoint. ¬†Microsoft puts a figure of fewer than 10 being the ideal number of individual mailboxes to monitor.

Forward Mailbox Monitoring (a.k.a. Sink Mailbox)

The CRM Email Router monitors one inbox¬†(the “Forward” or “Sink” mailbox) that each user’s email is forwarded to. ¬†Emails in the Forward Mailbox that match certain rules are copied to CRM. ¬†A user does not need to be online in order for their email to get into CRM. ¬†As far as administrative overhead and troubleshooting, this is more appealing than the Individual Mailbox Monitoring option. ¬†Though all emails are evaluated through a single mailbox, the resulting emails in CRM are the individual user’s emails (it doesn’t lose the ownership and security, which is consistent with each of these methods).


A couple of other notable items:

  • Note, it’s not an all-or-nothing game in making this decision. ¬†This can be set up differently for different users connecting to the same CRM organization. ¬†Though there is additional administrative overhead involved with tracking and troubleshooting each user’s individualized setting.
  • The Mailbox Monitoring options do not require a user to have the Outlook application, but the Outlook Synchronization option does.
  • Outbound email does not have the concept of a Sink or Individual mailbox, this email is all processed individually.
  • Outbound email that is processed through the email router does not show in the Outlook “Sent Items” view, the email must be found through the CRM interface.
  • Inbound and Outbound email methods can be set differently for each user. ¬†For instance, inbound email could use the Outlook Client while outbound email uses the CRM Email Router.
  • The email router can be used with CRM On-Premise or CRM Online.

Using Excel to Easily Coalesce Data

Let’s imagine you’re working with a list of Contacts that lists the company that they work at, doing a little clean-up before it gets used. ¬†Only some of the Contacts have an address listed, but they all have a Company address listed. ¬†This needs to be updated so each Contact record has an address.

Raw list with scattered contact addresses

I’ve seen it a hundred times (or in some lists, a hundred thousand times)

In this case, the business requirements are:

  • We need to have one address on file for each contact
  • If we have that specific contact’s address…great, use that
  • If we don’t have a contact’s address, use their Company’s address instead

Doing a simple Copy/paste could be your friend if the list is only a handful of Contacts long…but this can be tedious if you’re looking at dozens (or more).

I was doing something very similar to this for a client recently. ¬†My go-to tool for this is Excel…it really makes this problem simple to solve. ¬†Come to think of it I use this same concept in a lot of different places when doing data prep–so I’ll run with this example, but recognize that the same method can be used elsewhere in Excel.

OK I’m interested, what do I do?

Fortunately, the requirements above give us exactly the direction we need. ¬†We only need one address for each contact, and each row has as either one or two. ¬†We know that one address wins out (the contact’s address) if it’s there. ¬†So from a list standpoint, we need to do the following:

  • Devise a systematic way to determine the correct address
  • Choose the correct address for each contact
  • Eliminate the extraneous data

Accomplishing this isn’t too much work, but it does involve an Excel formula that’s going to look like Greek when you first see it. ¬†We’ll get there in a second, but indulge me for a slight diversion.

When working with a list of data, my best practice in Excel is to keep the source data as pristine as possible. ¬†This means I don’t like to add/delete columns in the original list. ¬†This ends up being important later on…when somebody comes with an updated list, or a slight variation of what rules to use when identifying the desired data. ¬†If you’ve made your changes directly in the original workbook it becomes¬†much more likely that you’ll have to start from square one, whereas my method allows you to more easily sub in new data or change one of the underlying rules.

To accomplish this, I’m using two Worksheets (tabs) in one Excel Workbook (file). ¬†“Raw List” (the raw list of data) and “Final Product” (where our modified version of the data will go). ¬†When you see formulas such as =’Raw List’!C3 that really means this cell should equal the cell C3 in the “Raw List” worksheet.

Hopefully that little explanation will keep this next screenshot from looking like total hoodoo.

Excel Screenshot

Don’t run away yet!

We’re going to use this formula for each address field (Street 1, Street 2, City, State, Zip). ¬†We’re also going to make the assumption that if the “Contact Street 1” field is blank, that it is not a valid address and the Company address should be used (make sure this is a valid assumption based on your situation :)). ¬†This translates to “If the Contact’s Street¬†value is blank, use Company Street, otherwise use Contact Street“.

Adding the visual context in Excel:

Excel Formula Diagram

Sweet, now we’re cooking. ¬†Next, we want to use this same formula for each of the rest of the Address fields.

It looks so purrrrdy….

Note that when we’re checking the subsequent fields like City, State, etc, we’re¬†always checking the Contact Street value. ¬†This is important because we don’t want to use parts of both addresses…we want the whole contact address or the whole company address.

At this point, we’ve done the most complicated part. ¬†The other fields (like name, company name, etc) don’t need a funky formula, they just need to be identified and added as columns in the data set. ¬†You can take some time to review how this is done by downloading the Excel file I worked on, which has all of the formulas preserved on each of the two worksheets.

Great, so what’s next?

From here, there are a few common things that I’ll do as next steps:

  • Save results to a separate file, then save it as a new file. ¬†This is a great way to force only the “final” version of the data is available moving forward. ¬†A basic copy/paste has some problems since the formulas reference the original data set (and would start showing errors). ¬†Below are two common approaches.
  1. One option for doing this is to do a copy/paste values into a new workbook.  This is great when you want to ensure there are no references to the original set of data
  2. An alternative is to copy the entire worksheet to a new workbook (by right-clicking on the worksheet name).  This will also update the formula references to look back to the original file

Note that either of these options is acceptable if the new file will be saved as a .csv file, since Excel will remove the incompatible features (formulas) when you click Save.  A .csv file is great if you want to import the data into Dynamics CRM.

  • Clean up the original workbook, making it less potentially-confusing to the next person to touch it. ¬†Below are a couple of clean up ideas:
  1. Hide the “Raw List” worksheet (tab) so it isn’t selected by accident
  2. Freeze the column headers in the Final Product worksheet by clicking Freeze Panes->Freeze Top Row on the View tab
  3. Protect the list from being accidentally modified by clicking Protect Sheet on the Review tab

Keep in mind, there are many other ways to accomplish this same task. ¬†If there’s another method you’d like to share, feel free to do so in the comments.