<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Filter on null values in App Development</title>
    <link>https://community.qlik.com/t5/App-Development/Filter-on-null-values/m-p/1573804#M41805</link>
    <description>&lt;P&gt;Hello all&lt;/P&gt;&lt;P&gt;I'm very new to QlikSense and am trying to do what I think should be a simple operation but am having a few issues...&lt;/P&gt;&lt;P&gt;I have a large JSON blob I am pulling from a REST service that gives me a list of applications and a subsection that provides the associated servers and operating systems.&amp;nbsp; &amp;nbsp;I want to expose this via a Qlik dashboard so users can filter out apps based on various criteria, including the OS type(s).&amp;nbsp; The issue I bump into is how does a user filter out all apps that have a specific OS association, as I cannot filter against null values.&lt;/P&gt;&lt;P&gt;i.e. show all apps where 'IBM' is null should show only #1 &amp;amp; #5&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="1" cellspacing="0"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;AppId&lt;BR /&gt;&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;AppName&lt;BR /&gt;&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;IBM&lt;BR /&gt;&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;RHEL&lt;BR /&gt;&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Windows&lt;BR /&gt;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;1&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Safehaven&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Y&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;2&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;RabbitWarren&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Y&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Y&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;3&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Aztec&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Y&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;4&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Walkers&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Y&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Y&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;5&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;QuoVardis&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Y&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I think the right thing to do is to force an 'N' where I have a null, but I'm not sure what the most efficient approach is to do this (I have a few thousand rows and more OS's than shown ), so any suggestions or examples would be welcome.&lt;/P&gt;&lt;P&gt;Below is a simplified view of the structure and how I create the above.&amp;nbsp;&lt;/P&gt;&lt;P&gt;TableA:&lt;BR /&gt;LOAD * INLINE [&lt;BR /&gt;AppId, AppName&lt;BR /&gt;1, Safehaven&lt;BR /&gt;2, RabbitWarren&lt;BR /&gt;3, Aztec&lt;BR /&gt;4, Walkers&lt;BR /&gt;5, QuoVardis&lt;BR /&gt;];&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;TableB:&lt;BR /&gt;LOAD * INLINE [&lt;BR /&gt;AppId, Platform, Hostname&lt;BR /&gt;1, Windows, server1&lt;BR /&gt;1, Windows, server2&lt;BR /&gt;1, Windows, server3&lt;BR /&gt;2, RHEL, server4&lt;BR /&gt;2, RHEL, server5&lt;BR /&gt;2, RHEL, server6&lt;BR /&gt;2, IBM, server7&lt;BR /&gt;3, IBM, server8&lt;BR /&gt;3, IBM, server9&lt;BR /&gt;4, IBM, server10&lt;BR /&gt;4, RHEL7, server11&lt;BR /&gt;5, RHEL7, server12&lt;BR /&gt;5, RHEL7, server13&lt;BR /&gt;];&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;temp1:&lt;BR /&gt;generic load AppId, Platform, 'Y' AS PlatformUsed resident TableB;&lt;/P&gt;&lt;P&gt;result:&lt;BR /&gt;load distinct AppId resident TableA;&lt;/P&gt;&lt;P&gt;FOR i = 0 to NoOfTables()&lt;BR /&gt;TableList:&lt;BR /&gt;LOAD TableName($(i)) as Tablename AUTOGENERATE 1&lt;BR /&gt;WHERE WildMatch(TableName($(i)), 'temp1.*');&lt;BR /&gt;NEXT i&lt;/P&gt;&lt;P&gt;FOR i = 1 to FieldValueCount('Tablename')&lt;BR /&gt;LET vTable = FieldValue('Tablename', $(i));&lt;BR /&gt;LEFT JOIN (result) LOAD * RESIDENT $(vTable);&lt;BR /&gt;DROP TABLE $(vTable);&lt;BR /&gt;NEXT i&lt;/P&gt;&lt;P&gt;drop table TableList;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks all.&lt;/P&gt;</description>
    <pubDate>Sat, 27 Apr 2019 15:50:16 GMT</pubDate>
    <dc:creator>thomsob2u</dc:creator>
    <dc:date>2019-04-27T15:50:16Z</dc:date>
    <item>
      <title>Filter on null values</title>
      <link>https://community.qlik.com/t5/App-Development/Filter-on-null-values/m-p/1573804#M41805</link>
      <description>&lt;P&gt;Hello all&lt;/P&gt;&lt;P&gt;I'm very new to QlikSense and am trying to do what I think should be a simple operation but am having a few issues...&lt;/P&gt;&lt;P&gt;I have a large JSON blob I am pulling from a REST service that gives me a list of applications and a subsection that provides the associated servers and operating systems.&amp;nbsp; &amp;nbsp;I want to expose this via a Qlik dashboard so users can filter out apps based on various criteria, including the OS type(s).&amp;nbsp; The issue I bump into is how does a user filter out all apps that have a specific OS association, as I cannot filter against null values.&lt;/P&gt;&lt;P&gt;i.e. show all apps where 'IBM' is null should show only #1 &amp;amp; #5&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="1" cellspacing="0"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;AppId&lt;BR /&gt;&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;AppName&lt;BR /&gt;&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;IBM&lt;BR /&gt;&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;RHEL&lt;BR /&gt;&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Windows&lt;BR /&gt;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;1&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Safehaven&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Y&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;2&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;RabbitWarren&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Y&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Y&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;3&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Aztec&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Y&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;4&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Walkers&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Y&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Y&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;5&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;QuoVardis&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;Y&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT face="Calibri" color="#000000"&gt;-&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I think the right thing to do is to force an 'N' where I have a null, but I'm not sure what the most efficient approach is to do this (I have a few thousand rows and more OS's than shown ), so any suggestions or examples would be welcome.&lt;/P&gt;&lt;P&gt;Below is a simplified view of the structure and how I create the above.&amp;nbsp;&lt;/P&gt;&lt;P&gt;TableA:&lt;BR /&gt;LOAD * INLINE [&lt;BR /&gt;AppId, AppName&lt;BR /&gt;1, Safehaven&lt;BR /&gt;2, RabbitWarren&lt;BR /&gt;3, Aztec&lt;BR /&gt;4, Walkers&lt;BR /&gt;5, QuoVardis&lt;BR /&gt;];&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;TableB:&lt;BR /&gt;LOAD * INLINE [&lt;BR /&gt;AppId, Platform, Hostname&lt;BR /&gt;1, Windows, server1&lt;BR /&gt;1, Windows, server2&lt;BR /&gt;1, Windows, server3&lt;BR /&gt;2, RHEL, server4&lt;BR /&gt;2, RHEL, server5&lt;BR /&gt;2, RHEL, server6&lt;BR /&gt;2, IBM, server7&lt;BR /&gt;3, IBM, server8&lt;BR /&gt;3, IBM, server9&lt;BR /&gt;4, IBM, server10&lt;BR /&gt;4, RHEL7, server11&lt;BR /&gt;5, RHEL7, server12&lt;BR /&gt;5, RHEL7, server13&lt;BR /&gt;];&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;temp1:&lt;BR /&gt;generic load AppId, Platform, 'Y' AS PlatformUsed resident TableB;&lt;/P&gt;&lt;P&gt;result:&lt;BR /&gt;load distinct AppId resident TableA;&lt;/P&gt;&lt;P&gt;FOR i = 0 to NoOfTables()&lt;BR /&gt;TableList:&lt;BR /&gt;LOAD TableName($(i)) as Tablename AUTOGENERATE 1&lt;BR /&gt;WHERE WildMatch(TableName($(i)), 'temp1.*');&lt;BR /&gt;NEXT i&lt;/P&gt;&lt;P&gt;FOR i = 1 to FieldValueCount('Tablename')&lt;BR /&gt;LET vTable = FieldValue('Tablename', $(i));&lt;BR /&gt;LEFT JOIN (result) LOAD * RESIDENT $(vTable);&lt;BR /&gt;DROP TABLE $(vTable);&lt;BR /&gt;NEXT i&lt;/P&gt;&lt;P&gt;drop table TableList;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks all.&lt;/P&gt;</description>
      <pubDate>Sat, 27 Apr 2019 15:50:16 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/Filter-on-null-values/m-p/1573804#M41805</guid>
      <dc:creator>thomsob2u</dc:creator>
      <dc:date>2019-04-27T15:50:16Z</dc:date>
    </item>
  </channel>
</rss>

