Embedding a QlikView object into Qlik Sense

    fyi: This method uses an iframe and singleobject.htm with computed querystrings to integrate into a Sense page....

    The QlikView object is in a separate name-space, responds to the selections in Sense, but not other way around. It is "read only"


    Screenshot 2014-11-07 11.11.28.png

     

     

    Assuming you have both, Sense and a QlikView Server, then you can embed an object from QlikView in Sense and have it respond to the selections in Sense. (Selections in the QlikView object are not carried to Sense, so I made the object itself "ReadOnly").

     

    You don't need much to do this, the cornerstones are the following and I show this in the attached video.

    • Model the data first in QlikView, since the QVW file will be binary-loaded and looked up for XML-meta information from Sense
    • Create the QV object(s) you'd like to embed
    • Create Listboxes for all fields in that QVW with the help of the attached short macro. Ctrl+M to open Macro editor, paste this and hit "Test" to execute it).
      • In order to get this work, it does not matter which ID those listboxes will get assigned
      • It does not matter if some fields have already other listboxes
      • It does not matter on which worksheet those listboxes are placed
    • Create a bookmark called "ClearAll" which has No Selection
    • install the attached extension into the Qlik Sense Extension Folder (for Sense Desktop this is  C:\Users\<username>\Documents\Qlik\Sense\Extensions)
    • Edit the script of the Sense App
    • Paste the script code snippet attached in text file "Sense Load Script.txt"
    • Define the variable vSourceQVW (uncomment the first line, reload once, then comment out the first line again
    • Correct the URL to the above .qvw file (where it is found on the AccessPoint)
    • Define the Chart ID in the script variable vQV_URL
    • Sense will load the same data as found in the QVW (because of BINARY statement) and it will scan the XML footer of the QVW for the Id's of the Listboxes and the Bookmark.
      • (It will create a island table with two fields $$FIELD and $$OBJECTID to dynamically look up which field has a selection and which listbox is associated with it in QlikView)
      • It will create a complex formula into variable @PassCurrSel, which is converting the current selections into a working QueryString for the singledoc.htm url.
    • Open Sense worksheet
    • Drag the object type "QV Object" into a worksheet in Sense and in the Property "Dynamic URL" enter this formula:

    =vQV_URL & $(=$(@PassCurrSel))

     

    That's it. The single-object mode (run in an iframe) will refresh with every selection from the (outer) Sense page.

     

    The only values which cannot be selected via this url are text values which contain a single quote '

    >> See attached SWF video