Infinite Qlikview Icons Expansion Pack
For as long as I can remember (within my Qlikview career at least) there have been the same set of icons built-in to Qlikview, personally I’ve not really used them as I find them a bit limited and I usually prefer to show movements etc through colour highlights of the value in question not an added column with an icon. That said I think icons do have their place so I’ve decided to expand upon the icons Qlikview provides by creating a method whereby you can quickly and easily integrate a new set of icons (supplied) as well as easily add your own, thus opening up a whole range of possibilities.
Firstly for those who aren’t too familiar with the current icons below is a link to a .qvw created by Stefan Walther via his www.QlikBlog.at (highly recommended) that contains them all:
Download Stefan’s .qvw showing all the built in icons here: https://docs.google.com/open?id=0B0nQ9tZcY4wzSFhIZ3l5M0xUVU9lM0l1cldxaW1UZw
On to the new stuff:
Just follow the following simple steps to integrate the icons and any you create into any .qvw.
Firstly; download the Icons Pack.zip file via the below link.
Dowload the Icons Pack here: https://docs.google.com/open?id=0B0nQ9tZcY4wzZnBVRWZaZFpTRzYtYWx2NE1lUnpmUQ
In the .zip is a single folder called ‘ICONS_PLUS’ in which are: 50+ icon image files, an ‘ICONS_MENU.qvw’ for viewing what icons are available and an Include load script file called ‘ICON_LOAD.txt’. Simply save this entire folder to a location where your desired .qvw can access it during the load; this could be locally or on a server.
In the load script of the .qvw you wish to add the icons simply add the 2 following lines of script:
Let vICON_PATH = ‘C:\QlikviewStuff\ICONS_PLUS\’;
Obviously replace the ‘C:\QlikviewStuff\ICONS_PLUS\’ with the path to where you’ve stored the ICONS_PLUS folder.
Now reload your .qvw as usual; you’ll now have an island field ‘ICON_ID’ that has all the icons from the ICONS_PLUS folder bundled against each field value (1 to 52) – for more details about bundling seach for ‘bundle info load’ in the Help file.
You’re now ready to use the new icon set however you please in just the same way as the built-in ones in tables or Text Objects, for example:
You can use the ICONS_MENU.qvw to see which ID relates to which icon or simply create a tempoary ListBox with ICON_ID and set the Properties > Presentation >Representation to be ‘Info as Image’ and add an expression (if in v10+) of =ICON_ID before formatting the cell sizes acordingly.
What I really like about this process is that to add your own icons all you need to do is save them as either .jpg, .png, .gif or .bmp files to the ICONS_PLUS folder and they’ll be included in the load.
There’s a key point to keep in mind; we’re ‘bundling’ the icons here so the images are stored in the .qvw itself once loaded which of course makes the footprint of the app larger than it perhaps needs to be so I’d personally do one of the following:
1. Delete icons you don’t want to use from the ICONS_PLUS folder.
2. My personal preferance; create a sub-folder for each .qvw that you want to use the additional icons and only add the relevant icons (and ICONS_LOAD.txt) to the sub-folder, simply alter the variable in the script to point to the appropriate sub-folder; simple.
As for creating your own icons; that couldn’t be easier; there are loads of sources out there such as flags and logos etc, I use either www.SumoPaint.com/app or Paint.net to easily copy+paste the item into a new image and save it off as a .png. Most icons seem to work well when they’re square; I like to go for around 75×75 pixels as a minimum.
So get creative, but use judiciously and appropriately; no-one likes icons all over the place as it just becomes a confusing mess!
Personally I use an ICONS_PLUS folder on the server that all dashbaords can access and then have sub-folders for each one beneath with an icon set sppropriate for each, this keeps the memory usage to a minimum and keeps all the icons in a central easily managable space.
Hope it’s of use,
All the best as always,