Category Archives: Expressions

Handling multiple languages and translations

Handling multiple languages and translations in QlikViewRecently I made a QlikView application with multiple languages. I came across a blog post by Charles Bannon: “Handling multiple languages”. Charles describes two scenarios for the use of multiple languages. The first scenario, “translate labels and textboxes within the application and not the actual data”, solved my problem. Charles uses a translation table with an index. He uses set analysis to reference the index number and the language. The expression used is:

=Only({<Index={5}>} [$(=vDataLanguage)])

A good solution, but not very user-friendly. Do you know which translation belongs to index 5?

In this blog post I will rewrite the expression to a more user-friendly and readable formula, and will also explore some other ways of dealing with translations in QlikView.

read more »

QlikView functions – a few to spice up your front-end!

Hello all! It’s been a while since my last post, so here I am trying to catch up with you guys again…

In the pastfunctions 2 few months, I came across a couple of functions which I hadn’t used before. Discussing these with Barry, he mentioned that Rob Wunderlich has done a Survey among QlikView Developers and created a list with functions and the frequency of them being used. Looking at that list, I will try to clarify what some of the functions do in a clear and easy example. Also, I will – hopefully together with you – try to figure out why the hack they’re positioned that low!

read more »

Introduction to alternate states

QlikView Alternate StatesA little while ago, I was asked to change an existing QlikView Application. While scanning the application, I found that it used Alternate States. I had already heard about Alternate States, and that they could store different user selections, but didn’t have any hands-on experience yet. I decided to dig a bit deeper into the subject before continuing. I wrote down what I learned in this post

read more »

Building a nicer (dynamic) multibox, without extensions

Building a nicer, dynamic multibox in QlikViewThe multibox is a QlikView object that I find extremely useful because it allows you to fit selection fields into a much smaller space. At the same time, I also find it extremely annoying; the gradient looks dated and if you want your field names and values to be readable you will often have to make both columns quite wide. For these reasons I tend to not use the multibox in my applications, using a conditionally hidden drop-down filter panel instead.

Recently, I was hired to perform a health check on an application. The application made extensive use of a multibox (in a very nice and flexible way, I should add). One of the challenges my client was facing was that not every field was relevant to every user. Besides a general technical review of the application, the developers wanted to know if it was possible to create a dynamic multibox. A multibox where users could select which fields they want to show.

As I started digging in to this question, I realized there’s a much nicer way to create a multibox. After experimenting with it for a bit, I actually like this solution so much that I will probably be using it in some of my future projects.

read more »

Aliases, to indent or not?

“Code is read more often than it is written”

  – common programming adage

As someone who often has to look at/modify QlikView script written by others, I have come to appreciate the value of readable script. Rather than taking an “if it works, it works” attitude, I always try to write my script with readability and consistency in mind. Somewhere down the line someone else (or worse, you) might have to decipher what a specific script is doing in order to modify or extend it.

Today I want to ask your opinion on the readability of a specific part of the QlikView script, indentation of aliases within LOAD statements. To this end, I’ve taken a piece of script from the QlikView System Monitor and formatted the aliases in three different ways. (note: I don’t agree with the absence of white space in functions and between operators, but have left that as is)

Have a look at the three options, and then please answer the two multiple choice questions below.

read more »

ABC: Always Be Closing

Always Be ClosingA very short tip on writing QlikView expressions that might save you a lot of headaches. In my last online training on Set Analysis (another one coming up this week) I showed a simple technique that I use when writing expressions in QlikView, especially when they contain nested functions. Based on the feedback, it seemed to resonate quite well with the attendees and not everybody was aware of this technique, so I thought I might share it with you as well.

It can simply be summarized as: Always Be Closing.

Whenever I write an expression that contains a parenthesis (or curly bracket/chevron/whatever) that also needs to be closed, I immediately close it and place the cursor one step back. Or, to show it visually (in slow mo):

This way, you’ll never need to think about how many parentheses/etc. you need to close your expression. Of course,  this technique also works for Excel, SQL or any programming language.

As a follow-on tip, whenever I have to ‘decipher’ a nested expression within QlikView, I work inside-out. Start with the inner-most function, figure out what it does and what value(s) it returns, then move on to the function that uses the output of the first function, figure out what that does, and so on.

Online training: QlikView Set Analysis

QlikView Set Analysis Training

Just a quick heads-up about a new online training that Miguel García and I are offering: Set Analysis. We delivered our first training on May 2nd and received excellent ratings and feedback. We are now scheduling new sessions, the first one being held May 23rd 2014. This is a live, instructor-led, 4 hour online training. We have multiple sessions (both in English and Spanish), so you should be able to find one that fits your time zone. More information can be found on the website, or after the break.

Register Now for the Online Set Analysis Training

read more »

Or-mode selections between list boxes

and & or selections in QlikViewAt the Masters Summit for QlikView in London we ended the second day with an informal ‘stump the geek’ session. In this session participants could submit technically challenging questions to a panel. Besides the four presenters, this panel also consisted of Steve Dark, Stephen Redmond and Henric Cronström. You can imagine that I found myself surrounded by an awesome amount of QlikView knowledge.

While challenging, most of the questions could either be answered on the spot or a conceptual solution could be described. There was however one question that didn’t really yield an, in my opinion, satisfactory answer. The consensus almost seemed to drift towards ‘it cannot be done’ or ‘that is not how QlikView works’. The question was:

Can we make “or” selections between list boxes, instead of the standard “and” selections?

read more »

Importing and exporting variables

Importing and exporting variables in QlikViewWhen using variables in QlikView, a common best practice is to store them outside your QlikView application, or to define them in the script. However, there’s one thing about this approach that often annoys me. When defining a new variable during development, you either have to:

  • define the variable twice: once in the variable editor and then again in your external file/script to ensure that it is persisted;
  • or, define it once in your external file/script and then reload the application to make it available in the front-end, potentially leading to a lot of unnecessary downtime.

Fortunately, there is a solution that lets you define your variables once in an external file -and- have it available in the front-end (almost) immediately without reloading. read more »

Masters Summit for QlikView: European Edition

Masters Summit for QlikViewAfter the success of the Las Vegas edition last April, I’m excited to be once again presenting alongside Rob Wunderlich, Bill Lay and Oleg Troyansky at the European edition of the Masters Summit for QlikView.

Masters Summit for QlikView; London and BarcelonaComing to London from October 9  to 11 and to Barcelona from 14 to 16 October, the Masters Summit brings you 3 days of hands on sessions where we will discuss advanced techniques in building complex solutions with QlikView. The goal of this event is to take your QlikView skills to the next level and help you become a QlikView  master.

For the early birds, there is an attractive discount of US$ 300 (around 225 Euro’s) until August 16th, which, for example, should be enough to cover air fare from most locations within Europe. Make sure you do not miss out on this great offer and:

Register for the Masters Summit for QlikView

I hope to see you all there!