Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE

Differences between IE Plugin and Ajax

No ratings
cancel
Showing results for 
Search instead for 
Did you mean: 
Sonja_Bauernfeind
Digital Support
Digital Support

Differences between IE Plugin and Ajax

Last Update:

Apr 27, 2023 9:14:53 AM

Updated By:

Sonja_Bauernfeind

Created date:

Sep 12, 2016 4:36:00 AM

Attachments

The purpose of this document (attached) is to provide customers with information on the differences in user experience and functionality between IE Plugin and Ajax.

Content:



As Microsoft discontinues Internet Explorer in favor of their new Edge browser, information on the differences between IE Plugin and Ajax will become more important as customers find themselves having to migrate to Ajax.

In tests done by Qlik previously, performance between AJAX and the IE Plugin have been similar although the IE Plugin at times appeared to be slightly more efficient (as it uses the QVP protocol) and was perceived as faster on a “heavy” UI. This is because rendering is done on the client-side, and the protocol (proprietary) can be more concise than XML. For example, the initial painting of the screen typically happens earlier with the Plugin than Ajax (using server-side rendering) so therefore looks faster, particularly if there is a blank background.

Document Statement and Conclusion

Please be aware that this information has been collected from various articles and bugs that have been raised. There may be some additional Ajax differences not listed in this document. It is strongly recommended that customers test each QlikView document, redesigning where necessary if there is a plan to switch from IE Plugin to Ajax. This can be done by opening each document in QlikView Desktop with WebView mode set to On. Once this has been done customers can review the design and behavior of their applications. It is then recommended that the application be opened on one of the QlikView Servers using the intended browsers to ensure user experience and application behavior is satisfactory

 

Key differences

In the past there was a larger feature/functionality/performance gap between AJAX and IE Plugin leading customers to keep using IE. That gap has been closed significantly so in general the impact is minimal. Please be wary of reading older Qlik Community posts which do not reflect latest state of Ajax functionality.

The table below details the key differences between Ajax, IE Plugin and the QlikView Desktop client. 
 

  AJAX Client IE Plugin Desktop Client
       
Client installation no yes, and should be the same version as the QlikView Server yes
       
Technology HTML5 / JavaScript  OCX (Active-X) OCX (Active X)

The WebView functionality is similar to the AJAX client
       
Also used in

Workbench 
Webparts 
Any QlikView mashup integrations

Qlik OCX  
       
Zoom Not available - Extensions required

Available in the Menu 

Possible with Macros

Available in the Menu 

Possible with Macros

       
Printing Print Sheet isn't available because the Sheet is rendered in HTML. Printing through the native browser functionality will lead to regular HTML printing layout limitations.  All printing features are fully available. All printing features are fully available.
       
Layout Depends on using CSS and DIV containers with padding, margin and border size. The size of objects must be modified to fit the content. 
Some objects need more space, for example the Search Box. 
Some values for this are only available in the AJAX client menu, found in the "Position" section.
Look and feel similar between Desktop and Plugin.  Look and feel similar between Desktop and Plugin. 

 

Technical Overview and Differences

AJAX (an acronym for Asynchronous JavaScript and XML) is a group of interrelated web development techniques used on the client-side to create asynchronous web applications.

The Ajax client communicates with the QlikView Server via a web server (either the built-in QlikView Web Server or IIS). It does not require any client-side installation and works in any modern browser. All the heavy lifting is done on the QlikView Server, not the client. It lacks some of the features offered by the IE Plugin, e.g. macro support and better developer environment for server objects, but in turn the IE Plugin lacks some of the Ajax client's collaborative functionality.

The IE Plugin talks directly to the QlikView Server via the QlikView Protocol (QVP) on ports 4747 and 4774. The IE Plugin needs to be installed for each user and requires the use of Microsoft Internet Explorer. The IE Plugin is often faster than the Ajax client because it communicates directly with the QVS, but there are limitations. For example session collaboration is not available via the IE Plugin, extension objects do not work and mobile access is not possible (e.g. iPad).

AJAX IE Plugin
No extra download and installation required.  Plugin installation required
   
Direct tunneling. Better performance with HTTPS. Some faster selections dependent on the document and configuration. 
   
Ideal for mobile use No mobile feature
   
Uses port 80 (http) or 443 (https). Does not require specific firewall or proxy configurations.  Requires port 4747 and port 4774 to be available between client and server. Inbound and outbound.  
   
Partial MS office integration  Microsoft Office drag and drop only available in Plugin.
   
Macros and alerts not supported Alerts can only be created and triggered from the Plugin or Desktop client. 

 

Design Tips for Ajax Client

During the application development it is recommended to use the WebView option in QlikView Desktop to validate the layout as it will differ from the native look and feel. WebView uses Internet Explorer as a rendering engine so it is also recommended to publish the application on the QlikView Server and validate the layout through the intended target browser(s).

For example, when creating a Simple List box, values may fit without the need for a scroll bar in IE Plugin but when changing to WebView mode you notice a Scrollbar now appears due to HTML using padding, margin and border spaces that can cause one or more pixels in the total space of the Listbox. This results in the Scrollbar being shown. Below you can see the HTML Box Modell:

helloworld.png

 

This Box Model is used for each QlikView Object and can cause sizing issues when switching from Regular View to WebView/AJAX Client view. You are able to modify all objects in all HTML supported ways by using a Document or Object Extension, for more information regarding this take a look at our JavaScript API and QlikView Extension Definition File. More information can be found here:

QlikView APIs and SDKs
QlikView extension definition file

 

Ajax behavior that is by Design

Scroll bar does not preserve its position after reload of the document

In desktop the scroll position is kept on charts but in Ajax this is not expected after a reload and is by design.

Buttons positioned wrongly with Ajax Client

Button positions may be different between Ajax and IE Plugin. You will have to test the relative positioning of objects within your apps. There is a potential for some movement to occur and certain objects may be more susceptible to this than others. This can be resolved by modifying the design. You can either add buttons inside the table or open the application with WebView On and move the buttons so that they are positioned correctly.

Export to Excel may result in an underscore in the filename

When exporting to Excel with the AJAX client, you may receive a 23590u83905487456_xls file instead of an 23590u83905487456.xls. This issue can be caused by a WAN optimisation tool such as HP Riverbed - http://en.wikipedia.org/wiki/Riverbed_Technology. This can be resolved by deactivating any WAN optimisation tool.

QlikView Ajax Variable Not being set

Clicking a button that activates a new sheet, which in turn is set to trigger another action (set a variable when sheet is activated), is not working in AJAX but works in QlikView Desktop.

The reason this won't set the variable is because an action cannot trigger another action (this is by design). When the Activate Sheet Action fires (Ex: go to Tab4) the Trigger OnActivate Sheet isn't fired (which sets variable "vActiveTab" that is used in other calculations).

This might work in QlikView Desktop, but only by chance. This is because there are two threads doing one action each (client + server). In the Ajax client there is only one thread (on the server), therefore the second action doesn't run.

 

Improvements and Limitations

Collaborative Sessions

Collaborative Sessions (When it has been enabled in the QMC) only works with Ajax.

Session Recovery Session

Recovery (When it has been enabled in the QMC) only works with in Ajax Sharing If you want to share a QlikView document using Ajax clients, the file name must not contain hash (#) characters.

Report Editing

Report Editing is not available in Ajax or Webview mode.

Macros

Most macros will not work in Ajax mode. Take the opportunity to find an alternative means for the functionality you require.

Windows command shortcuts

Menu commands cut, copy and paste (shortcuts Ctrl+X, Ctrl+C, and Ctrl+V) do not work.

Animations

Animation of charts does not work in Ajax.

Activate Object action

Activate Object action does not work in Ajax client.

Print Functionality

Printing whole sheet functionality cannot be achieved as nicely in AJAX currently so consider using NPrinting if there is a desire to print and distribute static content from your dashboards.

Table Box

If images are used in a table box, it will not be printed using the Ajax client.

Slider Objects

There are limitations to the automatic scale and vertical label orientation functions in Ajax/WebView mode.
Triggers Document
Trigger: On Open event will not work and is not supported when running in Ajax client.

Alternate States

In the Internet Explorer plugin, a menu item has been added to the Clear button drop-down menu that allows a user clear the selections of a specific state. This menu is not available in the Ajax client, but the same function can be achieved by creating an action button connected to the Clear action with a specific state.

Multibox

Grid Style for the multi box is not applicable in Ajax or Webview mode.

Calendar

For selection of a range of values, multi value selection is not available in Ajax client. This is specifically for a calendar object. You can design your own calendar with list boxes and multiselection will work just fine.

 

Limitations Summary

Limitations using IE-Plugin

  • Session collaboration not available
  • Extension Objects will not work

Limitations using AJAX

  • Printing Objects in AJAX does not apply formulas in the Header and Footer section
  • Simplified developer environment for server objects with less modification options compared to the IE-Plugin
  • Rendering causes design-deviations compared to the client version.
  • Microsoft office drag & drop not available
  • Macros will not work
  • Print Sheet is not available
  • User Preferences option is not available
  • No zoom functionality, however browser zoom can be used.


 

 

Environment:

QlikView #(all versions)
QlikView IE Plug-in (all versions)

Labels (1)
Version history
Last update:
‎2023-04-27 09:14 AM
Updated by: