30 March 2023 Boolean Operators in Qlik Sense Share this message Every Friday at Bitmetric we’re posting a new Qlik certification practice question to our LinkedIn company page. Last Friday we asked the following Qlik Data Architect certification practice question about booleans operators (AND, OR, NOT, XOR) in Qlik Sense. The answers were more or less evenly distributed between B and C. The correct answer is B Statement 1 evaluates to True, while statement 2 evaluates to False. To see how we arrived at this answer, let’s first learn more about how Boolean operators are evaluated in Qlik (and in general). How does Qlik evaluate Boolean operators? Behind the Boolean operators is Boolean mathematics. The order of the Boolean algebra is the highest to lowest priority. This is: NOT AND OR Expressions inside brackets are always evaluated first. In Boolean algebra False() evaluates to 0, and True() evaluates to 1. We can also interpret AND as multiplication (*) and OR as addition (+). Using this information, we can evaluate the first expression False() OR NOT False() AND True() as: 0 OR NOT 0 AND 1 NOT is evaluated first, so we can rewrite the expression as: 0 OR 1 AND 1 Substituting AND for multiplication and OR for addition, we can finally rewrite the expression as: 0 + 1 * 1 Applying the PEMDAS order of operations, we can calculate the result as 1, true. (Note that in Qlik True() evaluates to -1 instead of 1, but the outcome is the same) The XOR Boolean operator The XOR, or exclusive or, operator is a shorthand for: (A OR B) AND NOT (A AND B) Or, to phrase it differently, XOR evaluates to true is either option is true, but not when both options are true. When we look at the second statement: True() XOR True() We can see that this doesn’t match the requirements of the XOR operator, so it evaluates to false. Using parentheses for readability The Boolean operators can be used at different places in Qlik Sense. They are used in if statements, for example to make flags in tables. They are used in WHERE statements to filter specific data, and many other options. In order to improve the readability of the Boolean operators, it’s a good idea to use parentheses. The expression below has the same result as the first statement from the question, but it is a lot easier to read: False()OR( NOT False() AND True()) Override the order of operations with parentheses We can also override the order of operations with parentheses. For example, if we want the OR operator to be evaluated before the AND operator, we can rewrite the expression as: (False() OR NOT False())ANDTrue() Should you always use parentheses? That depends, but typically it’s a good idea to use parentheses to aid readibility and understanding. You can learn more about this in our Qlik Coding Conventions. That’s it for this week, see you next Friday! Mail and Deploy webinar Join our upcoming webinar and learn how Mail & Deploy helps you develop and deliver data-driven, high-impact reports from Qlik Cloud, Qlik Sense and QlikView. Test your Qlik knowledge! Check out the Friday Qlik Test Prep archive for Qlik certification questions and answers. Friday Qlik Test Prep Solution How can we help? Feel free to contact us if you have any comments or questions. Call us Mail us 30 November 2023 Qlik Sense exploited in Cactus ransomware campaign We previously reported on patches for two critical vulnerabilities in Qlik Sense Enterprise for Windows. If you haven’t upgraded already, now is the time to take heed: these vulnerabilities are actively being exploited in the Cactus ransomware campaign. 26 October 2023 TimeXtender Job Scheduling with Qlik Application Automation Unlock the power of Qlik Application Automation to schedule TimeXtender jobs efficiently. Discover automation tips for seamless data workflows. Download the template and boost your productivity today! API Automation Qlik TimeXtender 21 September 2023 Qlik Sense Enterprise for Windows – Critical Security Fix #2 A new security issue in Qlik Sense Enterprise for Windows has been identified. This resolves an incomplete fix for the vulnerability that was reported earlier this month. Patches are available and it is recommended to update your Qlik Sense Enterprise for Windows environment at the earliest possibility. New Release Qlik Security
30 November 2023 Qlik Sense exploited in Cactus ransomware campaign We previously reported on patches for two critical vulnerabilities in Qlik Sense Enterprise for Windows. If you haven’t upgraded already, now is the time to take heed: these vulnerabilities are actively being exploited in the Cactus ransomware campaign.
26 October 2023 TimeXtender Job Scheduling with Qlik Application Automation Unlock the power of Qlik Application Automation to schedule TimeXtender jobs efficiently. Discover automation tips for seamless data workflows. Download the template and boost your productivity today! API Automation Qlik TimeXtender
21 September 2023 Qlik Sense Enterprise for Windows – Critical Security Fix #2 A new security issue in Qlik Sense Enterprise for Windows has been identified. This resolves an incomplete fix for the vulnerability that was reported earlier this month. Patches are available and it is recommended to update your Qlik Sense Enterprise for Windows environment at the earliest possibility. New Release Qlik Security