Sometimes you want QlikView to open with a specific set of selections, apply a bookmark or perhaps even deep link to a specific sheet.
A typical use case could be to embed an entire app or a single object inside a CRM or ERP system and depending on the context, current customer for example, filter the QlikView app to only show records related to that specific context.
So how do I use this black magic?
One approach would be to use triggers with the obvious downside being that the trigger would always fire regardless of how you opened the app.
Another approach is to supply a set of parameters to the URL for that specific app.
Let’s take an example, the Sales Compass demo from the demo site. Below us the URL to access the app and the different components explained.
<host name>/<virtual directory>/opendoc.htm?document=<url encoded full name for the application>&host=<name of QVS>
In addition to this URL you can also supply some extra parameters to control which actions will fire when the app is opened. For example the URL below will open the Sales Compass app with the value “Q2” selected in the listbox with id LB5699 (yes we create way to many objects )
Of course this is only a simple example, in the table below you will find all the available parameters you can append to your URL.
Feel free to mix and match these til your hearts content.
Action
Parameter
Example
Select a single value
&select=<Listbox ID>,<Value>
&select=LB01,Total
Select multiple values
&select=<Listbox ID,(Value|Value2)
&select=LB02,(2011|2012)
Open the app on a specific sheet
&sheet=<Sheet ID>
&sheet=SH01
Open the app with a bookmark applied
&bookmark=<Bookmark ID>
&bookmark=Server\BM01
Wait a minute, you mentioned single objects?
Ah, yes! When QlikView 11 was launched we also introduced the capability to display a single object from an app.
This allowed customers to integrate objects from different applications into a single view in a external system. It is also this screen that powers the small devices client.
Substitute opendoc.htm with singleobject.htm and specify the object id you want to display,
Yeah, it also worked for me when using parentheses. Maybe the difference is that the fields in my application had spaces in the values. e.g.: CENTRAL, CENTRAL NORTH, CENTRAL SOUTH, etc...
So when we used &select=LB01,CENTRAL it selected all of the values above,
Thanks Alexander for adding such a fantastic blog. Its very helpful.
I am wondering a way how can I specify a value of a defined dimension in an object.
As you explained about the opening of singleobject by specifying the object reference(Eg: &object=CH044), similarly lets assume the object has dimension as "Countries" and I want to display the sales data of America. Now how could I frame my URL to achieve this.
All you have to do is create a listbox with "Countries" as the field it uses. Give it a good ID (e.g. lb_Countries), then just add &select=lb_Countries,America to the end of the URL. It's usually a good idea to have a hidden sheet with a listbox for each dimension you want to add to the URL. This way you can select values for dimensions you might not have in the rest of your dashboard.
I got to know about few parameters like &object,&select,&sheet passing in URL to get desired output.
Is there any more list of parameter values which we can play around.
As Alexander explained about singleobject.htm in reference of object(CH044) to open a single object from URL hit.Similarly, it is possible to open two or more objects?