Sunday, December 22, 2013

Resolving SalesLogix Compatibility Issues with Internet Explorer

When new versions of browsers are released they are supposed to enable new technologies and support new standards however for the first few weeks it seems like their only purpose is to break existing sites and web applications.  It is probably simple for most developers to troubleshoot these issues, however for us SalesLogix Administrators  who are not developers this is not so easy.  Thus I am writing this blog to help you troubleshoot Internet Explorer and SalesLogix compatibility issues from an Administrator's perspective.

Ideally all websites and web applications would be maintained to properly render on all current browsers, however given this is not practical, browsers need to determine the compatibility of a website and render the website according to that website’s compatibility level.  In Internet Explorer the identified compatibility level of a website is called the Document Mode.  Internet Explorer uses various factors to determine which Document Mode will be used.  (Here is a detailed explanation of the logic used http://blogs.msdn.com/b/ie/archive/2010/03/02/how-ie8-determines-document-mode.aspx).  Experienced developers use techniques in their code and site deployment so Internet Explorer can correctly identify the Document Mode to use.

To determine what Document Mode is being used by your Internet Explorer browser on your SalesLogix deployment you need to open SalesLogix in Internet Explorer and then hit the F12 key to open the Internet Explorer Developer Tools.  In addition to displaying the Document Mode, you will also see the Browser Mode.  The Browser Mode is the browser version that Internet Explorer is emulating, developers will change this setting to test how a website performs in older versions of IE without installing those older versions on their computer.  The Browser Mode will typically default to the version of IE you are running, however the default Document Mode is where we want to focus our attention as this may very depending on the code in SalesLogix, the IIS configuration, the IE Security Zone settings and other settings defined in the reference above.

SalesLogix frequently releases updates for SalesLogix to take advantage of new technologies and to keep it compatible with the current versions of Internet Explorer.  The compatibility of each version of of SalesLogix is documented in their Compatibility Checklist.  Generally the SalesLogix web application will render optimally if the newest “qualified” browser is used.  I have seen that newer versions of Internet Explorer, although not tested and qualified by SalesLogix, will typically render correctly as well as long as Internet Explorer selects the correct Document Mode for the site. 

Below are the results of my independent testing of various Document Modes with SalesLogix 7.5.2 and SalesLogix 8.0:


SalesLogix Version Preferred Document Mode
SalesLogix 7.5.2 IE8 Standards 1
SalesLogix 8.0 IE10 Standards 2

1 IE7 Standards is compatible as well.  (IE9 Standards and  IE10 Standards will not correctly render)
2 IE9 Standards and IE8 Standards are compatible as well (IE7 Standards will not correctly render)

 

SalesLogix 7.5 issues with Internet Explorer 9 and Newer

If Internet Explorer 9 or newer are causing issues for SalesLogix 7.5 it is likely because IE is using the Document Mode IE9 Standards or newer.  I have seen instances where only the top SalesLogix toolbar loads and the rest of the page is blank.  If this is the case, one method to fix the issue is adding the following Custom HTTP Response Header to the SalesLogix site configuration in IIS.  This will force IE to render SalesLogix with the default document mode of IE8 Standards and should fix the issue.


SalesLogix 8.0 and Internet Explorer's Local Intranet Zone

Although the SalesLogix Implementation Guide instructs you to add your SalesLogix URL into the Trusted Sites zone of Internet Explorer, there are times were due to existing Group Policies you may find that your site is in the Local Intranet Zone.  This causes an issue with SalesLogix 8.0 because sites in the Local Intranet zone  by default are rendered in Compatibility View and with the Document Mode of IE7 Standards.  SalesLogix 8.0 does not play well in IE7 Standards document mode, more specifically I have seen IE prevent the list view from loading, the end user just gets an indefinite scrolling wheel and the list view never loads.  The SalesLogix source code actually contains a META tag in the HTML header  X-UA-Compatible="IE=Edge" which informs Internet Explorer to use the newest Standards Document Mode supported by the browser, however because of the logic in IE and the fact that the site is in the Local Intranet Zone, the Open In Compatibility View setting in IE override what is in the code.


For more information on this behavior in Internet Explorer read the following blog: (http://blogs.msdn.com/b/ie/archive/2009/06/17/compatibility-view-and-smart-defaults.aspx)  


There are three ways to fix/prevent this:
1) Remove the URL from the Intranet Zone and add it to the Trusted Sites zone.  This is the preferred route as it matches the instructions in the Implementation Guide.
2) Disable the Internet Explorer setting “Display Intranet Sites in Compatibility View”.  To do so open Internet Explorer and go to Tools pull-down menu, Compatibility View Settings, and then uncheck the box “Display Intranet Sites in Compatibility View”. 
3) Add a Custom HTTP Response Header to the SalesLogix SLXClient site settings in IIS configuration which will override IE's Document Mode selection.  Our Custom HTTP Header X-UA-Compatible="IE=Edge" will tell IE to use the newest Standards supported.  To add this open the IIS Manager console on your web server, on the left pane expand your listing of Sites, find your SalesLogix web site and expand it, and then select your SLXClient application.  On the right-hand pane find the option for Custom HTTP Response Headers.  Click the Add button and then add the entry shown below:


Hopefully this will help you fix your Internet Explorer Compatibility issues with SalesLogix.  Here are some other references that may be helpful when troubleshooting Compatibility Issues:

MSDN Document Compatibility - http://msdn.microsoft.com/en-us/library/hh781499(v=vs.85).aspx

Browser Mode vs. Document Mode - http://stackoverflow.com/questions/2950598/ie8-browser-mode-vs-document-mode?lq=1

How Internet Explorer Chooses Between Document Modes -  http://msdn.microsoft.com/en-us/library/ff405803(v=vs.85).aspx

Compatibility View and “Smart Defaults” - http://blogs.msdn.com/b/ie/archive/2009/06/17/compatibility-view-and-smart-defaults.aspx