Skip to main content
Announcements
NEW: Seamless Public Data Sharing with Qlik's New Anonymous Access Capability: TELL ME MORE!
cancel
Showing results for 
Search instead for 
Did you mean: 
Alexander_Thor
Employee
Employee

Dynamic DIV-tag integration

With QlikView 11 we introduced a feature with the sexy name DIV-tag integration.

What this really enables us to do is to reference our JavaScript API and integrate QlikView Objects into web solutions with full functionality.

This is huge. With no extra licenses QlikView users around the world can now enjoy QlikView functionality within non .Net solutions, embedded into their ERP or CRM systems. The community loved it but was also a bit concerned that the amount of objects floating around out there would increase the maintenance of QlikView.

A few lines of JavaScript will eliminate that problem for you

Dynamic DIV-tag integration 1.0

Now you have 1 solution to maintain that can serve your entire company with embedded QlikView Objects.

Short version:

You will need:

QlikView Server version 11 installed.

Some sort of web server.

A can of coke and a smile on your face.

NEW: A workbench license.

Installation:

1. Download the sample at: http://dl.dropbox.com/u/18211954/Extensions/single.zip

2. If you are running QV Webserver extract the contents to: C:\Program Files\QlikView\Web\

3. Change the script references in single.htm to match your setup.

4. And you are done.

How-to:

The solution accepts input according to the following syntax: http://WebServerUrl/app pool/single.htm?app=your document without qvw&obj=ObjectID

Optional parameters are w and h to set width and height otherwise default to 100%

On my demo system the following URL will generate the chart below:

http://localhost/QlikView/single.htm?app=Vinguiden&obj=CH233&w=200&h=400

NOTE: If you get a no connection error message try adding the .qvw extension to your app variable

single.PNG

This chart has full QlikView functionality. If you for some reason want to disable any interaction with the object, set it to read-only in the QV document.

32 Replies
Alexander_Thor
Employee
Employee
Author

This also applies to @Patrick Vinton

So to make a long story short, or atleast semi-short, you are most likely seeing this error due to not having the workbench licenses.

When we first released QV11 we were under the impression that leveraging our JSApi would be free of charge.

However after a few back and forth with our pricing department it turns out you DO need the workbench license to interact with our JSApi from outside of QlikView.

I'll update my initial posting to reflect this since it's just off the press

Not applicable

We have workbench, so I manage to make it work. Just needed to init workbench accordingly to our settings.

<!DOCTYPE html>

<html>

<head>

<script type="text/javascript" src="/QvAjaxZfc/htc/QvAjax.js"></script>

<script type="text/javascript">

    Qv.InitWorkBench({ View: 'QVFile', Host: 'Qvs@hostname', Anonymous: 'true' });
</script>

</head>

<body>

    <div>

        <div class="QvFrame" avqview="QVFile" avq="object:.Document\OBJ_ID" id="Document\OBJ_ID" style="width:600px;height:400px;">

        </div>

    </div> 

</body>

</html>

Not applicable

Hi Patrick,

Isn't the issue in your example a cross-site scripting problem? You fetch the main page from one server, and then try to run some JavaScript on it which comes from another server -> most browsers don't like that very much.

(At least, that's what I'm guessing from the 'http://192.168.0.41/' in the source URL for QvAjax.js.)

This setup seems to match the '3-tier scenario' (p.39) or '2-tier scenario - WorkBench Web Site on Own Machine' (p.40) in the WorkBench Reference Manual. In both cases you'll need a proxy page on the same webserver that serves your HTML page, which behind the scenes forwards the requests to the QlikView WebServer on another system.

You'll end up with something like:

[Browser] -> [webserver 1: HTML page and Proxy.aspx] -> [webserver 2: QvWebServer]

Regards,

Martijn ter Schegget

The Implementation Group

PS: Another issue you might run into: the NTLM protocol will support passing credentials from a webbrowser to a webserver (1 hop), but not passing credentials from a webbrowser via one webserver to a second webserver (2 hops).

Not applicable

I have some problems with DIV-tag integration. It doesn't work. Can you help me find the problem?

This is my code:

<!DOCTYPE html>
<html>
    <head>
        <script language="javascript" type="text/javascript" src="/QVAJAXZfc/htc/QvAjax.js"></script>
        <script language="javascript" type="text/javascript">
            Qv.InitWorkBench({View: 'Sales.qvw', Host: 'Local'});
        </script>
    </head>

    <body>
<div>
        <div class="QvFrame" avqview="Sales.qvw" avq="object:.Document\CH02" id="Document\CH02" style="width: 100%; height: 100%;"></div>
     </div>
   </div>
</body>
</html>

I am using QVS 11.00.11271.0 SR1 64bit-edition (64x) and IE 10.0.9200.16635.

This is my QVW http://zalil.ru/34644010.

Thank you for attention.

Not applicable

I'm not sure ie10 is yet supported.
You may try within ie10 to hit F12, and switch browser mode to ie9 ?

Try with another recent browser (firefox, chrome, ...)

Not applicable

Thanks, but i have tried ie9, chrome and firefox, and there is a same problem.

alex_nerush
Partner - Creator II
Partner - Creator II

you need to have qlikview workbench license (at the server)

Alexander_Thor
Employee
Employee
Author

Do you have a workbench license?

Your license info should read WORKBENCH=YES

Kind Regards

Alexander Karlsson

19 jul 2013 kl. 13:10 skrev "dmitry82" <qcwebmaster@qlik.com<mailto:qcwebmaster@qlik.com>>:

QlikCommunity<http://community.qlik.com/index.jspa>

Re: Dynamic DIV-tag integration

created by dmitry82<http://community.qlik.com/people/dmitry82> in Integration and Extensions - View the full discussion<http://community.qlik.com/message/369852#369852>

phaneendra_kunc
Partner - Specialist III
Partner - Specialist III

How can we integrate more than one object?

your  http://localhost/QlikView/single.htm?app=Vinguiden&obj=CH233&w=200&h=400 shows only one object in the page.

i tried even below from this thread to display multiple but no luck.. I have QVSEE & Work Bench License. At least your "single.htm" concept is working but below is not working at all. do i have to save below html file some where? i have saved in my desktop and opening locally though firefox/chrome.

<!DOCTYPE html>

<html>

    <head>

        <script language="javascript" type="text/javascript" src="http://localhost/QvAjaxZfc/htc/QvAjax.js"></script>

<script language="javascript" type="text/javascript">

   Qv.InitWorkBench({

      View: 'Sales Compass',    

      Host: 'QVS@local'

   });

</script>

    </head>

  

    <style>

    .QvInlineObject

{

   position:relative;

   margin-left:10px;

   margin-right:10px;

   float:left;

}

    </style>

    <body>

<!-- Listbox with the Id LB5732 -->

<div class="QvInlineObject" avqview="Sales Compass" avq="object:.Document\LB5732"></div>

<!-- Chart with the Id CH351 -->

<div class="QvInlineObject" avqview="Sales Compass" avq="object:.Document\CH351"></div>

</body>

</html>

Not applicable

Hi Dmitry,

I am also having same problem with Div integration. Please could you tell me, how did you resolved your issue.

I am trying to run the plain html from application server.

Thanks