<?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 nested aggr to simulate a multi-dimensional chart in QlikView</title>
    <link>https://community.qlik.com/t5/QlikView/nested-aggr-to-simulate-a-multi-dimensional-chart/m-p/445498#M487076</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have some data describing flows of commodities between different geographic areas.&lt;/P&gt;&lt;P&gt;There are 4 fields in my document data:&lt;/P&gt;&lt;P&gt;* &lt;SPAN style="font-family: courier new,courier;"&gt;start_area&lt;/SPAN&gt;: where the commodities leave from?&lt;/P&gt;&lt;P&gt;* &lt;SPAN style="font-family: courier new,courier;"&gt;destination_area&lt;/SPAN&gt;: where the commodities arrive at? (destination_area and start_area share the same values)&lt;/P&gt;&lt;P&gt;* &lt;SPAN style="font-family: courier new,courier;"&gt;transport_type&lt;/SPAN&gt;: how the commodities are transported?&lt;/P&gt;&lt;P&gt;* &lt;SPAN style="font-family: courier new,courier;"&gt;amount&lt;/SPAN&gt;: how many commodities are transported?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For example, I have this row in my source data:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;A043&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A717&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; train&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 80&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;It means that 80 unities were moved by train from area A043 to area A717.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There can be several destination and transport types for a given starting area.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a webservice available which can display those flows on a map. In order to render them properly, it has to been fed with data in the following format for every start_area:&lt;/P&gt;&lt;P&gt;destination_area:amount,transport_type|destination_area:amount,transport_type|destination_area:amount,transport_type&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For example, suppose I have the following rows in my source data for flows originating from area A043:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;A043&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A717&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; train&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 80&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;A043&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A211&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; plane&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 200&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;A043&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A211&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; train&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 60&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;A043&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A349&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; train&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 110&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To render the flows from A043 on a map I have to send this to the web service:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;A717:80,train|A211:200,plane|A211:60,train|A349:110,train&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I started implementing an extension to send the proper data to the web service. The object dimension is start_area, but I am struggling to find how to define the expression to have my data properly formatted.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think I have to use the aggr function 3 times in my expression, to make 3 nested groups, first by grouping by start_area, then for every start_area group by destination_area, then for every destination_area group by transport_type, then for every distinct (start_area, destination_area, transport_type) tuple evaluate the "sum(amount)" expression.&lt;/P&gt;&lt;P&gt;Is it the right way to do it?&lt;/P&gt;&lt;P&gt;Is it possible to simulate a multi-dimensional objects by nesting aggr?&lt;/P&gt;&lt;P&gt;How my expression should be written?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any help on this topic will be much appreciated!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 18 Feb 2013 14:51:35 GMT</pubDate>
    <dc:creator />
    <dc:date>2013-02-18T14:51:35Z</dc:date>
    <item>
      <title>nested aggr to simulate a multi-dimensional chart</title>
      <link>https://community.qlik.com/t5/QlikView/nested-aggr-to-simulate-a-multi-dimensional-chart/m-p/445498#M487076</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have some data describing flows of commodities between different geographic areas.&lt;/P&gt;&lt;P&gt;There are 4 fields in my document data:&lt;/P&gt;&lt;P&gt;* &lt;SPAN style="font-family: courier new,courier;"&gt;start_area&lt;/SPAN&gt;: where the commodities leave from?&lt;/P&gt;&lt;P&gt;* &lt;SPAN style="font-family: courier new,courier;"&gt;destination_area&lt;/SPAN&gt;: where the commodities arrive at? (destination_area and start_area share the same values)&lt;/P&gt;&lt;P&gt;* &lt;SPAN style="font-family: courier new,courier;"&gt;transport_type&lt;/SPAN&gt;: how the commodities are transported?&lt;/P&gt;&lt;P&gt;* &lt;SPAN style="font-family: courier new,courier;"&gt;amount&lt;/SPAN&gt;: how many commodities are transported?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For example, I have this row in my source data:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;A043&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A717&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; train&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 80&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;It means that 80 unities were moved by train from area A043 to area A717.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There can be several destination and transport types for a given starting area.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a webservice available which can display those flows on a map. In order to render them properly, it has to been fed with data in the following format for every start_area:&lt;/P&gt;&lt;P&gt;destination_area:amount,transport_type|destination_area:amount,transport_type|destination_area:amount,transport_type&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For example, suppose I have the following rows in my source data for flows originating from area A043:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;A043&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A717&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; train&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 80&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;A043&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A211&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; plane&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 200&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;A043&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A211&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; train&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 60&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;A043&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A349&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; train&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 110&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To render the flows from A043 on a map I have to send this to the web service:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;A717:80,train|A211:200,plane|A211:60,train|A349:110,train&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I started implementing an extension to send the proper data to the web service. The object dimension is start_area, but I am struggling to find how to define the expression to have my data properly formatted.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think I have to use the aggr function 3 times in my expression, to make 3 nested groups, first by grouping by start_area, then for every start_area group by destination_area, then for every destination_area group by transport_type, then for every distinct (start_area, destination_area, transport_type) tuple evaluate the "sum(amount)" expression.&lt;/P&gt;&lt;P&gt;Is it the right way to do it?&lt;/P&gt;&lt;P&gt;Is it possible to simulate a multi-dimensional objects by nesting aggr?&lt;/P&gt;&lt;P&gt;How my expression should be written?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any help on this topic will be much appreciated!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Feb 2013 14:51:35 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/nested-aggr-to-simulate-a-multi-dimensional-chart/m-p/445498#M487076</guid>
      <dc:creator />
      <dc:date>2013-02-18T14:51:35Z</dc:date>
    </item>
    <item>
      <title>Re: nested aggr to simulate a multi-dimensional chart</title>
      <link>https://community.qlik.com/t5/QlikView/nested-aggr-to-simulate-a-multi-dimensional-chart/m-p/445499#M487077</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try this in the script. That's the best place to calculate these things.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Temp:&lt;/P&gt;&lt;P&gt;load start_area, destination_area, transport, sum(amount) as sum_amount&lt;/P&gt;&lt;P&gt;from &lt;EM&gt;...mysource...&lt;/EM&gt; group by start_area, destination_area, transport;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Table1:&lt;/P&gt;&lt;P&gt;Load &lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #737373; font-family: 'courier new', courier; background-color: #ffffff;"&gt;start_area&lt;/SPAN&gt;,&lt;/P&gt;&lt;P&gt;concat(&lt;SPAN style="color: #737373; font-family: 'courier new', courier; background-color: #ffffff;"&gt;destination_area&lt;/SPAN&gt;&amp;amp;':'&amp;amp;sum_amount&amp;amp;','&lt;SPAN style="color: #737373; font-family: 'courier new', courier; background-color: #ffffff;"&gt;transport_type&lt;/SPAN&gt;,'|') as output4webservice&lt;/P&gt;&lt;P&gt;from Temp group by &lt;SPAN style="color: #737373; font-family: 'courier new', courier; background-color: #ffffff;"&gt;start_area&lt;/SPAN&gt;;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Feb 2013 15:20:43 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/nested-aggr-to-simulate-a-multi-dimensional-chart/m-p/445499#M487077</guid>
      <dc:creator>Gysbert_Wassenaar</dc:creator>
      <dc:date>2013-02-18T15:20:43Z</dc:date>
    </item>
    <item>
      <title>Re: nested aggr to simulate a multi-dimensional chart</title>
      <link>https://community.qlik.com/t5/QlikView/nested-aggr-to-simulate-a-multi-dimensional-chart/m-p/445500#M487078</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for your answer Gysbert. However my requirement is to avoid pre-calculations in the load script, in order to be able to update the map by doing selection in the qlikview document, while your solution always give the same result without relation to the current selection state.&lt;/P&gt;&lt;P&gt;Is there a way to dynamically generate the properly formatted input to feed my webservice?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I can achieve what I want with an extension which has start_area, destination_area and transport_type as dimensions, and manually aggregate the data rows in the extension code to create the formatted output, but I also need to get another expression to be evaluated for every start_area so I cannot use a multi-dimensional object.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Feb 2013 15:32:53 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/nested-aggr-to-simulate-a-multi-dimensional-chart/m-p/445500#M487078</guid>
      <dc:creator />
      <dc:date>2013-02-18T15:32:53Z</dc:date>
    </item>
    <item>
      <title>Re: nested aggr to simulate a multi-dimensional chart</title>
      <link>https://community.qlik.com/t5/QlikView/nested-aggr-to-simulate-a-multi-dimensional-chart/m-p/445501#M487079</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I've just discovered that it is possible to give more than one dimension to the aggr function!&lt;/P&gt;&lt;P&gt;So if my object has start_area as its dimension, the expression to get the formatted output is simply:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;concat(&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; aggr(destination_area &amp;amp; ':' &amp;amp; sum(amount) &amp;amp; ',' &amp;amp; transport_type, &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; start_area, destination_area, transport_type)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; , '|')&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&lt;SPAN style="font-family: arial,helvetica,sans-serif;"&gt;I was trying to nest aggr with a different field in every nesting.... This is much simple and give the results I want.&lt;/SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Feb 2013 16:50:36 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/nested-aggr-to-simulate-a-multi-dimensional-chart/m-p/445501#M487079</guid>
      <dc:creator />
      <dc:date>2013-02-18T16:50:36Z</dc:date>
    </item>
  </channel>
</rss>

