<?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: Order by in FOR Loop doesn't appear to be working in QlikView</title>
    <link>https://community.qlik.com/t5/QlikView/Order-by-in-FOR-Loop-doesn-t-appear-to-be-working/m-p/1003993#M341110</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You can't expect a sorted output table when using DISTINCT:&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.qlik.com/message/445669"&gt;Re: My "ORDER BY" on a resident table doesn't work&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Maybe consider using a WHERE NOT EXISTS(&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 13px;"&gt; &lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 13px;"&gt;supp_effdte_key, &lt;/SPAN&gt;_s_effdte_key) clause instead of the DISTINCT LOAD prefix, if that sounds feasible.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 26 Aug 2015 23:04:59 GMT</pubDate>
    <dc:creator>swuehl</dc:creator>
    <dc:date>2015-08-26T23:04:59Z</dc:date>
    <item>
      <title>Order by in FOR Loop doesn't appear to be working</title>
      <link>https://community.qlik.com/t5/QlikView/Order-by-in-FOR-Loop-doesn-t-appear-to-be-working/m-p/1003991#M341108</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;In the script below, I am reading in all distinct suppliers, and for each supplier there are multiple effective date periods (which reflect cost roll periods).&amp;nbsp; The goal is to assign a number to each supplier and cost roll date.&amp;nbsp; However, in the table "supp cost rolls', it doesn't appear to be ordering them in EFFECTIVE_DATE sequence.&amp;nbsp; Below is the script and the output from the destination table Temp_skey.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;fg_cost_elements:&lt;/P&gt;&lt;P&gt;LOAD SUPPLIER_ID, &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TEXT(ITEM_NUMBER) AS ITEM,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MATERIAL_COST, &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LABOR_COST, &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PROFIT, &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MATERIAL_MARKUP, &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TEST, &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TOTAL_COST, &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EFFECTIVE_DATE, &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EXPIRATION_DATE, &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CURRENCY, &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; COMPANY, &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text(SUPPLIER_ID)&amp;amp;'-'&amp;amp;text(COMPANY) as _s_key,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _s_item_comp_key,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text(SUPPLIER_ID)&amp;amp;'-'&amp;amp;text(ITEM_NUMBER)&amp;amp;'-'&amp;amp;date(EFFECTIVE_DATE) as _fg_key,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text(SUPPLIER_ID)&amp;amp;'-'&amp;amp;text(ITEM_NUMBER) as _s_item_key,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text(SUPPLIER_ID)&amp;amp;'-'&amp;amp;date(EFFECTIVE_DATE)&amp;amp;'-'&amp;amp;text(COMPANY) as _s_effdte_key,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(isnull(Lookup('Unburdened Cost Date','Unburdened Cost Date',EFFECTIVE_DATE,'UnburdenedCostDate')),0,1) as Benchmark&amp;nbsp; // Returns value of param 1 In Table (4TH Param) From the record where 2nd Param field = 3rd param field )&lt;BR /&gt;FROM&lt;BR /&gt;[..\QVD\FGCostElements.qvd]&lt;BR /&gt;(qvd);&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Benchmark:&lt;BR /&gt;left join(fg_cost_elements)&lt;BR /&gt;Load&lt;BR /&gt;_s_item_key,&lt;BR /&gt;'Yes' as [Benchmark Exists PPV]&lt;BR /&gt;Resident fg_cost_elements&lt;BR /&gt;WHERE EXISTS ([Unburdened Cost Date],EFFECTIVE_DATE);&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;left join(fg_cost_elements)&lt;BR /&gt;LOAD&lt;BR /&gt;_fg_key,&lt;BR /&gt;IF(IsNull([Benchmark Exists PPV]),'No',[Benchmark Exists PPV]) as [Benchmark Exists]&lt;BR /&gt;Resident fg_cost_elements;&lt;/P&gt;&lt;P&gt;drop field [Benchmark Exists PPV];&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;// Getting Cost Roll Periods per Supplier/Effective Date and company&lt;BR /&gt;Temp_skey:&lt;BR /&gt;load * INLINE&lt;BR /&gt;[s_effdte_key,period];&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; Distinct_Supplier:&lt;BR /&gt; load &lt;BR /&gt; DISTINCT _s_key as s_comp_key&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // supplier and company&lt;BR /&gt; Resident fg_cost_elements&lt;BR /&gt; order by _s_key;&lt;/P&gt;&lt;P&gt; &lt;BR /&gt; FOR i = 0 to NoOfRows('Distinct_Supplier')-1&lt;/P&gt;&lt;P&gt;&amp;nbsp; Let sup=Peek('s_comp_key',$(i),'Distinct_Supplier');&lt;BR /&gt; &lt;BR /&gt;&amp;nbsp; supp_cost_rolls:&lt;BR /&gt;&amp;nbsp; LOAD DISTINCT &lt;BR /&gt;&amp;nbsp;&amp;nbsp; _s_effdte_key as supp_effdte_key,&amp;nbsp; // supplier,effective date, and company&lt;BR /&gt;&amp;nbsp;&amp;nbsp; SUPPLIER_ID as SUPPLIER,&lt;BR /&gt;&amp;nbsp;&amp;nbsp; _s_key as s_comp_key&lt;BR /&gt;&amp;nbsp; Resident fg_cost_elements&lt;BR /&gt;&amp;nbsp; WHERE _s_key = '$(sup)'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; and trim(Benchmark)='0'&lt;BR /&gt;&amp;nbsp; ORDER BY EFFECTIVE_DATE;&lt;BR /&gt; &lt;/P&gt;&lt;P&gt;&amp;nbsp; FOR j = 0 to NoOfRows('supp_cost_rolls')-1&lt;BR /&gt;&amp;nbsp;&amp;nbsp; LET supp_eff_key = Peek('supp_effdte_key',$(j),'supp_cost_rolls');&lt;BR /&gt;&amp;nbsp;&amp;nbsp; LET counter = $(j)+1;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Concatenate(Temp_skey)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LOAD '$(supp_eff_key)' as s_effdte_key,'$(counter)' as period&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AutoGenerate(1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Let counter=0;&lt;BR /&gt;&amp;nbsp; next&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drop table supp_cost_rolls;&amp;nbsp; &lt;BR /&gt;next&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Table output is attached.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Aug 2015 21:58:32 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Order-by-in-FOR-Loop-doesn-t-appear-to-be-working/m-p/1003991#M341108</guid>
      <dc:creator>triciagdaly</dc:creator>
      <dc:date>2015-08-26T21:58:32Z</dc:date>
    </item>
    <item>
      <title>Re: Order by in FOR Loop doesn't appear to be working</title>
      <link>https://community.qlik.com/t5/QlikView/Order-by-in-FOR-Loop-doesn-t-appear-to-be-working/m-p/1003992#M341109</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The LOAD-statement that has the ORDER BY clause is repeatedly performed for each combination of Supplier and Company and that will remix the order. So you can solve this by doing a final resident load after your last line in your load script:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;final_supp_cost_rolls:&lt;/P&gt;&lt;P&gt;LOAD&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;/P&gt;&lt;P&gt;RESIDENT&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; supp_cost_rolls&lt;/P&gt;&lt;P&gt;ORDER BY&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; supp_effdte_key;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DROP TABLE supp_cost_rolls;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;RENAME TABLE final_supp_cost_rolls INTO supp_cost_rolls;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Aug 2015 22:36:36 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Order-by-in-FOR-Loop-doesn-t-appear-to-be-working/m-p/1003992#M341109</guid>
      <dc:creator>petter</dc:creator>
      <dc:date>2015-08-26T22:36:36Z</dc:date>
    </item>
    <item>
      <title>Re: Order by in FOR Loop doesn't appear to be working</title>
      <link>https://community.qlik.com/t5/QlikView/Order-by-in-FOR-Loop-doesn-t-appear-to-be-working/m-p/1003993#M341110</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You can't expect a sorted output table when using DISTINCT:&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.qlik.com/message/445669"&gt;Re: My "ORDER BY" on a resident table doesn't work&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Maybe consider using a WHERE NOT EXISTS(&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 13px;"&gt; &lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 13px;"&gt;supp_effdte_key, &lt;/SPAN&gt;_s_effdte_key) clause instead of the DISTINCT LOAD prefix, if that sounds feasible.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Aug 2015 23:04:59 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Order-by-in-FOR-Loop-doesn-t-appear-to-be-working/m-p/1003993#M341110</guid>
      <dc:creator>swuehl</dc:creator>
      <dc:date>2015-08-26T23:04:59Z</dc:date>
    </item>
    <item>
      <title>Re: Order by in FOR Loop doesn't appear to be working</title>
      <link>https://community.qlik.com/t5/QlikView/Order-by-in-FOR-Loop-doesn-t-appear-to-be-working/m-p/1003994#M341111</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;BR /&gt;I am trying to mark your answer as Correct, but the only option under Actions was to mark as 'Helpful'. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 27 Aug 2015 13:50:14 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Order-by-in-FOR-Loop-doesn-t-appear-to-be-working/m-p/1003994#M341111</guid>
      <dc:creator>triciagdaly</dc:creator>
      <dc:date>2015-08-27T13:50:14Z</dc:date>
    </item>
  </channel>
</rss>

