Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
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
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.
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
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>
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).
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.
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, ...)
Thanks, but i have tried ie9, chrome and firefox, and there is a same problem.
you need to have qlikview workbench license (at the server)
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>
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>
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