Friday, July 29, 2011

Optimizing and Maintaining the Performance of CRM Clients in MS CRM 201

General Approach to Optimization and MaintenancePerformance tuning and optimization is a continuous balancing act between design decisions and resource availability. Consider taking the following high-level approach when optimizing and maintaining the clients that access a connected system such as Microsoft Dynamics CRM.
Note: Because Microsoft Dynamics CRM clients are CPU and memory intensive, the level of the hardware on which a client is running directly affects the performance of that client, with better hardware configurations yielding better performance results.
Important: Regularly downloading and installing the latest hotfixes and update rollups is always a first step in efforts to enhance and maintain the performance of clients that are accessing a Microsoft Dynamics CRM implementation. For a listing of current resources, updates and hotfixes available for Microsoft Dynamics CRM Online or Microsoft Dynamics CRM 2011, see the Dynamics CRM Solution Center at: click here
Factors Affecting Microsoft Dynamics CRM Client PerformanceMicrosoft Dynamics CRM client performance can be directly affected by several factors:
 Level of hardware and versions of software present in the computer running the client
 Extraneous processes and applications running on the same computer
 Characteristics of the network over which client access occurs
 Level and complexity of customizations applied to the solution
In addition, Microsoft Dynamics CRM for Outlook performance can potentially be affected by:
 The number of Microsoft Dynamics CRM organizations that a single instance of Microsoft Dynamics CRM for Outlook is configured to access. By default, Microsoft Dynamics CRM for Outlook is configured to access and display information from a single “primary” Microsoft Dynamics CRM organization, but it can also be configured to display information from one or more secondary organizations. An increase in the number of organizations that a single instance of Microsoft Dynamics CRM for Outlook is configured to access has a corresponding increase in the requirement for client memory.
 The volume of data that is processed during:
o Outlook synchronization
o Offline synchronization (Microsoft Dynamics CRM for Outlook with Offline Access only)
Hardware and Software Requirements
The performance of a Microsoft Dynamics CRM client is directly affected by the hardware on which that client is running, with higher-level hardware configurations (especially the level of processor and amount of memory) typically yielding better performance. In addition, there are specific software requirements associated with running Microsoft Dynamics CRM clients. As a result, be sure to verify that computers running Microsoft Dynamics CRM clients meet the appropriate hardware and software requirements according to their usage.
Important: Later versions of Internet Explorer provide enhancements that improve page rendering. As a result, it is recommended that computers running Microsoft Dynamics CRM clients be installed with the latest version of Internet Explorer that is supported within a specific business environment.
Extraneous Processes and ApplicationsAll the processes and applications running on a client computer can adversely affect the performance of Microsoft Dynamics CRM clients. For client computers with hardware at or near minimal-level requirements, consider turning off non-critical business processes, video streaming, and software such as games and music programs, to accelerate performance. Because this issue can have a greater impact on client computers configured for offline access, third-party add-ins for Microsoft Office Outlook can also be disabled to improve the performance of Microsoft Dynamics CRM for Outlook.
Note: Some desktop security software packages, especially those that scan all webpages for malicious JScript, are known to cause performance issues with web-based applications such as Microsoft Dynamics CRM. Most of these programs provide the ability to disable scanning on specific web sites, and adding the URL of the Microsoft Dynamics CRM organization to a list of exclude sites can help to improve performance in these situations. For other types of anti-virus software, make sure the URL of the Microsoft Dynamics CRM organization is included in the trusted zone for the virus scanning and disable “on-access scanning” for the site. See your specific anti-virus application documentation for more details.
Important: Each environment requires a thoughtful decision on what to include and exclude, and there is always a possibility that excluding files from scans can lead to unwanted consequences. Be sure to consider this option together with the well planned internal IT management policies established for a specific scenario.
Extraneous Processes and Applications
All the processes and applications running on a client computer can adversely affect the performance of Microsoft Dynamics CRM clients. For client computers with hardware at or near minimal-level requirements, consider turning off non-critical business processes, video streaming, and software such as games and music programs, to accelerate performance. Because this issue can have a greater impact on client computers configured for offline access, third-party add-ins for Microsoft Office Outlook can also be disabled to improve the performance of Microsoft Dynamics CRM for Outlook.
Note: Some desktop security software packages, especially those that scan all webpages for malicious JScript, are known to cause performance issues with web-based applications such as Microsoft Dynamics CRM. Most of these programs provide the ability to disable scanning on specific web sites, and adding the URL of the Microsoft Dynamics CRM organization to a list of exclude sites can help to improve performance in these situations. For other types of anti-virus software, make sure the URL of the Microsoft Dynamics CRM organization is included in the trusted zone for the virus scanning and disable “on-access scanning” for the site. See your specific anti-virus application documentation for more details.
Important: Each environment requires a thoughtful decision on what to include and exclude, and there is always a possibility that excluding files from scans can lead to unwanted consequences. Be sure to consider this option together with the well planned internal IT management policies established for a specific scenario.
Network CharacteristicsThe primary characteristics of a network that affect the performance of Microsoft Dynamics CRM clients are bandwidth and latency.
 Bandwidth is the width or capacity of a specific communications channel.
 Latency is the time required for a signal to travel from one point on a network to another; latency is a fixed cost between two points.
Important: It is recommended to test the implications of client performance in any WAN environment with potential bandwidth or latency issues, which can vary greatly from performance in a LAN environment
Level and Complexity of CustomizationsWhen optimizing the performance of Microsoft Dynamics CRM clients, keep in mind that client performance is directly affected by the:
 Number of:
o Columns and grids in use
o Rows returned per page
o Sub-grids used on a page
o Controls on a form (Form Design)
o Controls on the ribbon
 Complexity and number of visualizations used in dashboards
 Use of Jscript and Plugins. Advanced Jscript can add a significant amount of time to, open, save, close and other events especially if calls are made to Microsoft Dynamics CRM or other system. Also plug-ins can affect performance when saving.
 Also if you have any JS on onload event of the page
Configuring Internet Explorer for Optimal PerformanceConfiguring Client-Side Browser CachingClient-side browser settings can greatly affect user experience over slower connections. Internet Explorer 7 and later versions are configured to managed client-side browser caching automatically by default.
However, at times it may be advisable to increase the hard disk space reserved for temporary Internet files to help optimize performance by ensuring that the cache has adequate room to take advantage of improved load times when making subsequent visits to the same page for the same files.
 To configure client-side caching
1. On the client computer, in Internet Explorer, on the Tools menu, click Internet Options.
2. In the Internet Options dialog box, on the General tab, under Browsing history, click Settings.
3. In the Temporary Internet Files and History Settings dialog box, under Check for newer versions of stored pages, verify that Automatically is selected.
4. In the Disk space to use box, specify a value from 50 to 250 megabytes of disk space for temporary Internet files, and then click OK.
Important: In the Internet Options dialog box, on the General tab, under Browsing history, also verify that the Delete browsing history on exit check box is cleared to prevent the deletion of temporary Internet files each time that the browser is closed.
5. On the Advanced tab, under Settings, scroll down and verify that the Do not save encrypted pages to disk check box is cleared, and then click OK.
Note: After the client-side browser settings on a computer are modified, loading the Dynamics CRM Web client for the first time (the “cold” load) may take several moments longer than usual. Subsequent page loads (“warm” loads) will show improved performance, however, as many of the Microsoft Dynamics CRM Web pages will have been cached during the initial load.

Configuring Simultaneous Download SessionsBy default, Windows Internet Explorer 7 and earlier versions limit the number of files that you can download at one time to two. Windows Internet Explorer 8 limits the number of files that you can download at one time to six. This change reflects the faster connection speeds that are now typical for most users. Note that for dial-up connections, the limits from earlier versions still apply.

Important The following procedures require modification of the registry, which can create serious problems if the registry is modified incorrectly. As a result, be sure to follow these steps carefully and for added protection, back up the registry before making any changes.
 To increase the number of files that can be downloaded at one time to 10
Internet Explorer 7.0
1. Start Registry Editor, and then navigate to the following key:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
2. On the Edit menu, point to New, click DWORD Value, and then add the following registry values:
Value name: MaxConnectionsPer1_0Server
Value data: 10
Base: Decimal
Value Name: MaxConnectionsPerServer
Value data: 10
Base: Decimal
3. Exit Registry Editor.
Internet Explorer 8.0
1. Start Registry Editor, and then navigate to the following key:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPERSERVER
2. On the Edit menu, point to New, click DWORD Value, and then add the following registry value:
Value name: iexplore.exe
Value data: 10
Base: Decimal
Note set this value to the connection limit that you want for HTTP 1.1 connections. By setting the value to 10, you increase the connection limit to 10.
3. Navigate to and select the following subkey:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_MAXCONNECTIONSPER1_0SERVER
4. On the Edit menu, point to New, click DWORD Value, and then add the following registry values:
Value name: iexplore.exe
Value data: 10
Base: Decimal
Note set this value to the connection limit that you want for HTTP 1.1 connections. By setting the value to 10, you increase the connection limit to 10.
5. Exit Registry Editor. 

Configuring Microsoft Dynamics CRM for Outlook for Optimal PerformanceThere are several configuration techniques available for optimizing the performance of Microsoft Dynamics CRM for Outlook, which are detailed in the following sections.
Note: Over very high latency connections, often a Terminal Services/Citrix connection will improve performance. Note that Terminal Services/Citrix connections are only accessible via Microsoft Dynamics CRM for Outlook; Terminal Services does not support Microsoft Dynamics CRM for Outlook with Offline Access.
Optimizing the Outlook Synchronization Process
To optimize the performance of Microsoft Dynamics CRM for Outlook, configure the filters associated with the Outlook synchronization process to affect the fewest record types and to occur as infrequently as possible without compromising business requirements and to avoid creating duplicate records if key fields match.
 To set Outlook synchronization options for optimal performance
1. In Outlook 2003 or Outlook 2007, on the CRM menu, click Options.
- OR -
In Outlook 2010, on the File tab, click CRM, click Options.
2. In the Set Personal Options dialog box, on the Synchronization tab, under Synchronize Microsoft Dynamics CRM items with my default Outlook folders, click Outlook Filters.
3. In the Filter: Outlook dialog box, on the User Filters tab, click the name of the filter that you want to edit, or on the Actions toolbar, click New to create a new filter, and then edit the filter as necessary.
Note: You can also use the Filter: Outlook dialog box to specify the status of an existing Outlook filter as either Active or Inactive.
4. Click OK to save any changes and close the Filter: Outlook dialog box.
5. To define the frequency with which the Microsoft Dynamics CRM items in your Microsoft Dynamics CRM for Outlook folders are updated in the background, in the Set Personal Options dialog box, select the Synchronize the CRM items in my Outlook folders every check box, and then specify the number of minutes between each update.
Using this feature provides the user with the convenience of not having to remember to synchronize Microsoft Dynamics CRM with Outlook manually.
Important: An organization must permit a user to change the Synchronize the CRM items in my Outlook folders every check box, and the administrator sets the minimum time allowed between synchronizations.
6. Click OK to save any changes and close the Set Personal Options dialog box.
Optimizing Address Book PerformanceTo optimize Address Book performance, configure the Address Book to match only against the contacts that are synchronized to Microsoft Dynamics CRM and to retrieve updates as infrequently as possible without compromising business requirements.
 To set Address Book options for optimal performance
1. In Outlook 2003 or Outlook 2007, on the CRM menu, click Options.
- OR -
In Outlook 2010, on the File tab, click CRM, and then click Options.
2. In the Set Personal Options dialog box, on the Address Book tab, under Select how e-mail recipients are reconciled with Microsoft Dynamics CRM records:
• For Contacts, choose whether names and e-mail addresses from the address book are compared to some or all of your Microsoft Dynamics CRM contacts.
o Match only against contacts synchronized to Microsoft Dynamics CRM specifies to link e-mail messages to the Microsoft Dynamics CRM contact records that you have chosen to synchronize and also match a name or e-mail address in your address book. This option is selected by default.
o Match all contacts in Microsoft Dynamics CRM specifies to link e-mail messages to any Microsoft Dynamics CRM contact record that also matches a name or e-mail address in the address book.
• For Other record types, choose whether you want to link e-mail messages to other record types if the names and e-mail addresses in the other record types match those in the address book; also choose the types of records.
o Do not match specifies not to link e-mail messages to other record types
o Match only the items I own specifies to link e-mail messages to other records types. This option is selected by default.
o Match all items in Microsoft Dynamics CRM specifies to link e-mail messages to all record types in Microsoft Dynamics CRM
3. Under Select how often the Outlook Address Book should be updated from Microsoft Dynamics CRM, select the Update the Outlook Address Book every check box, and then in the box to the left of hours, type in the number of hours you want between each Address Book update.
Click OK to save the changes and close the Set Personal Options box dialog box.
Pinning Commonly Used ViewsWith Microsoft Dynamics CRM for Outlook, users can open tabs to display multiple views of an entity. Users can also “pin” views so they always display when a user logs in to Outlook. Pinned views, which are stored in cache, respond more quickly than do standard views, so be sure that suggest that users “pin” the views with which they most commonly interact.
Important: Each pinned view consumes system resources (memory), so balance the use of pinned views against the need for system resources.

 To pin a view in Microsoft Dynamics CRM for Outlook
1. In Outlook, click the tab to the right of the active tab, and then select the view to pin.
2. On the tab, click the push pin symbol (the symbol will turn vertically).
The view is now ‘pinned,’ so that the next time the user logs on, the pinned view will display rather than the default view.
Customizing Microsoft Dynamics CRM for Optimal Client Performance
When customizing Microsoft Dynamics CRM for optimal performance of the Microsoft Dynamics CRM clients, keep in mind the following best practices.
 Use JScript judiciously. While a few lines of JScript can greatly enhance the user experience by automatically updating data as a form loads or as data is changed, they can also cause a performance issue if a lot of JScript code is running on a form. When using JScript on forms, verify that code is optimized to ensure efficient form loads.
Note: To determine if JScript is affecting the performance of a form, remove the JScript and test how the form performs. Then, compare those results to the performance of the form with JScript included.
 Use iFrames judiciously. The greater the number of iFrames on a form, the greater the associated form load time will be. If an iFrame is not on the form’s primary tab, use collapsed tabs and set the URL in the TabStateChange Jscript event for the tab on which the iFrame resides. This ensures that the iFrame loads only when a user clicks the tab, rather than loading each time a record is opened.
 Use sub-grids judiciously. Each sub-grid that is used in a form queries the Microsoft Dynamics CRM system in the background for a set of data to load into the grid. While the query executes in the background, each sub-grid control on a form adds more HTML to the page, resulting in longer load times. For sub-grids that are in use, consider having users collapse them, as data will not be retrieved until the user expands a sub-grid.
Important: Each sub-grid also includes a context-sensitive ribbon to provide users with access to the appropriate commands for that sub-grid. Although the ribbon only becomes visible when the grid is selected, the required xml (and therefore the processing) occurs as the form is loaded. As a result, even if a user never selects the sub-grid, there is a performance impact associated with each sub-grid on a form.
 Use role-based forms to limit the fields that display on a form to accommodate the specific requirements of users based on their assigned security role.
 Adjust security roles to limit the functionality presented to users based upon their specific requirements for selected record types. This ensures that the user interfaces adapts to display only the elements required by specific users to work with data in the Microsoft Dynamics CRM solution.
 Customize forms to display only the fields required for specific types of records.
 Consider the complexity and number of visualizations used in the dashboards on a page. Dashboards capture a lot of data and are loaded separately in parallel connections to the rest of the page. As a result, limit the number of visualizations used in a dashboard as much as possible without compromising business goals.
 Use columns and grids judiciously. Optimize views and sub-grids so that only the required columns and grids display by default.
 Limit the number of rows that are returned per page while still meeting any related business requirements.
 After users are sufficiently familiar with Microsoft Dynamics CRM, hide the Get Started pane to reduce any impact it might have on client performance.
Note: The Get Started pane can be displayed or hidden by default on a per user basis or CRM Administrators can set this configuration for all system users.
 To set Get Started panes to display or hide for a specific user
1. In Outlook 2003 or Outlook 2007, on the CRM menu, click Options.
- OR -
In Outlook 2010, on the File tab, click CRM, and then click Options.
2. In the Set Personal Options dialog box, on the General tab, under Select the setting for Get Started Panes, select or deselect the Show Getting Started panes on all lists check box accordingly.
3. Click OK to save any changes and close the Set Personal Options dialog box.
 To set Get Started panes to display or hide for all users
1. In Outlook 2003, Outlook 2007, or Outlook 2010, on the Navigation Pane, click Settings, click System, click Administration, and then click System Settings.
2. In the System Settings dialog box, on the General tab, under Select the display option for Get Started Panes, select or deselect the Show Getting Started panes on all lists for all users check box accordingly.
3. Click OK to save any changes and close the System Settings dialog box.

Working with Microsoft Dynamics CRM 2011

2 comments:

  1. Please use some blog editor like MS Live writer to write you blogs. they don't look readable , but you have valuable information.

    ReplyDelete
  2. Microsoft Dynamics CRM is our customer relationship management business solution that enables companies to market smarter. Improve your social insights, business intelligence, and productivity and reach business goals with Microsoft Dynamics CRM Solution.

    ReplyDelete