For every new QlikView developer, where to begin and what to focus on is often a difficult question to answer. Just this week I was tasked with handing over my work to a colleague that had only completed the designer training. For any new developers, reading Miguel Garcia’s and Barry Harmsen’s QlikView 11 for Developers is a great start.The book, much like this post will focus on practical steps to becoming a master QlikView practitioner.
I cannot stress enough how important this. I often see analysts and developers failing to meet requirements because they could not properly conceptualize the problem. With many of the posts in my blog, the focus is always on constant re-evaluation of what we are doing with emphasis on maintaining readability and comprehension.
The first step to becoming a great Business Intelligence professional is asking the right questions. No matter the problem or the skills you may not have, when you ask the right questions, you are guiding yourself to finding the right solution. Think logically and most importantly apply critically thinking to everything you do.
Your energy will determine your rate of growth. Being passionate about something means that you will want to spend copious amounts of time learning and applying your trade. If you cannot get excited about what you do, then don’t do it at all. Enthusiasm is your number 1 motivator, find a reason to be energized.
Before you develop in the script, start with understanding your front-end environment. At the end of the day, your users will see this part of your work and so it is important to be able to build and design dashboards that communicate effectively the information being presented.
One of the observations I have made regarding good compared to great developers is summed up quite nicely by Franklin Rooseveldt
It is common sense to take a method and try it. If it fails, admit it frankly and try another. But above all, try something
Without trying to fail you will never learn to succeed. Asking questions to colleagues is easy, getting your colleagues to tell you is easy, doing it yourself is hard but it is the only way YOU will remember and be able to apply it going forward.
Build and click on every button available to you. Pause after each change and see what it is doing. You know you know your stuff when you can guide another colleague to solving a problem without even looking at your QlikView environment
Your colleague “Hey Future QlikView Guru, my client wants to see the months running horizontally in this straight table chart, is there a way I can do this”. You,. Future QlikView Guru “Yes, go to the presentation tab and click the Horizontal tick box near the bottom left” Your Colleague “Awesome, thanks” 🙂
So here is a practical guide to starting with the front-end.
- Build all the charts – Familiarize yourself with what is available and get a rough idea what each type of chart would be used for
- Aesthetics – Build a chart, any chart and then try and make it look nicer. This is where critical thinking comes in. Ask yourself what you would like to change and then figure out if that is possible. Spend time on the QlikCommunity but don’t change your question until you have an answer as to where its possible or not. Asking a question like can I make this bar chart have an embedded rain drop .gif is not the kind of questions you should be asking. Keep it simple and focus on clean aesthetics
- Repeat for all other charts
- Play around – Get excited about your journey of learning, see what options are available on the tabs for each object and see what happens when you apply a change
Building expressions is a lot simpler then creating a script to append to our data-model. For instance, if we use the data provided to us from QlikView and we wanted to show total Sales by Product, we would do this
The next thing all new QlikView developers should do is then try and recreate this in the script. As with anything in life really, there’s always more than one way to do things, applying this approach to learning, at least teachers you one method for a scenario that you know works. It exposes you to techniques that strengthen both your front-end and script skills.
For the script we would create this
In the front-end we could add this to our chart to see if the values match
Do this for a myriad of scenarios. You will find yourself learning at a rate that will allow you to catch up to your more tenured colleagues faster than what they might have even thought.
Before you begin designing and developing your own dashboard, get an idea of what others are doing. Qlik makes available demo’s that can be downloaded and viewed. Most often with the scripting included
When I started out, I was a complete noob when it came to anything technical. The QlikCommunity provided a platform where I could ask questions to my hearts content and get replies within minutes. In the few communities I have been active on, nothing compares to QlikView. The experts and MVP’s are so prompt, so consistent (Gysbert Wassenaar Community Legend :)), that you will always find an answer to your problem.
The reason critical thinking is so important is that you must be able to apply yourself to thinking solution delivery. If you can think like this, you will always be able to have a question that’s answer will bring you closer to your solution. Having this arsenal of questions ready will greatly help your learning.
Let’s Build a Dashboard
Applying the thought process presented in this article, lets actually build a dashboard. Let’s see how simple questions can lead to data insights and while giving you the platform to really learn the product
1. Understand the data
The data we working with has the following information
- Customer – The customer that purchased what products at what quantity
- Sales Order ID – Unique ID for the shipment of products to a customer
- Ship Date – The date at which the products left the warehouse
- Sales – Measure
- Quantity – Measure
The above data shows Sales and Quantity information by Product sold to each customer. Lets create out template and then begin to build our report
We want to show Year, month, and day information. We create this in our script so we can add it as a list box in the front-end
As you would of seen with dashboards, many of the date formats are manipulated to run horizontally and some logo information added to the top. Our template after a few changes looks like this
The techniques we learnt
- Text boxes
- List boxes
- How to load images
What would the KPIs be? There are 2 measures in this data, Quantity and Sales, so let’s focus on understanding what this looks like irrespective of the dimension and build our report to understand what drove this
At an overview level we can see what the total sales and quantity is. When a user interacts with the dashboard, they will be presented with a visual cue as to the % contribution.
We learnt a few things by creating this object
- Set Modifier
- Text boxes
4. Other Metrics
Next, we want to understand what else we can derive at a very high level from the 2 measures. Some of the additional metrics we came up with were
5. Visualize the Information
There is many ways we can present this information. What we need to do is understand the story the data and ourselves are trying to tell through the visual display of information. QlikView’s platform allows for only your creativity to be your stumbling block. If you can think it, visualize it, then you most probably can create it (within reason of course :))
One of the visualizations we wanted to show was how Sales compared to Quantity by Product. We chose to use a scatter chart for various reasons, but herewith the visual and explanation of what we are seeing
Each product is represented by a bubble, each bubbles size is the number of customers that purchased that product. This is then measured against sales and quantity. When initially built. The scatter chart looked like this
The reason for this change is the x axis. As you can see, some products generate very high sales amounts yet most of the volume of sales is in the lower amounts. Using a log scale axis we can correctly visual the clustering of purchases. For each of the reporting objects built, the same approach was used.
Dashboards are stories, each snippet of information must provide some additional info to support or clarify a previous areas value. Top, down, left to right.
The rest of the dashboard was built using quite a few methods which you can explore in the download. Here is some screenshots of our final dashboard. We certainly extracted a lot of information from a small data-set.
To download this QlikView demo, click here Qlikies Newbies.qvw