<?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 Complex Rank/Aggr/Set Analysis in QlikView</title>
    <link>https://community.qlik.com/t5/QlikView/Complex-Rank-Aggr-Set-Analysis/m-p/471074#M175983</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Folks&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have what appears to be a fairly simple requirement to show the Top N Winners &amp;amp; Top N Losers in a data set, the definition of winners is two-fold:&lt;/P&gt;&lt;P&gt;1. They have to have total revenues of &amp;gt; specific variable&lt;/P&gt;&lt;P&gt;2. They have to have YoY growth of &amp;gt; specific variable&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Top N is further complicated by the fact that I can base the ranking on any of four columns.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think then that I need to use some complex set analysis to define the list of clients that come within the realms of a group of winners, and to wrap an Aggr &amp;amp; Rank function around that to calculate the rank.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, if I start with this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-size: 8pt;"&gt;&lt;EM&gt;Sum({$&amp;lt;[TradeDateNum]={"&amp;gt;=$(vStartDate)&amp;lt;=$(vEndDate)"}&amp;gt;}Revenues)&lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That is my basic formula for the calculation of revenues, to add the Aggr/Rank to this I do:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG&gt;&lt;EM&gt;Aggr(Rank(Sum({$&amp;lt;[TradeDateNum]={"&amp;gt;=$(vStartDate)&amp;lt;=$(vEndDate)"}&amp;gt;}Revenues),1,1),[ClientName])&lt;/EM&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;All of the above works fine, but now what I need to do is to only include those clients where the total revenues is greater than the value of variable vWinnerVal and where the YoY Growth is greater than vWinnerPct.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;Revenues in the above case would be calculated as per first formula above, YoY Growth is calculated as:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG style="font-size: 8pt;"&gt;&lt;EM&gt;( Sum({$&amp;lt;[TradeDateNum]={"&amp;gt;=$(vStartDate)&amp;lt;=$(vEndDate)"}&amp;gt;}Revenues) - &lt;STRONG style="font-size: 8pt;"&gt;&lt;EM&gt;Sum({$&amp;lt;[TradeDateNum]={"&amp;gt;=$(vStartDatePrior)&amp;lt;=$(vEndDatePrior)"}&amp;gt;}Revenues) ) / FABS( &lt;STRONG style="font-size: 8pt;"&gt;&lt;EM&gt;Sum({$&amp;lt;[TradeDateNum]={"&amp;gt;=$(vStartDatePrior)&amp;lt;=$(vEndDatePrior)"}&amp;gt;}Revenues) &lt;/EM&gt;&lt;/STRONG&gt;)&lt;/EM&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG style="font-size: 8pt;"&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;To make a little simpler in terms of the amount of typing!! the above are stored in variables, so I actually create expressions such as:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;For Revenues:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $(vCurrentPeriodRevenues)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;For YoY Growth:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ( $(vCurrentPeriodRevenues) - $(vPriorPeriodRevenues) ) / FABS ( $(vPriorPeriodRevenues) )&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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-size: 10pt;"&gt;If anybody can help out with this, I'd really appreciate it.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 13 Jun 2013 13:47:41 GMT</pubDate>
    <dc:creator />
    <dc:date>2013-06-13T13:47:41Z</dc:date>
    <item>
      <title>Complex Rank/Aggr/Set Analysis</title>
      <link>https://community.qlik.com/t5/QlikView/Complex-Rank-Aggr-Set-Analysis/m-p/471074#M175983</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Folks&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have what appears to be a fairly simple requirement to show the Top N Winners &amp;amp; Top N Losers in a data set, the definition of winners is two-fold:&lt;/P&gt;&lt;P&gt;1. They have to have total revenues of &amp;gt; specific variable&lt;/P&gt;&lt;P&gt;2. They have to have YoY growth of &amp;gt; specific variable&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Top N is further complicated by the fact that I can base the ranking on any of four columns.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think then that I need to use some complex set analysis to define the list of clients that come within the realms of a group of winners, and to wrap an Aggr &amp;amp; Rank function around that to calculate the rank.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, if I start with this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-size: 8pt;"&gt;&lt;EM&gt;Sum({$&amp;lt;[TradeDateNum]={"&amp;gt;=$(vStartDate)&amp;lt;=$(vEndDate)"}&amp;gt;}Revenues)&lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That is my basic formula for the calculation of revenues, to add the Aggr/Rank to this I do:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 8pt;"&gt;&lt;STRONG&gt;&lt;EM&gt;Aggr(Rank(Sum({$&amp;lt;[TradeDateNum]={"&amp;gt;=$(vStartDate)&amp;lt;=$(vEndDate)"}&amp;gt;}Revenues),1,1),[ClientName])&lt;/EM&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;All of the above works fine, but now what I need to do is to only include those clients where the total revenues is greater than the value of variable vWinnerVal and where the YoY Growth is greater than vWinnerPct.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;Revenues in the above case would be calculated as per first formula above, YoY Growth is calculated as:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG style="font-size: 8pt;"&gt;&lt;EM&gt;( Sum({$&amp;lt;[TradeDateNum]={"&amp;gt;=$(vStartDate)&amp;lt;=$(vEndDate)"}&amp;gt;}Revenues) - &lt;STRONG style="font-size: 8pt;"&gt;&lt;EM&gt;Sum({$&amp;lt;[TradeDateNum]={"&amp;gt;=$(vStartDatePrior)&amp;lt;=$(vEndDatePrior)"}&amp;gt;}Revenues) ) / FABS( &lt;STRONG style="font-size: 8pt;"&gt;&lt;EM&gt;Sum({$&amp;lt;[TradeDateNum]={"&amp;gt;=$(vStartDatePrior)&amp;lt;=$(vEndDatePrior)"}&amp;gt;}Revenues) &lt;/EM&gt;&lt;/STRONG&gt;)&lt;/EM&gt;&lt;/STRONG&gt;&lt;/EM&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG style="font-size: 8pt;"&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;To make a little simpler in terms of the amount of typing!! the above are stored in variables, so I actually create expressions such as:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;For Revenues:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $(vCurrentPeriodRevenues)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;For YoY Growth:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ( $(vCurrentPeriodRevenues) - $(vPriorPeriodRevenues) ) / FABS ( $(vPriorPeriodRevenues) )&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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-size: 10pt;"&gt;If anybody can help out with this, I'd really appreciate it.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Jun 2013 13:47:41 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Complex-Rank-Aggr-Set-Analysis/m-p/471074#M175983</guid>
      <dc:creator />
      <dc:date>2013-06-13T13:47:41Z</dc:date>
    </item>
  </channel>
</rss>

