Category Archives: HowTo

Implementing section access based on Qlik Sense user table.

Welcome to my third Blog post, which will be a basic tutorial of how to setup section access for your Qlik Sense application, based on the Qlik Sense user table. This approach, created together with my colleague Martijn Olivier, is straight forward to implement in various occasions. My aim is not to over complicate it with all the extra possibilities that are possible. Also bear in mind that it should not substitute application level access based on security rules. This method describes how to implement section access within an application, based on a custom property assigned to a group of users.

read more »

Tutorial Tuesday: Implementing version control for Qlik Sense with Git, GitHub and Visual Studio Code

Welcome to my second Blog post, which will be a basic tutorial of how to setup a lightweight version control for Qlik Sense script. This approach is straight forward to implement in various occasions. My aim is not to over complicate version control by offering this as a nice beginners guide on version control and workflow.

This tutorial will be part of a series of Tutorial Tuesdays that will lead to a lightweight, straight forward and easy to implement framework within Qlik Sense. In the series of tutorials hereafter will we cover topics as version control with script changes, different localization settings, loading centralized variables, creating master items on variables and eventually getting a simple dashboard up and running based on all tutorials altogether.

read more »

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 »

The Joy of QlikView Grid Layouts

While most QlikView Designers are familiar with the works and principles of data visualization gurus such as Stephen Few and Edward Tufte, when it comes to dashboard layout many (including myself) are more likely to follow the design principles of that other visualization expert: Bob Ross.

Dashboard Design - The Bob Ross way

I plot different objects on the sheet, basing their location on my experience, sound judgement and the overall aesthetic appeal. “Maybe in our world there lives a happy little treemap over there.” Apply a little horizontal and vertical alignment and I’ve finished another ‘masterpiece’. It’s much more of an art than a science, or at least that’s what I like to think.

While this approach is a lot of fun, it’s not a very fast way to get things done. Not every layout works immediately, and reshuffling objects after “happy little accidents” can take a lot of time.

read more »

Join me in the Qlik Sense Cloud

Qlik Sense CloudWant to build a quick dashboard or analyze some data? Want to share your findings with others or publish charts on social media? Then the Qlik Sense Cloud might be of interest to you. This cloud version of Qlik Sense has been available since September 2014. While it is still in beta, features are steadily being added. Best of all, it is completely free!

You can upload up to 250MB of your own data, but can also get external data from the Qlik DataMarket (for example information on exchange rates, demographics, weather or businesses) to augment your internal data.

 

A use case

The missus and I are expecting a baby early next year. Picking a name, in my opinion, is no easy task. I don’t want my kid to have the same name as 5 other kids in his class, but also not a really obscure name (like “Bamboo”, “Patient”, “Berlusconi” or “Zorro”, names that were actually given to some unfortunate kids in the Netherlands in 2014). To make things a little easier, I downloaded a list of all the baby names that were given in the Netherlands in 2014, loaded it into a Sense Cloud App and shared it with my wife. Now we can easily filter names based on popularity, length, letters, etc. and see what we like. It’s nothing too fancy, but the fact that we can use it from a tablet or our phone without having to install anything makes it a lot more convenient and fun.

Want to try the Qlik Sense Cloud?

If you would like to give the Qlik Sense Cloud a try, then enter your email address in the form below. You will then automatically receive an invite for my shared space on the Qlik Cloud. This will give you access to any applications that I publish to the Qlik Cloud and will also give you the option to create your own applications. (email addresses are only used to send the invites and are not stored)

Remote include scripts

Got a bunch of scripts here for you, where do you want me to put them?One of the reasons why I like QlikView so much is that there are always new functions and applications to discover. Yesterday I was at a client who is a Qlik OEM partner. During lunch we discussed various uses of include scripts. The question came up if it was possible to remotely update include scripts. At the same time they didn’t want these external scripts to be viewable (they sell a solution based on QlikView, clients get the solution but the OEM owns the code). Of course, that makes things a little more complicated. The include script sits outside of QlikView in plain text, so anyone can read it. Besides that, updating an external script that sits on the client’s local server is also not a straightforward affair.

I started wondering if it might be possible to fetch an include script from a remote website. So I just tried it, and it works!* (in QlikView, Sense requires Legacy Mode to be enabled, I will let you decide if that is a good idea)

Try this one for example:

$(must_include=https://www.qlikfix.com/remote_include/?license=12345);

In my opinion, this opens up some interesting use cases:

read more »

QlikView macro’s are bad!

Last Thursday I did a presentation at the Qlik Dev Group NL about QlikView macro’s. While the title Macro’s are bad! suggests that I have a very firm view on macro’s, of course the actual presentation is much more nuanced. I wouldn’t be talking about macro’s if I didn’t think they have their uses 😉

In my presentation, I identify some potential use cases for macro’s and discuss if these are a good idea. Next, I share some tips on developing and debugging your macro’s. There are a lot of myths around macro’s, so I have taken a look at which ones are actually true. The presentation concludes with an overview of some of the cool macro’s that are already out there.

You can find my slide deck below:

The examples that I used in my presentation can be downloaded using the link below:

Download the macro examples

I hope you will enjoy these slides. If you have any questions or, also interesting, a different opinion, then feel free to post to the comments section below.

RightQlik: a Windows Explorer context menu for QlikView

RightQlik

RightQlik is a small utility written by QlikView 11 for Developers co-author Miguel García. As I love how this utility makes my developer life just a little easier I posted a link today on LinkedIn and Twitter. I was surprised by how many people had never heard of RightQlik. It’s been out for quite a while. In the hope of having a few more people discover this little gem I am putting this post on my blog.

So what does RightQlik do?

RightQlik is a custom context menu (pictured right) that is shown when right-clicking on a QVW file. It allows quick access to common functions that you will often perform on a QlikView document:

  • Open in a new QV instance: open the QlikView document in a new QlikView instance (i.e. “having the program open multiple times”). This lets you easily switch between several QlikView files, or display them side by side (this is what I often use).
  • Open without data: opens the document without also loading its data. Very useful when you quickly need something from a big document, or if the data has become corrupted (fortunately a very rare event).
  • Reload document: reload the QlikView script and close the document after completion. With this option, you can run simultaneous, local reloads of several QlikView documents with a simple click by first selecting all of them.
  • Reload and keep open: reload the QlikView script and keep the document open after completion.

This custom context menu is only shown when dealing with QVW files, so it will stay out of your way when dealing with any other file type.

You can download RightQlik for free from the QlikMarket.

PS. If you find this utility useful, then please consider writing a short review on the QlikMarket.

Adding annotations to charts

Annotations in QlikView charts

I am currently at the Masters Summit for QlikView in San Francisco attending Bill Lay‘s session on QlikView data visualization. Besides hilarious delivery, Bill is showing some pretty cool visualization examples and tricks.

One thing Bill was showing are various ways you can add annotations to charts, putting them either on the axis or in the legend. One additional view that Bill and I discussed earlier is to put the annotations on the data point. Bill just asked me if there was a blog post about it. There wasn’t, but there is now. Not as polished as usual, but you’ll get the gist by looking at the QVW attached below.

Download the annotated chart example

Target lines on a bar chart using error bars

During my internship at Bitmetric one of my project goals was to build a QlikView application to benchmark logistical companies. I needed to visually compare the results of one organization with the average results of all organizations. My first try was using a combo chart with symbols, but I wasn’t happy with how that looked:

Error bars ComboChart

The dot seems to reflect an interval instead of a value. What I really wanted was to make is a chart that uses a straight line for the benchmark:

Individual target lines on a QlikView bar chartIn this blog I will show you how you can make such a chart.

read more »