QlikView is about empowering the user. Allowing a user to freely choose what to look at and how to look at it is one of the cornerstones of Business Discovery. Another is about simplicity – which often translates into removing unnecessary technical obstacles so that the user can focus on the data and the information that lies hidden in it. This often leads to a situation where you have two different user roles: an application developer and a business user, where the application developer takes care of the data modeling aspects of the analysis and the user interacts with the data, asks questions and finds new areas of exploration.
In such a situation it is important that the developer treads carefully – he or she must remove technical obstacles without limiting the user. However, in an effort to simplify, application developers sometimes complicate things without realizing it. Let me give you a couple of examples.
Macros and Actions are features that unfortunately sometimes are used to “help” the user make the right selection. I have often seen developers create buttons that make selections and activate other sheets, or triggers that clear selections and make new selections when you leave a sheet. Such constructs are confusing for the user, who doesn’t understand why these new selections happen. Macros and Actions often obscure the QlikView logic and prevent the user from learning how to interact with data on their own.
Another area where the power to select can be taken away from the user is when Set Analysis is used. In set analysis, the developer can define a formula with an arbitrary selection that overrides the one made by the user. Often the new selection is based on the user selection. Set analysis is necessary for calculations that extend outside the user-made selection, e.g., if the user wants to make a year-to-date calculation for the time up to the selected month. Properly used, it is an extremely powerful tool that enhances the user's ability to find information in data. But I have seen cases where set analysis instead replaced the user's selection and limited the his ability to interact with data. To hard code the selection inside a formula is in some cases disrespecting the user’s intelligence!
My view is that navigation – choosing a sheet, activating sheet objects, expanding branches in pivot tables, and, most importantly, making selections – should be left to the user. Constructions that “help” the user in this area usually have the opposite effect. Instead of helping the user, they often complicate the interaction with data and confuse the user.
I am convinced that macros, actions and set analysis sometimes must be used, but these features should be used with caution. They should never be used for things that the user can do better. We live in an age of empowerment, and users want to be free to explore data in their own way and on their own.