Tales from a Qlikview Idiot

Tuesday, November 29, 2011

Let versus Set (Again)

SET vString = 1 + 1; // The string "1 + 1";
LET vEvalute = 1 + 1; // The value 2

You can get very fancy using variables in Qlikview. You can include arguments inside your variables, so that you can use them like user defined functions.

So, if you wanted to create a 'function' to multiply two numbers you could use a Set like this

SET DOSTUFF = '$1*$2';

The $1 and $2 act as arguments. (Think %1 for a DOS .BAT file)

If you use a SET, it will plug in the arguments and evaluate as a string. i.e.

SET A = $(DOSTUFF(2,2)); // returns '2*2' in A

Note: The dollar sign in front of the DOSTUFF 'function', this signifies Dollar-Sign Expansion, basically some sort of text replacement happens between the parenthesis before it is evaluated.

So, if we instead use a LET

LET A = $(DOSTUFF(2,2)); // returns 4 in A

Monday, August 22, 2011

Applying formatting to a dimension

The trick is that you have to remember to use a calculated dimension. And then,


Thursday, July 28, 2011

Hash126, Hash256 functions are case sensitive...

In case you wondered!

Load * Inline

Hash128(CatID, Category) as MyHash Resident Table1;

Wednesday, July 27, 2011

Fighting the Mobile Client

So, I have been having 'Fun' playing the Qlikview iPhone Client. (It really is no surprise that as far as I can tell they are heading towards an html5\ajax client that supports all platforms)

So what has been annoying me?

Drawings of the objects are simplified compared to the desktop clients. Columns cannot be moved or resized...

I just want to be able to specify that a column will show its entire name... and all of the data to for that matter... it makes for a really junky experience. :(

Thursday, August 21, 2008

Quick Tip

For some reason I must have failed to learn that you can move sheet object using the arrow keys in QlikView

+ arrow key -> 1 pixel at a time
+ -> 10 pixels at a time

Wednesday, August 20, 2008

Part 4, the magical list box

The list box is the fundamental QlikView component.

All data loaded into a QlikView can be displayed in list boxes.

If a value occurs more than once in loaded database, only displayed once in list box

A list box can show the frequency of the number of times the value occurs in the DB.

Part 3

A Little bit more about the QlikView associative database.

There are differences between how QlikView manages join relationships between tables and how a typical DB might handle joins.

You might be tempted to think that QlikView has a Categories.CategoryID field and a Products.ProductID field

But a better visualization is with a categoryID field stored between the two tables.

Qlikview combines the distinct datapoints into a single field. This is a Key Field

A reference is maintained through small binary pointers maintaining the relationships back to the original tables.

Compresses data by 80-90%, to 5-20% of its original size. Which is then loaded into memory.