Microsoft CRM Implementation
March 01, 2011
Research from Bain & Company indicates that as little as a 5% increase in client retention can provide companies with a 75% boost in profits. In today’s intensely competitive global marketplace, an increasing number of best-in-class firms utilize CRM to drive performance across the enterprise and retain and add clients. Over a decade ago, some viewed CRM as optional or a “nice-to-have.” Today, though, CRM is a strategic business differentiator and essential to the long-term growth and success of an organization. The cost of not investing in CRM is significant. Negative results include smaller profits per customer, flat or declining revenues, eroding market share, lower margins than industry peers, lower returns on poorly-targeted and executed marketing campaigns, higher costs to acquire new clients, longer sales cycles, missed cross-sell opportunities, declining customer satisfaction rates, higher client attrition rates, increased turnover of valuable employees, lower shareholder value, hindered employee productivity, and uninformed, error-prone, and untimely decision making.
Oddly enough, some companies are still hesitant to invest in CRM. Often, these non-CRM adopters are complacent due to past success and they still adhere to product and service-centric strategies and metrics. Michael Porter, a Harvard Business School Professor and one of the world’s renowned experts on strategy and competitive advantage, elaborates: “If all you're trying to do is essentially the same thing as your rivals, then it's unlikely that you'll be very successful. It's incredibly arrogant for a company to believe that it can deliver the same sort of product that its rivals do and actually do better for very long. That's especially true today, when the flow of information and capital is incredibly fast.” Merely relying on a stellar track record and a pristine reputation to produce referrals and new business may have some sort of payoff in the short-term, but it certainly will not lead to any long-term sustainable competitive advantage. Besides offering unique in-demand products and solutions, companies must differentiate themselves by embracing a client-centric focus and implementing CRM throughout all levels of the organization.
Other reasons commonly cited for a reluctance to adopt a CRM strategy and utilize a CRM system include conflicting and more pressing IT priorities, budgetary constraints, or preferences for home-grown proprietary solutions. In other situations, lack of consideration for CRM may derive from a misunderstanding of what CRM entails. CRM is so much more than managing contact records and address books. It is about focusing on customers, building relationships, and capturing and tracking real-time data across multiple channels to better understand client needs and preferences so that they keep returning. Furthermore, CRM involves transforming and streamlining business processes to generate lasting client value, retain and satisfy more clients, and ultimately grow revenues. That being said, companies can no longer afford to ignore implementing a CRM strategy and investing in a leading-edge CRM system, such as Microsoft Dynamics CRM. IT initiatives must be re-prioritized and budgets must be reallocated to include room for CRM. Core legacy systems are no longer viable. They cannot integrate with other core systems, they are not scalable, they cannot grow with your business, they cannot provide real-time information, and they cannot push data to multiple electronic devices. Firms delaying CRM strategic investments will continue to lag and lose ground to industry leaders.
Lastly, firms in the process or in the need of establishing a CRM vision can benefit by watching this brief four minute video produced by Software Advice entitled “What is the current state of the CRM software market,” which is an executive interview with Brad Wilson, Microsoft Dynamics CRM General Manager. As always, Customer Effective can help assess your organization’s readiness for CRM and prepare you for a successful Microsoft Dynamics CRM 2011 implementation that meets or exceeds time and budget targets.
November 30, 2010
At the 2010 CRMUG Summit at the end of October, I lead a session with Chris Condron from FM Global called “Best Practices for CRM Environments.”
During this session we covered best practices for CRM administrators to keep a CRM environment running smoothly (and by extension, keep users happy).
- Automation—The best system administration is automatic. By automating system administration processes, you guarantee consistently repeatable results. Some of the areas that should be automated include environmental refreshes, configuration deployments, and client installations and updates.
- Sandboxing development—Some frequent CRM deployment issues happen when there isn’t a clear distinction between dev and production. A best practice that can avoid these issues is by sandboxing dev in a separate environment from your UAT/Production environments.
- Source control—CRM is a very agile, customizable system; however, it is still important to apply standards of good source control practices to your configuration changes.
- Performance and sharing—Sharing is a very powerful tool for your CRM security strategy; however, if sharing is not properly implemented, it can cause performance degradation. The CRM database Primary Object Access table is used by crm to record privileges for each record shared with a user or a team. If this table gets too large, performance of system views and searching can be impacted. If you are sharing a large number of records, team sharing is recommended (instead of sharing with individual users), as it reduces the number of records in the POA table.
- Backup—Disasters happen. Having a good backup strategy is vital—knowing how often to back up, and what components to back up is the most critical component in disaster recovery.
November 24, 2010
You are probably aware that approximately every 8 weeks Microsoft releases an Update Rollup, a cumulative set of updates and fixes.
When deploying an Update Rollup, it’s important to realize that update rollups include two categories of updates:
1. Bug fixes—these are fixes to issues where CRM is not working as designed, and they are applied automatically when you install the update rollup.
2. Design changes—these are updates where CRM is working by design, but Microsoft has made a change in the way CRM works. For example, there were recently some updates that changed how CRM handles housekeeping of completed system jobs. Design changes require a manual change on the CRM server, typically a registry change, to enable the update, since Microsoft doesn’t want to change the system design for users who expect it to work the way it was originally designed.
The changes that require a registry change to enable are included in knowledge base article for the update rollup under the section "Hotfixes and updates that you have to enable or configure manually.”
This is why it’s important to read the knowledge base articles associated with CRM update rollups before you roll them out. Read through the changes included. I only make the changes that require registry changes if the fix addresses an issue that I’m seeing in my environment. Making changes that fix issues that you are not experiencing can have unintended side effects. It’s ok to pick and choose which ones you enable.
This is also why, if you read a blog or hear somebody from Microsoft say “Rollup X fixes that problem,” don’t automatically assume that the problem is fixed because you have installed the update. Read the small print—there may be additional steps required to enable the change.
November 19, 2010
The other day we helped one of our customers bring their production CRM environment back online. Earlier in the week, they lost one of their Microsoft Active Directory domain controllers. When the controller went down, users could no longer access CRM. All users were getting the error message below when trying to access CRM.
Server Error in '/' Application.
The server is not operational.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Runtime.InteropServices.COMException: The server is not operational.
We were able to recover from the failure of the Domain Controller by setting the “PreferredDc” key to the HKLM\Software\Microsoft\MSCRM registry hive. This key sets where CRM goes first to get security information for user requests.
Before setting this value, it is important to remember that if you lose the domain controller specified in the PreferredDC registry key, CRM performance may be impacted; however, if you are having some performance issues or weird conditions related to authentication, you might want to give it a try.
For implementations that have huge MS infrastructures and many users and security requests, they could spin up an additional DC and then point CRM to that domain controller. This way users and security requests would have a dedicated DC to handle CRM authentication requests. The following link references the KB article from MS.
After adding the key you will need to reboot your server.
You may want to take a look at what domain controller CRM is sending user security requests to, and which DC is responding. Example(s): If you have a large exchange environment, you might not want to send CRM requests to the same domain controllers where the exchange servers are sending their requests. Or if you have a Windows 2008 AD infrastructure with read-only domain controllers, you may want to see if CRM is sending requests to them and try sending them to a read-write domain controller using this key.
October 27, 2010
Implementing a new Microsoft Dynamics CRM system and strategy will most likely modify the way employees work, which inevitably will lead to some users unfortunately resisting change. After all, it is human nature for employees to initially not want to modify a routine or procedure that they are currently comfortable with doing and that has met expectations in the past. The fact that some users may be slow to embrace Microsoft Dynamics CRM poses a challenge, as firms want to maximize their return on investment in CRM as quickly as possible. In order to increase Microsoft Dynamics CRM user adoption and overcome those resistant to change, companies must find ways to motivate and actively engage the user base.
For all Microsoft Dynamics CRM deployments, firms of all sizes should have an Executive Steering Committee with a designated Project Sponsor. As the firm’s CRM champion, the Project Sponsor must be readily available to support and encourage new Microsoft Dynamics CRM users as they become acclimated to their new system. The firm’s CRM strategy should be well-defined prior to the implementation and often communicated to its users. It is crucial that the executives emphasize that the Microsoft Dynamics CRM application will enhance the users’ productivity, save them time, and optimize their interactions with all stakeholders, from clients to partners to suppliers to prospects. It is also important to clearly articulate the benefits that the solution brings to the organization and how it will help the firm and each individual user meet concrete short-term and long-term goals. In order to set the right expectations, all departments should be informed of their specific roles during the implementation and as users of the system. Workflows that may have to be adjusted should be identified and conveyed to the appropriate functional units. The Executive Steering Committee should also relay to the users which Key Performance Indicators will be tracked and reported in Microsoft Dynamics CRM in order to instill more accountability and establish a new higher standard of excellence. Additionally, the Steering Committee should always provide users across the organization with brief updates on the progress of the CRM implementation milestones. Lastly, it is highly recommended that a detailed training plan be devised and shared with the users well in advance of the actual training dates.
To help facilitate a smooth implementation and increase user adoption, Project Sponsors must advocate that CRM is so much more than just a software application. It is an ongoing strategic initiative that goes well beyond the initial purchase and roll-out. In order for Microsoft Dynamics CRM adoption to increase more rapidly, it is crucial for Project Sponsors to 1) reiterate and remind the users of the firm’s strategic vision and commitment to CRM, 2) provide users with recurring updates on the implementation timelines, 3) seriously listen to user feedback and suggestions, and 4) provide users with thorough and ongoing training.
Customer Effective can certainly tailor an extensive training program to meet your unique needs and increase your CRM user adoption. We can lead and assist with the training of end-users to help them use Microsoft Dynamics CRM more proficiently and consistently.
September 24, 2010
So I came across a situation this week that I was not sure how to handle. I have a client that has a Microsoft Dynamics CRM Online solution. They are contracting our organization to help them develop and configure some additional functionality. So the question came up: “Where do we do the development work?” I realized I wasn’t exactly sure of the answer. - so I decided to go find out.
Traditionally, when medium-to-large organizations are implementing any sort of new technology or application, there are multiple types of environments. These include, but are not limited to the following:
- Development Environment
- Test Environment
- Production Environment
As the names imply, each environment is reserved for a particular type of activity in the context of a large system implementation. Management cringes at the idea of developers “free-wheeling” around on production servers – hence the use of “development” environments whereby programmers and technical consultants build out their solutions. Similarly, Test Environments are usually “playgrounds”, reserved for User Acceptance Testing (UAT) – otherwise known as “Scripting”. Users can test-drive the application without repercussions from errors or problems encountered while working through pre-defined test scripts.
So with these concepts in mind, let’s circle back to the original question for my MS Dynamics CRM Online customer who wants to do development. “Where do they do development work?” There are a couple of options here. I will go through each of them and provide a few details around each:
- Buy Another Online Account: The customer always has the option of buying another “temporary” account to conduct their development and/or testing.
- Rent a Hosted Server: There are a number of organizations that offer what is essentially “server leasing”. This can be a dedicated or shared server. In this example, MS Dynamics would be installed on the server. The developers would then do their testing on this server "(“box”) and the export the configuration when finished.
- Request a Sandbox/Demo Subscription: After contacting the Microsoft Regional Sales Manager for my client, another option is that my client can open a new 30-Day Trial Subscription. This type of subscription can be found here. The Sales Manager is going to extend this to a 6-Month Pilot Subscription, which should be plenty of time for the planned configuration.
Out of the options above, in my opinion, there’s not a “correct answer”. - As it largely depends on the type of project / configuration changes that the organization is looking to implement. Larger-scaled implementations will command a more structured approach. More simplistic implementations may allow for a more nimble team that only needs a sandbox environment for a brief period of time.
One other point of consideration is the current production system data and configuration. This will be handled as well, with assistance from Microsoft. We’ll import the customizations, after exporting to a .XML file. Our Microsoft Sales Manager is going to submit a support ticket in order to get the existing data migrated over to our new Pilot Subscription. Shortly thereafter, we should be in a good position to begin our new configurations!
Here are a few links to good information that I found as I researched this subject:
Good luck with your MS Dynamics CRM Online projects!
September 23, 2010
Microsoft has released Update Rollup 13 for Dynamics CRM 4.0 today. This is the latest cumulative update for Microsoft Dynamics CRM, and includes all fixes in Update Rollup 1-12.
This update fixes some of the biggest known issues with using CRM with the new Internet Explorer 9 beta, including jscript errors when creating accounts or other records. This means that you can now start to use the great IE9 beta. I would caution to not run it on a production PC, since it is a beta.
We have seen some environments with Update Rollup 11-12 have errors when adding members to Marketing List. This fix is included in Update Rollup 13. I tested on an environment that had the issue with Update Rollup 11, and it worked after installing UR 13.
- You can download Update Rollup 13 here
- You can read the knowledge base article here
- You can read the official CRM Team blog announcement here
The following is the full list of new fixes included in Update Rollup 13:
Hotfixes and updates that were released as individual fixesUpdate Rollup 13 for Microsoft Dynamics CRM 4.0 contains the following hotfixes and updates that were released as individual fixes:
2306930 (http://support.microsoft.com/kb/2306930/ ) "System.Data.SqlClient.SqlException: Subquery returned more than 1 value" error message when you try to use the Advanced Find option to add members to a marketing list in Microsoft Dynamics CRM 4.0
2387536 (http://support.microsoft.com/kb/2387536/ ) You experience high CPU usage and high memory usage when lots of notifications are generated in a short time on the Microsoft Dynamics CRM 4.0 server
2306918 (http://support.microsoft.com/kb/2306918/ ) You experience slow performance when you move to views that include custom attributes in Microsoft Dynamics CRM 4.0
2346217 (http://support.microsoft.com/kb/2346217/ ) Outlook crashes when you finish a mail merge process by using the Edit Individual Documents option in the Microsoft Dynamics CRM 4.0 client for Outlook
2385412 (http://support.microsoft.com/kb/2385412/ ) You are prompted to log on unexpectedly when you try to create a new record from a lookup form in Microsoft Dynamics CRM 4.0
2406746 (http://support.microsoft.com/kb/2406746/ ) An IRM-protected email message is promoted to an email activity in Microsoft Dynamics CRM 4.0 unexpectedly
2308072 (http://support.microsoft.com/kb/2308072/ ) Microsoft Dynamics CRM 4.0 E-mail Router cannot resume to process email messages after Microsoft Dynamics CRM 4.0 E-mail Router encounters an issue
Issues that were not previously documented in a Knowledge Base articleUpdate Rollup 13 for Microsoft Dynamics CRM 4.0 resolves the following issues that were not previously documented in a Knowledge Base article:
- You receive an error message when you set a value in the Duration field of a record in the Arabic version of Microsoft Dynamics CRM 4.0.
- The Microsoft Dynamics CRM 4.0 client for Microsoft Office Outlook downloads notification events for all organizations instead of dowload notifications only for the configured organization. Therefore, you experience high CPU usage and high memory usage.
- When you try to reopen an Opportunity entity, you do not have the rights to complete the process unexpectedly. Additionally, the value in the ActualRevenue field and the value in the ActualCloseDate field are reset to a null value even though the opportunity is not reopened.
- If you enable the Duplicate Detection feature for entities that you try to import to Microsoft Dynamics CRM, you cannot use the Import Data feature to import the entities. This problem occurs if the entities contain lookup attributes.
- The deletion service cannot delete records successfully because of the inefficient queries in the CleanupInactiveWorkflowAssemblies stored procedure.
- When you run a duplicate detection job, the Potential duplicate records grid displays incorrect data.
- Consider the following scenario:
- You receive an e-mail message from a router that uses a POP3 e-mail account.
- The e-mail message contains an attachment that uses the UTF-8 encoding.
- When you import an organization to Microsoft Dynamics CRM 4.0, Deployment Manager crashes. This problem occurs on computers that run the 64-bit version of Windows Server 2008 or that run the 64-bit version of Windows Server 2008 R2.
- When you change the privileges on a security role, the date in the Last Modified On field is not updated.
- You cannot run the Configuration Wizard in the Microsoft Dynamics CRM client for Microsoft Office Outlook with Offline Access if the user account contains an apostrophe (').
- When the Microsoft Dynamics CRM E-mail Router processes e-mail messages from the Microsoft Exchange Server 2010 mailboxes, the current end date is incorrect.
- The Microsoft Dynamics CRM E-mail Router does not track the Out of Office (OOF) e-mail messages.
- Emails receive a duplicate tracking token when you create the emails from a workflow.
- Assume that you run the Beta version of Internet Explorer 9. When you try to create an account, you receive a script error.
- Assume that you run the Beta version of Internet Explorer 9. When you run the Print Preview function, you cannot select the All records on all pages option in the Print List dialog box.
September 03, 2010
The CRM/GP integration was featured front and center at Dynamics Convergence this summer in Atlanta. The demo (below) is a pretty good demonstration of what a seamless supply chain - CRM workflow should look like. Like any out of the box solution, it has it's bound to have it's limitations, but it's already creating a buzz with GP customers who are anxious upgrade their CRM experience.
The integration directions and included entities are below. Some entity information is not bidirectional. For example, a product entered in CRM cannot be integrated back to GP as a Sale Item, but GP Sales Items will integrate to CRM as a Product.
Like I said, this is a free adapter for active Microsoft Dynamics GP customers who have a current SA Support Plan. Please let Customer Effective know if you have any questions about GP/CRM integration.
July 30, 2010
Microsoft has released Update Rollup 12 for Microsoft Dynamics CRM. Update Rollup 12 is a cumulative update including all updates in the previous 11 Update Rollups, as well as many new fixes. As usual, we recommend only installing the Update Rollup if you are having any issues resolved by it.
Keep in mind that if you are updating the Outlook client, Update Rollup 7 is a prerequisite. On the server, you do not have to have any prior updates installed to install UR 12. This update includes some fixes for email tracking, as well as the pesky "disappearing appointment" phenomenon.
From the Knowledge Base article, here is the list of fixes unique to update rollup 12:
June 25, 2010
Whether your company has a mature CRM program fostering growth and managing relationships or your company has recently decided to add a CRM solution to support your business model, we are finding that customers are starting to increase their focus on marketing capabilities. Microsoft CRM provides users with a great starter set of tools for everything from managing marketing campaigns, to building dynamic marketing lists, to tracking and analyzing the productivity of your efforts. I am not going to write about the individual feature sets within Microsoft CRM for marketing, but instead I am going to focus on some guided stages to ensure marketing success when coupled with an effective marketing management solution.
At their basic cores, Marketing and Business Development, work to ensure that your brand awareness is high, prospects and customers are educated on your offerings and your sales teams have a steady flow of potential business to win. Marketing departments work to cover as many customer touch points as possible - this often includes outbound marketing efforts like email marketing, direct mail, print or television ads, social media communications and trade show attendance. All of these activities are meant to drive customer interaction to your company –through your website, an inbound sales phone number or a social media forum. The vast majority of these touches are designed to gather information about potential revenue targets. Another evolving area of marketing is social media and its impact on brand awareness management. This topic in and of itself is a rather complex and ever evolving set of processes to be discussed later.
The success of most marketing efforts is based on an individual interaction’s ability to achieve an end goal. For example, in an email marketing effort, the end goal may simply be to inform your potential customers about your brand or introduce a newer, better version of a legacy product to your existing customer base. In the example of the new product introduction, there are many steps to this process. We will walk through the business processes to manage this type of a campaign while mindfully visiting a successful CRM roadmap for marketing success.
Step 1 - Determine the Marketing Effort
Before you do anything in any CRM application, you need to understand your marketing effort and the desired goal or direction. This likely includes the scope of the effort, budget, start and end dates, expected response or success measurement and who is the target. In Microsoft CRM, the out-of-the-box Campaign Management functionality is a good place to start. You can find numerous articles and posts on how this functionality works in Microsoft CRM. Microsoft CRM is a great tool, out of the box, to track these efforts - including strategic direction meetings to content task definition, ownership and review.
While Planning Tasks allow you to track, manage and maintain the campaign direction and planning execution, Campaign Activities outline the tactical execution of the marketing campaign. These activities include email communication execution and scheduling phone calls for account managers. Again, there are numerous places to understand the unique uses for each of these items. One key component to marketing campaigns is marketing lists. All of the time spent within the organization to build and maintain your CRM database comes into play at this point. The Advanced Find functionality is a key component of marketing list creation and administration. Be sure to spend time working with and understanding the intricacies of Advanced Find and the subsequent marketing lists. These skills are required to communicate with your target audience whether that is through email, direct mail or voice.
One additional item to take into account when planning your campaign relates to effectiveness. It is important to spend time documenting what will constitute a successful campaign. Be sure to address success metrics like response rate, budget, leads cost versus pull through or many other analytical items. You should ideally put yourself in the position to know if a campaign has been successful. If you have expectations that an email marketing campaign is going to have a 15% response rate, be sure to capture that metric up front. You have a lead generation marketing campaign that targets a specific set of unqualified suspect records in your CRM database. It is important to know the source campaign of an opportunity (pull through from the lead to a qualified sales opportunity). Be sure to differentiate lead or contact record source campaign tracking for a lead versus the pull through of a lead to an actual sales opportunity.
Once you have identified your marketing efforts, campaign tactical steps, target audience and success metrics, you are ready to launch your campaign. The basics of marketing management are achieved with the out-of-the box functionality within Microsoft CRM. You can extend the information you are capturing at the various points, which is not a difficult extension to perform. In the next article, the topics will include different integration options to bolster your Microsoft CRM marketing management - like email marketing, social media and web analytics.
May 27, 2010
Several people have asked me recently if Dynamics CRM 4.0 will work with Exchange Online, Microsoft's new hosted version of Exchange 2010. It seems like many companies are considering outsourcing Exchange to Microsoft, which to me sounds like a great idea.
The answer to the question of compatibility with Microsoft Dynamics CRM is "yes!"
As of the Nov. 2009 R4/Update Rollup 7 Email Router, Exchange Online is now an option. The CRM team achieved this by changing the e-mail router to use exchange web services for sending and receiving emails--so in effect, they have totally changed what is happening under the hood while preserving the functionality and the user experience.
This means that you can have full email sending and tracking capabilities using CRM with Exchange Online, including forwarding in-box or workflow emails sent using the email router.
Some small considerations:
- You can't have CRM E-mail routher configured to use both on premises Exchange and Exchange OnLine. You have to use one or the other
- Exchange Online doesn't send emails AS another user, it sends them ON BEHALF OF another user--what this means is that emails like workflow generated emails where an administrator sends an email as a different user would appear differently than they do with on premised Exchange--they would say "Mary Jones on behalf of John Smith." Microsoft says that if you want to enable sending as other users with Exchange Online, you can, but it requires you to log a support call.
See Configure Microsoft Dynamics CRM Online E-mail Router with Exchange Online for details on setting up the E-mail router with hosted Exchange. While this refers to Crm Online Email Router, just about everything is the same for on premises deployments of CRM connecting to Exchange Online.
May 24, 2010
JUNE 2011 Author update: When this post was written, there was a limitation in CRM 4.0 that prevented the asynchronous service from being run on multiple servers in a Dynamics CRM 4.0 implementation. While the approach recommended in this post was a good recommendation at the time, the reader should be aware that subsequent Update Rollups have resolved conflicts preventing the asynchronous service from running on multiple servers. I would recommend that if you want to scale your deployment to multiple servers, consider using a network load balanced cluster with the asynchronous service running on both nodes. This will provide improved performance for users as well as high availability for failover.
ORIGINAL POST--MAY 2010
One of the choices when deploying Microsoft Dynamics 4.0 is whether or not to separate server roles.
When you install Dynamics CRM on a server, the application layer (web server, CRM application) and the platform layer (asynchronous service, discovery service, sdk) run on the same server.
There are several reasons that you would want to separate server roles. For example, if you have a heavy quantity of asynchronous activity, such as imports, workflows or plugins, you don't want to affect availability of the application, and you don't want asynchronous operations to have a long backlog and slow down the amount of time it takes for new asynchronous operations to be processed.
The traditional way to separating server roles with Dynamics CRM 4.0 Enterprise was to select the separate server roles option when installing. This gives you the option to install the roles that you want on a server, so you can have one server be the application role, and have another be the platform role, for example.
Before you do this, you should be aware that going with the separate server roles may introduce some complexity into your environment. When everything runs on one server, everything uses the same server URL; however, if the platform role is separated, things that hit the discovery service, such as the outlook client, email router, and custom code will need to hit the URL of the platform server, not the application server URL, and having two different addresses may add some confusion for certain users. If you elect to deploy your environment Internet facing, or IFD, so you have CRM available to people not on your network, there is a lot of complexity and frankly this option is not very well documented in the IFD scenarios documentation.
IFD and Separate Server Roles
if you have separate server roles, you will need to expose both the app server website and the platform server website externally. You will need to run the ifd tool on both the application and the platform server--this is not documented in the ifd scenarios document, but is required if you want external users to be able to configure Outlook clients in ifd mode, You will need to have ssl certificates on both the application and platform server, which will cost you extra. The IFD scenarios document doesn't say this, but you will have to have your platform server URL be organization specific--if your CRM URL is myorg, for example, you will need the URL to be something like myorg.platform.company.com. again, not documented, but CRM will expect the org name to be in the Url when you configure the Outlook client. Users will have to configure their outlook clients using the platform server URL, not the CRM application URL. The reason for that is the outlook client connects to the discovery service during configuration, and the discovery service is part of the platform role, not the application. having a different CRM URL for outlook client and web client can be very confusing to some users.
An Easier Approach
As we have seen, the traditional approach to separating server roles may add some complexity to your CRM deployment; however, that doesn't men you shouldn't do it. Rather, there is another approach that achieves the same goals.
This approach is to install the full CRM application on both servers, both pointed at the same CRM databases. On server A, stop the asynchronous service, and on server B, start the asynchronous service. Drive all of your users to the URL of server A.
The end result is that, like with separate server roles, you have all application traffic handled by server A, and all asynchronous load handled by server B, but you avoid all of the complexity of traditional separate server roles. Users will be able to use the same URL for the web and outlook interfaces, and Internet facing deployment will be much more straightforward, requiring only on URL or ssl cert.
Thanks To Alex Fagundes at Power Objects for providing input for this post.
April 29, 2010
In my previous post, I pointed to the new hosted location of the CRM 4.0 Trace File utility.
The CRM Trace output is great because it produces very detailed information on what is happening on the server during a specific time.
One thing to note however is that the log files can become VERY large – and starting a new trace does not remove the log files from previously executed traces.
Additionally, the trace utility zips up everything in this directory each time, and if the directory contains old trace files, the actual file in question may be located among hundreds of older logs.)
To maintain the directory, you can manually delete the files from the server by opening Windows file explorer and navigating to the C:\Program Files\Microsoft CRM\Trace\ directory.
The file names follow a specific format:
(The actual directory used by the trace may be located elsewhere on your server. – You may need to search the drive to find the actual location for your environment.)
Files that are in use won’t be available to delete without a re-start, but deleting the older files should be sufficient.
A tip suggested by Steve Onufrock is to use a simple batch file to delete the older logs before initiating a new trace.
del /q DriveLetter:\Program Files\Microsoft CRM\Trace\*.log
[You’ll need to verify the location of the trace directory before implementing it – and please use this carefully, since you’re deleting files on the server, a small mistake could render your server unusable.]
April 28, 2010
The indispensable Microsoft Dynamics CRM Trace, Support & Diagnostic tools have moved to a new location -
The tools are invaluable for troubleshooting permissions errors and other surprises. -
http://support.microsoft.com/kb/907490 describes the process for enabling the trace manually, but the CRM Diagnostic Tool puts a nice face on it – and will zip up a copy of the resulting trace and environment information into a package for support.
NOTE: This tool does not work remotely, it has to be executed locally on the Target server!
They were created and formerly hosted/managed by Benjamin Lecoq – a former Microsoft Escalation Engineer.
April 11, 2010
Update Rollup 10 is a cumulative update rollup that includes all the fixes for the issues that are documented in Update Rollups 1 through 9.
The Build number for CRM 4.0 UR10 is 04.00.7333.2741
The updates for both Client and all Server Apps can be downloaded here: Download
For Full details about what is included in Update Rollup 10, see http://support.microsoft.com/kb/979347
* Prerequisites for installing UR10 *
For the both the CRM Outlook Client and the CRM Data Migration Manager, at a minimum, CRM Update Rollup 7 must be installed prior to installing UR10.
On the server, the previous update rollups are not required before installing UR10.
Although it’s desirable, the server and the clients do not have to be updated at the same time to the same UR.
* Hotfixes and updates that you have to enable or configure manually *
Please note – CRM Update Rollup 10 for Microsoft Dynamics CRM 4.0, like UR1-UR9 contains hotfixes and updates that you must enable or configure manually – both at the client and the server level.
It’s worth the time to take a few minutes and walk through the notes that describe the fixes that require manual configuration – usually just adding or modifying a registry key – it’s too easy to miss out on some fixes or functionality improvements available.
You can enable or configure these hotfixes and updates on the server that is running Microsoft Dynamics CRM 4.0 by following the instructions in the Microsoft Knowledge Base (KB) articles listed in the KB article.
* Auto-updating CRM Clients in a deployment *
Recent updates have removed the need to be running as a local administrator to install the CRM for Outlook Client Update Rollups. It’s now, more than ever, feasible to deploy the client updates via the CRM Client Auto Update feature. –
See this blog post for more information on how to set up / deploy the clients via AutoUpdate. http://blogs.msdn.com/crm/archive/2008/05/08/crm-client-autoupdate.aspx (The Keys needed for UR10 are listed in the section “Microsoft Dynamics CRM for Microsoft Office Outlook Auto Update IDs and Link IDs” of http://support.microsoft.com/kb/979347)
February 02, 2010
Guest Blog Post from our Friends at ExactTarget
At ExactTarget we are always looking for new ways to help our customers improve their online marketing programs. This year, we thought we’d start the year off as most people do, with a set of New Years Resolutions. These 5 Resolutions can help keep your marketing program fit and in shape!
ExactTarget’s new whitepaper, Five Resolutions Every Marketer Must Make in 2010, outlines the plan simply and succinctly:
1. Be helpful, not just social.
2. Engage your subscribers.
3. Treat subscribers like friends.
4. Design for your subscribers.
5. Get back to basics.
Build richer subscriber data through the integration of Email and CRM
The Five Resolutions Every Marketer Must Make in 2010 whitepaper emphasizes the importance of understanding, engaging and educating your subscribers. The more you know about your customers and prospects, the more effectively you can communicate with them.
ExactTarget’s integration with Microsoft Dynamics CRM lets you manage and automate a wide variety of marketing campaigns that leverage information about your leads, contacts and accounts. The integration between ExactTarget and Microsoft Dynamics CRM lets you:
· Automate. Use Email Marketing Automation capabilities and templates to create date and event-based scenarios that execute automatically.
· Extend. Extend personalized, relevant, one-to-one communications from email to the web with ExactTarget’s Landing Page functionality.
· Personalize. Reinforce subscriber relationships with personalized emails on behalf of your Lead, Contact, and Account owners.
· Analyze. Use real-time tracking results to send follow-up messages to an engaged group of subscribers.
ExactTarget and Customer Effective partnership
We’re proud to partner with Customer Effective to deliver this integrated offering. To learn more about the integration of ExactTarget for Microsoft Dynamics CRM please visit the ExactTarget Extensions Network. Customer Effective is certified in the ExactTarget for MSCRM integration. They are well positioned to help you understand how to leverage ExactTarget in your specific Microsoft Dynamics CRM environment.
December 22, 2009
Incoming Status: Failure - The remote Microsoft Exchange e-mail server returned the error "(404) Not Found". This user or queue does not have a mailbox. Create a mailbox and try again. The remote server returned an error: (404) Not Found.
The first thing to check is credentials, make sure you typed in the username, password and domain for the user properly. Verify and re-type these in the Incoming profile.
If you are still receiving the error, ensure that you can log into Outlook or Outlook Web using the credentials specified in the Incoming Configuration.
If this does not work, compare the email address that you set up on the User or Queue in CRM with the username that set in the Router's Incoming Configuration Credentials. If the portion of the email address before the @ symbol does not match the domain login name, you could be experiencing the issue identified in this article:
For example if your Incoming Routing Profile is set to log in as contoso\askus, and the queue is set up with an email address of email@example.com, the router may be having a problem matching up the accounts. You can test this out by changing the address in CRM to firstname.lastname@example.org and then test to see if this resolves the error.
You may have to do some re-configuring within Active Directory and Exchange in order to get things working as you would like them to.
November 11, 2009
The CRM E2 team has released an excellent new white paper Field-level Security in Microsoft Dynamics CRM: Options and Constraints, available for download from the Microsoft Download Center at: http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=471f8670-47b3-4525-b25d-c11a6774615c
“This document provides selected aspects of the conceptual application of the Dynamics CRM security model, with details about the various options and constraints that are associated with using supported custom logic to control of access to data at a more granular level than is provided by Microsoft Dynamics CRM out-of-the-box.”
I found it helpful in thinking about how to frame discussions around customer requests for field level security, and a good explanation of potential gaps / holes left behind by different approaches.
It’s an excellent resource and introduction / background on the challenges of layering in additional security on top of CRM’s existing security model.
September 27, 2009
Ask yourself: How effective is my CRM program? Am I getting everything I need to manage my business and make informed decisions?
If any of your answers aren't backed by CRM supported facts, then you should keep reading. If you've partnered with Customer Effective in the past, you know about our User First Design Formula. Nearly everything we do is weighed against it's impact to the end user - from the Executives to Administrators to End Users. Within the methodology we feel it is extremely important to inspect what your business does and surface value-added detail through CRM. Yes, we are talking about Dashboards and Managing by Metrics.
A common approach taken to resolve this business need leverages SharePoint and custom web parts. All of these are exposed via CRM. Recently, Customer Effective has added a new tool to it's CRM project toolkit. If you are a customer working with us, you know about Interactions. Our value added add in that truly provides a one stop shop for that 360 degree view of what is happening with your customers, prospects and organization. Effective Dashboards bring additional tools to the end users. Out of the box, CRM doesn't provide end users a simple way to build visual elements and add them to your deployment. The SharePoint approach is still extremely valuable and a recommended strategy for projects that really push Business Intelligence. Effective Dashboards can supplement this approach or be utilized on it's own.
Effective Dashboards gives trusted end users or Business Analysts, where security appropriate, the ability to create a dashboard on the fly that leverages CRM entities. You can take this responsibility out of the hands of the IT department to build specific web parts and manage a SharePoint site. Imagine being able to build a dashboard based on CRM records from within CRM. Salesforce.com commonly targets this "missing" functionality in CRM. For Customer Effective, that is no longer an issue. In fact, we believe we now are able to address Business Intelligence in a way that Salesforce.com cannot. You now have multiple BI delivery points and possible solutions. Did I mention we will bring this to the table for all of our projects going forward? As part of our project offerings, we bring all of our toolkit items to the table for your use.
What do you need to know about Effective Dashboards? Just like views, Effective Dashboards leverage Advanced Find functionality. You have the ability to create both System-wide and My Dashboard applications. Yes, you can drill through the dashboard charts and graphs to CRM records. It honors your security model. You can create a dashboard to look at your business metrics and expose it in CRM in hours instead of weeks.
You can learn more about Effective Dashboards and the rest of our project offerings, hear real world examples from our customers and gain a deeper insight into Microsoft CRM at the Customer Effective User Conference. The event is being held October 29th and 30th in Greenville, South Carolina.
You can find more information about the User Group here: Customer Effective 2009 User Conference. If the User Conference doesn't fit your schedule, you can contact us at (877) 252-2171 or (864) 250-2170.
September 22, 2009
Our friends at Scribe Software are offering a free webinar October 1 at 11 AM EST on the topic of optimizing Scribe Insight performance.
Eddie Cole, Senior Software Engineer
John Gravely, Vice President of Marketing and Product Marketing for Scribe Software
Brendan Peterson, Technical Support Analyst
This will be a great session for anyone who uses Scribe and wants to optimize their integration processes.
For a preview, see Brandon’s blog post from the Scribe blog Getting the biggest bang for your buck--Improving Scribe Insight Performance.
UK MVP David Jennaway has a fantastic post on the CRM Team Blog today about the considerations when integrating external data with Microsoft Dynamics CRM. It is a great overview of the various approaches—when to move data into CRM, and when to integrate data by leaving the data in the external system and displaying it in CRM via a report.
I find that frequently integrations can be simplified using the report method. if no CRM processes are driven by the data, and the data does not need to be displayed in CRM views, a report can be a quick way to make data available to CRM users without having to move the data into CRM.
Worth the read--Check out the article here.
September 11, 2009
As you configure Microsoft Dynamics CRM, one question that frequently arises is should I create a custom entity or repurpose a system entity. By repurpose I mean take an entity that is designed for one purpose and modify its fields and form layouts to serve a different purpose. Say you are configuring CRM for a property management company. There are no system entities in Microsoft CRM called “properties” or “leases,” but there are entities that are somewhat similar, such as Contracts and Opportunities. It can be tempting to say “I’m not doing sales opportunities, let’s repurpose the opportunity as the Property entity.” The perception is frequently that adding additional entities will complicate the configuration.
Before you repurpose system entities, you should first consider several things:
1. Consider the future—is there any chance that you might need the entity in the future? Sure, you might not use sales opportunities right now, but can you say for sure that there is no chance that another department might not see what you are doing in CRM and decide that they want to use it too? If you repurpose a system entity and later have a need for it, you will paint yourself into a corner and make it very difficult to impossible to change course down the road.
3. Consider the user experience—due to the added overhead of a repurposed system entity, typically a custom entity containing only the fields and links that are necessary will be more user friendly than a repurposed system entity. Take a simple example, like the entity icon. Microsoft CRM does not allow you to modify the icons of system entities, so when you repurpose a system entity, your property entity will still have the standard CRM Opportunity icon. This can be very unintuitive for users. A custom entity, however, can have an icon of a house or office building, or whatever makes the most sense.
Simplicity in a CRM configuration is not determined by the total number of entities in the system, but rather in how they are presented (or not presented) to users. Really no user should see every entity in the system when they log in to CRM—they should see only what is necessary for them to do their job. Adding custom entities will not complicate their experience, especially if you remove the unused system entity links from their view.
In case you don’t know how to do this, here are some related links:
August 19, 2009
When a user exports to Excel from Advanced find there is a setting in the database that determines the maximum number of records that can be exported. –
The default setting is to allow export of a maximum of 10,000 records, this limits the impact of the export on database performance. – If your organization needs to, the value can be changed to allow more records to be exported at a time.- In CRM 4.0 it’s the value in the MaxRecordsForExportToExcel in the organizationbase table. -I’d suggest working with a certified Dynamics CRM partner or Microsoft Support before making any changes to the organization base – since a mistake in the organizationbase table can really ruin your day.
Special case for Marketing Lists…
Currently, (August 2009), there is a known bug associated with exporting members of a Marketing List when you export from the Marketing List Members view, (not from advanced find) – The maximum is based on 10x the number of records displayed per page. - In other words, if you have 50 records displayed on a page, 1000 records can be exported; if you have 250 records displayed on a page, 5000 records can be exported. (The workaround is to export the same records by building an advanced find which shows records associated with that marketing list - and exporting from there.- There is a fix in development for this, contact Microsoft Support for more information/status/availability of this patch.)
July 24, 2009
I recently had a case where sensitive data needed to be stored in Microsoft CRM, and the company management wanted to make sure that the data would be securely encrypted.
One of the great new features in SQL Server 2008 is Transparent Data Encryption (TDE). TDE encrypts everything in the database while being transparent to applications. The encryption is sticky, so files are encrypted as they are detached or backed up
TDE is fully supported with Dynamics CRM 4.0.
For more details see Improving Microsoft Dynamics CRM Performance and Securing Data with Microsoft SQL Server 2008 by the CRM E2 Team. It contains a great overview of TDE, and benchmarks showing potential performance impact of encryption.
Thanks to Matt Parks for reminding me about this white paper.
July 14, 2009
In case you haven’t heard, Microsoft CRM Mobile Express for Microsoft Dynamics CRM 4.0 was released recently. Mobile Express is a mobile browser friendly interface for CRM 4.0 that makes it easy for users to look up CRM data and enter data on the go. Mobile Express is a free download.
I played with the beta of Mobile Express 4 several months ago, so I was excited to see what the final release looked like. Here are my initial reactions:
1. The installation is one of the easiest installations I have ever done—it is literally a hotfix. The total installation time is less than 3 minutes. It does require you to restart your CRM server, so be sure to do it at a time that won’t disrupt your users.
2. It is a great complement for IFD implementations. If you used the 3.0 version of Mobile Express, you had to set up an externally available URL for users to use. ME4 simplifies this by using the existing IFD url. So if your CRM external URL is https://crm.contoso.com, after installation, you will have a mobile url https://crm.contoso.com/m that will direct users to the mobile express site. Especially if you already have an IFD enabled implementation, Mobile Express is a no brainer—with really very little work you gain a lot of functionality and user convenience.
3. Configuration is very convenient. After installation you will find a Mobile Express configuration link in Settings—>customizations. This allows a user to configure Mobile Express and select ME form layouts without having to log on to the server.
Some considerations as you roll out Mobile Express:
1. Configuration of forms is separate from CRM form customization—you have to select which entities and attributes are available from Mobile Express—this allows you to lay out the mobile form in a way that makes the best use of the smaller form factor.
2. Mobile access is controlled via CRM security. After installation you will see a new permission called “Go Mobile” in CRM security roles. This permission is enabled by default for all roles, and it gives you an easy way to exclude users from being able to use Mobile Express if there are security concerns.
3. It works with virtually any mobile device. I have tested on an iphone, Windows Mobile, and Blackberry. It is also an option if you have limited use users that use a Mac or Linux and just need to look up data, since it works from browsers such as Safari, Firefox, Opera, etc.
May 18, 2009
Recently, I've been writing for MSDynamicsWorld.com. This website discusses all things Dynamics. There are news articles, best practice advice and general information about CRM as well as AX, GP, NAV and SL. You can check out my latest column on the importance of Executive Leadership in a CRM Program right here -
April 14, 2009
When you configure Microsoft Dynamics CRM Internet Facing (IFD), users may be presented a Windows login dialogue box when they try to access the CRM Help menu.
They will not be able to log in with the login box, and they will get an "Access denied" error message.
To fix this issue, edit the Help virtual directory on the CRM web site to accept anonymous authentication. In IIS MGR 6.0, expand Microsoft Dynamics CRM web site tree under the Web sites folder. Right Click on "Help" and select properties
On the Directory Security tab, click "Edit" under the "Authentication and Access control" section
Click the checkbox to "Enable anonymous authentication." Click OK.
That's it. Now your IFD users can access help files.
April 08, 2009
The MS CRM 4.0 Documentation Generator Available for download as an open-source project. http://crm4documentation.codeplex.com/ A compiled installer is available for download in the ‘release’ section – full source code is available in the project as well.
The utility operates as an add-in for Microsoft Office Excel 2007 to automatically generate documentation for Microsoft Dynamics CRM 4.0 - [This is a fork off the original CRM 3.0 project.]
This tools generates documentation from an exported CRM 4.0 Customizations file (zip or XML):
- Entity Forms - including Tabs, Sections, Field Names, Types and Descriptions
- Picklists - List Picklist Field Names, Text and numeric Values for Picklists on a form
- JScripts - Extract the scripts associated with the Form/Attributes on the form. (This is still a work in progress)
The add-in will run on Office 2007 Excel (with Visual Studio Tools for Office (3.0))
Extract the installation files and run Setup.exe - it will attempt to install any prerequisites.
Once complete, Start Excel.
The first time Excel runs with the add-in, you will be presented with a customization installation message - choose "Install."
Open the Add-Ins ribbon, press the load button to load your XML, then press the "Forms" button.
Once you've created a "Forms" documentation spreadsheet, Open a new blank spreadsheet and click the "Scripts" button, and then repeat with the "Picklists" button.
The foundation of this project is the result of the work of Merijn van Mourik in the CRM 3.0 Documentation Generator Project. - I've been unable to reach Merijn, if anyone has contact information, please pass it along.
April 06, 2009
So you need to move your your Microsoft Dynamics CRM 4.0 to a new server. Maybe your CRM server is getting old, or maybe your usage requirements have outgrown the capacity of your current hardware.
Times like this can make even the most seasoned CRM administrator nervous. However, if you follow a few a few basic steps, it should be a relatively pain free experience.
1. Backup. It goes without saying, but is worth repeating. Backup.
- MSCRM Database
- Config Database
- Export of customizations (including sitemap and isv.config)
- Custom reports
2. Follow the instructions. Microsoft has provided detailed instructions in KB 952934 for several common scenarios, inluding:
- Move the Microsoft Dynamics CRM databases to another SQL Server and SQL Server Reporting Services server in the same domain, and leave the Microsoft Dynamics CRM Server on the existing server
- Redeploy the Microsoft Dynamics CRM deployment that includes the Microsoft Dynamics CRM Server within the same domain or to another domain.
- Move the Microsoft Dynamics CRM Server or one of the Microsoft Dynamics CRM server roles. However, leave the SQL Server and the SQL Server Reporting Services server intact
3. If you are redeploying to a new SQL and CRM server, make sure that your SQL server has enough disk space for the redeployment. When you import your organization, the SQL log file will grow at least as large as the database. So if you have a 25 GB CRM database, you will need over 50 GB of free space on the SQL server for the process
4. If you are redeploying to a new SQL and CRM server, remove any unnecessary records from your database to make the process go faster. When you import the organization with the deployment manager, so any records you can remove will speed up the import. For example, delete completed system jobs from the asynchronousbase table.
March 09, 2009
The latest accelerator for Microsoft Dynamics CRM 4.0 was recently released. This accelerator is a combination of a dashboard report and a collection of workflows that give you a great way to track user activity in CRM.
Out of the box, the following events are included in the dashboard report:
- New case created
- Case reassigned
- New campaign created
- Sales opportunity closed
The most exciting thing about the Newsfeed Dashboard report is that it is extremely easy to configure additional events to show up on the dashboard. The report works by querying the Notes (annotation) table looking for subjects that begin with "Newsfeed:" To add additional events to the dashboard, just create a workflow to create a note against the selected entity and make the subject begin with "Newsfeed:" This even works with custom entities.
The dashboard report also includes drill through hyperlinks to the record, so you can click on an event on the dashboard and open the record in Dynamics CRM, and it is formatted very nicely to include CRM colors, fonts, and icons.
Based on my initial tests, the Newsfeed Business Productivity Accelerator is very complete and could be easily deployed with little or no modification (other than creating workflows for your specific CRM events).