<?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 Re: Data Modelling Help in QlikView</title>
    <link>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375875#M420031</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;In regular dimensional modeling which is good practice for Qlik Data Modeling the best practice is to replace possible null values so it is very clear that the dimensions are missing - just leaving them as NULL creates more confusion than not.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To do this in a script I made an example based on your data:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE __default_attr="sql" __jive_macro_name="code" class="jive_macro_code jive_text_macro _jivemacro_uid_15129252583324468" jivemacro_uid="_15129252583324468" modifiedtitle="true"&gt;
&lt;P&gt;fact:&lt;/P&gt;
&lt;P&gt;LOAD * INLINE [&lt;/P&gt;
&lt;P&gt;A&amp;nbsp;&amp;nbsp;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp; C&lt;/P&gt;
&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; ..&amp;nbsp;&amp;nbsp;&amp;nbsp; ..&lt;/P&gt;
&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;
&lt;P&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;
&lt;P&gt;4&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;
&lt;P&gt;] (delimiter is spaces);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;DIMENSION:&lt;/P&gt;
&lt;P&gt;LOAD *,A AS A_CHECK INLINE [&lt;/P&gt;
&lt;P&gt;A&amp;nbsp;&amp;nbsp;&amp;nbsp; D&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; E&lt;/P&gt;
&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; ..&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;
&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp; ..&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;
&lt;P&gt;] (delimiter is spaces);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;[Missing DIMENSION values]:&lt;/P&gt;
&lt;P&gt;LOAD&lt;/P&gt;
&lt;P&gt;&amp;nbsp; A, '(A missing dimension key)' AS A_Txt&lt;/P&gt;
&lt;P&gt;RESIDENT&lt;/P&gt;
&lt;P&gt;&amp;nbsp; fact&lt;/P&gt;
&lt;P&gt;WHERE&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Not(Exists(A_CHECK,A))&lt;/P&gt;
&lt;P&gt;;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;DROP FIELD A_CHECK;&lt;/P&gt;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Then it is easy to have a sheet with a table listing all the missing dimension keys that could be used to clean up the issue in the sources possibly.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 10 Dec 2017 17:03:02 GMT</pubDate>
    <dc:creator>petter</dc:creator>
    <dc:date>2017-12-10T17:03:02Z</dc:date>
    <item>
      <title>Data Modelling Help</title>
      <link>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375870#M420026</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hey guys!!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope you all are having a happy weekend and those who are spending time helping this Brilliant communtity i need your suggestions here.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Lets say we have two tables 1 fact and 1 dimension(for simplicity)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fact:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A&amp;nbsp;&amp;nbsp;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp; C&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; ..&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ..&lt;/P&gt;&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;&lt;P&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;&lt;P&gt;4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DIMENSION:&lt;/P&gt;&lt;P&gt;A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; D&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; E&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ..&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ..&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The data in other column&amp;nbsp; other than A doesnt really concern here so i have not updated here.so I have not update them. As you can see fact has more distinct value in Key column A than the dimension table .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What i want to ask is&lt;/P&gt;&lt;P&gt;1: if we get into this kind of scenerio than what would be the beter way to approach?&lt;/P&gt;&lt;P&gt;2: If subset ratio of dimesnion is not 100% (in this case here) will it create issue in our calculations?&lt;/P&gt;&lt;P&gt;3: Will this impact the result when we have large volume of data?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;your suggestion and welcome and appreciated. Thanks in advance.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;Pradosh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 09 Dec 2017 09:49:19 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375870#M420026</guid>
      <dc:creator>pradosh_thakur</dc:creator>
      <dc:date>2017-12-09T09:49:19Z</dc:date>
    </item>
    <item>
      <title>Re: Data Modelling Help</title>
      <link>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375871#M420027</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You're fact table contains A values that don't exist in your dimension table. That means if you use field D or E as dimensions in a chart you will get results that don't cover all the records in your fact table. Suppose you have to charts, one with A as dimension and one with D as dimension. Both chart use sum(B) as expression. The chart with A as dimension will have a different total than the chart with D as dimension. &lt;SPAN style="font-size: 13.3333px;"&gt;That may or may not be a problem. Perhaps your business is not interested in values of A that don't exist in the dimension table. In that case you could reduce the fact table to clear out records that don't have a matching A value in the dimension table.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 09 Dec 2017 11:00:33 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375871#M420027</guid>
      <dc:creator>Gysbert_Wassenaar</dc:creator>
      <dc:date>2017-12-09T11:00:33Z</dc:date>
    </item>
    <item>
      <title>Re: Data Modelling Help</title>
      <link>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375872#M420028</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you for your answer&amp;nbsp; Gysbert. As you have mentioned already that the total could be different in different objects based on the dimension. I am still confused how to proceed .I was asked what is the best approach to go ahead in this case. If you can put some light into that and the reason for it .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have thought of applying an inner keep . Is this the way to go ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 09 Dec 2017 11:12:32 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375872#M420028</guid>
      <dc:creator>pradosh_thakur</dc:creator>
      <dc:date>2017-12-09T11:12:32Z</dc:date>
    </item>
    <item>
      <title>Re: Data Modelling Help</title>
      <link>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375873#M420029</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I tried to recreate your scenario with a very a simple example. I guess it all comes down to what the users want to see ultimately. Take a look at the image below&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG alt="Capture.PNG" class="jive-image image-1" src="https://community.qlik.com/legacyfs/online/186328_Capture.PNG" style="height: 213px; width: 620px;" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, in the Above Image, Dimension D is only available for A and B under Dimension A. So, depending on the fact that if you are suppressing nulls for your dimension or not, you totals may or may not match. If you don't suppress null, then your chart is not necessarily wrong because what it is saying is that you have some value for USA, some for IND, rest of the value is for unavailable dimension value. If you wish to suppress null and still see total as 75, even that is doable using Dimensionality() function.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Anyways, my point is that your data is what it is... there is not much you can do for it. What you can do is to put it in a way that your user can understand (knowing the limitations).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best,&lt;/P&gt;&lt;P&gt;Sunny&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 09 Dec 2017 11:28:07 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375873#M420029</guid>
      <dc:creator>sunny_talwar</dc:creator>
      <dc:date>2017-12-09T11:28:07Z</dc:date>
    </item>
    <item>
      <title>Re: Data Modelling Help</title>
      <link>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375874#M420030</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Best approach … will be difficult because it always depends on your data and the requirements to display them.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;One approach could be like Gysbert hinted to clear out unneeded and/or invalid data. Another could be like showed from Sunny to display intentionally the data with all missing, invalid and erroneous data to display the failures within the processes which creates these data.&lt;/P&gt;&lt;P&gt;And a further way might be to check on possible data-failures and correct respectively repair them in some way and I think it's not unusual to combine these methods.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I use quite often a check on ID's like isnum(AnyID) to filter out invalid records (you could never find each potential issue and even with tremendous efforts you couldn't repair all of them) and another method is to fill missing values within the dimension-table maybe with something like this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Dimension:&lt;/P&gt;&lt;P&gt;Load A, A as A2, D, E from DimSource;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Concatenate(Dimension)&lt;/P&gt;&lt;P&gt;Load A, 'Missing' as D, '#NV' as E from FactSource where not exists(A, A2);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Marcus&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 10 Dec 2017 11:44:48 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375874#M420030</guid>
      <dc:creator>marcus_sommer</dc:creator>
      <dc:date>2017-12-10T11:44:48Z</dc:date>
    </item>
    <item>
      <title>Re: Data Modelling Help</title>
      <link>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375875#M420031</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;In regular dimensional modeling which is good practice for Qlik Data Modeling the best practice is to replace possible null values so it is very clear that the dimensions are missing - just leaving them as NULL creates more confusion than not.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To do this in a script I made an example based on your data:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE __default_attr="sql" __jive_macro_name="code" class="jive_macro_code jive_text_macro _jivemacro_uid_15129252583324468" jivemacro_uid="_15129252583324468" modifiedtitle="true"&gt;
&lt;P&gt;fact:&lt;/P&gt;
&lt;P&gt;LOAD * INLINE [&lt;/P&gt;
&lt;P&gt;A&amp;nbsp;&amp;nbsp;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp; C&lt;/P&gt;
&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; ..&amp;nbsp;&amp;nbsp;&amp;nbsp; ..&lt;/P&gt;
&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;
&lt;P&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;
&lt;P&gt;4&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;
&lt;P&gt;] (delimiter is spaces);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;DIMENSION:&lt;/P&gt;
&lt;P&gt;LOAD *,A AS A_CHECK INLINE [&lt;/P&gt;
&lt;P&gt;A&amp;nbsp;&amp;nbsp;&amp;nbsp; D&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; E&lt;/P&gt;
&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp; ..&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;
&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp; ..&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/P&gt;
&lt;P&gt;] (delimiter is spaces);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;[Missing DIMENSION values]:&lt;/P&gt;
&lt;P&gt;LOAD&lt;/P&gt;
&lt;P&gt;&amp;nbsp; A, '(A missing dimension key)' AS A_Txt&lt;/P&gt;
&lt;P&gt;RESIDENT&lt;/P&gt;
&lt;P&gt;&amp;nbsp; fact&lt;/P&gt;
&lt;P&gt;WHERE&lt;/P&gt;
&lt;P&gt;&amp;nbsp; Not(Exists(A_CHECK,A))&lt;/P&gt;
&lt;P&gt;;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;DROP FIELD A_CHECK;&lt;/P&gt;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Then it is easy to have a sheet with a table listing all the missing dimension keys that could be used to clean up the issue in the sources possibly.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 10 Dec 2017 17:03:02 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375875#M420031</guid>
      <dc:creator>petter</dc:creator>
      <dc:date>2017-12-10T17:03:02Z</dc:date>
    </item>
    <item>
      <title>Re: Data Modelling Help</title>
      <link>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375876#M420032</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you sunny. Using dimensionality()was a good idea.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;Pradosh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Dec 2017 02:46:55 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375876#M420032</guid>
      <dc:creator>pradosh_thakur</dc:creator>
      <dc:date>2017-12-11T02:46:55Z</dc:date>
    </item>
    <item>
      <title>Re: Data Modelling Help</title>
      <link>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375877#M420033</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you everyone. Combining all of the ideas did give me the best approach..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;Pradosh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Dec 2017 02:49:26 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Data-Modelling-Help/m-p/1375877#M420033</guid>
      <dc:creator>pradosh_thakur</dc:creator>
      <dc:date>2017-12-11T02:49:26Z</dc:date>
    </item>
  </channel>
</rss>

