<?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 For.. each / or loop? in QlikView</title>
    <link>https://community.qlik.com/t5/QlikView/For-each-or-loop/m-p/1173255#M633181</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;I want to improve my script in readabilty and efficiency; it is working.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;I have two types of files&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;ABND_SalesLines_DD-MM-YYYY.xlsx&lt;/P&gt;&lt;P&gt;ABND_ReturnLines_DD-MM-YYYY.xlsx&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;EM&gt;In three locations:&lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;$(vDataPath01)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;$(vDataPath02)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;$(vDataPath002)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Currently I have below script three times (one for every datapath). Can anyone tell me how to improve this? Am i looking for:&lt;/P&gt;&lt;P&gt;For..each or a loop?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//One for Sales_Lines&lt;/P&gt;&lt;P&gt;POS_TEMP:&lt;/P&gt;&lt;P&gt;LOAD&amp;nbsp; *&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'POS_Salesline' as POS_TYPE_2,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileBasename() as POS_Filename,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Right(FileBasename(),Len(FileBaseName())-16) as POS_File_Date&lt;/P&gt;&lt;P&gt;&amp;nbsp; FROM&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;[$(vDataPath01)&lt;/SPAN&gt;\ABND_SalesLines*.xlsx]&lt;/P&gt;&lt;P&gt;(ooxml, embedded labels, table is [Sales lines])&lt;/P&gt;&lt;P&gt;Where Productboekingsgroep='PB_POS' and&lt;/P&gt;&lt;P&gt;Boekingsdatum&amp;gt;=MonthStart(AddMonths(Right(FileBasename(),Len(FileBaseName())-16),-1))and&lt;/P&gt;&lt;P&gt;Boekingsdatum&amp;lt;=Today()-2;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//And One for Return_Lines.&lt;/P&gt;&lt;P&gt;Concatenate&lt;/P&gt;&lt;P&gt;LOAD &lt;/P&gt;&lt;P&gt; *&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'POS_Returnline' as POS_TYPE_2,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileBasename() as POS_Filename,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Right(FileBasename(),Len(FileBaseName())-17) as POS_File_Date&lt;/P&gt;&lt;P&gt;FROM &lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;[$(vDataPath01)&lt;/SPAN&gt;\ABND_ReturnLines*.xlsx]&lt;/P&gt;&lt;P&gt;(ooxml, embedded labels, table is [Return lines])&lt;/P&gt;&lt;P&gt;Where Productboekingsgroep='PB_POS'and &lt;/P&gt;&lt;P&gt;Boekingsdatum&amp;gt;=MonthStart(AddMonths(Right(FileBasename(),Len(FileBaseName())-17),-1))and &lt;/P&gt;&lt;P&gt;Boekingsdatum&amp;lt;=Today()-2;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks Joris&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 11 Jun 2016 07:57:54 GMT</pubDate>
    <dc:creator>joris_lansdaal</dc:creator>
    <dc:date>2016-06-11T07:57:54Z</dc:date>
    <item>
      <title>For.. each / or loop?</title>
      <link>https://community.qlik.com/t5/QlikView/For-each-or-loop/m-p/1173255#M633181</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;I want to improve my script in readabilty and efficiency; it is working.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;I have two types of files&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;ABND_SalesLines_DD-MM-YYYY.xlsx&lt;/P&gt;&lt;P&gt;ABND_ReturnLines_DD-MM-YYYY.xlsx&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;EM&gt;In three locations:&lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;$(vDataPath01)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;$(vDataPath02)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;$(vDataPath002)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Currently I have below script three times (one for every datapath). Can anyone tell me how to improve this? Am i looking for:&lt;/P&gt;&lt;P&gt;For..each or a loop?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//One for Sales_Lines&lt;/P&gt;&lt;P&gt;POS_TEMP:&lt;/P&gt;&lt;P&gt;LOAD&amp;nbsp; *&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'POS_Salesline' as POS_TYPE_2,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileBasename() as POS_Filename,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Right(FileBasename(),Len(FileBaseName())-16) as POS_File_Date&lt;/P&gt;&lt;P&gt;&amp;nbsp; FROM&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;[$(vDataPath01)&lt;/SPAN&gt;\ABND_SalesLines*.xlsx]&lt;/P&gt;&lt;P&gt;(ooxml, embedded labels, table is [Sales lines])&lt;/P&gt;&lt;P&gt;Where Productboekingsgroep='PB_POS' and&lt;/P&gt;&lt;P&gt;Boekingsdatum&amp;gt;=MonthStart(AddMonths(Right(FileBasename(),Len(FileBaseName())-16),-1))and&lt;/P&gt;&lt;P&gt;Boekingsdatum&amp;lt;=Today()-2;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//And One for Return_Lines.&lt;/P&gt;&lt;P&gt;Concatenate&lt;/P&gt;&lt;P&gt;LOAD &lt;/P&gt;&lt;P&gt; *&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'POS_Returnline' as POS_TYPE_2,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileBasename() as POS_Filename,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Right(FileBasename(),Len(FileBaseName())-17) as POS_File_Date&lt;/P&gt;&lt;P&gt;FROM &lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;[$(vDataPath01)&lt;/SPAN&gt;\ABND_ReturnLines*.xlsx]&lt;/P&gt;&lt;P&gt;(ooxml, embedded labels, table is [Return lines])&lt;/P&gt;&lt;P&gt;Where Productboekingsgroep='PB_POS'and &lt;/P&gt;&lt;P&gt;Boekingsdatum&amp;gt;=MonthStart(AddMonths(Right(FileBasename(),Len(FileBaseName())-17),-1))and &lt;/P&gt;&lt;P&gt;Boekingsdatum&amp;lt;=Today()-2;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks Joris&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Jun 2016 07:57:54 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/For-each-or-loop/m-p/1173255#M633181</guid>
      <dc:creator>joris_lansdaal</dc:creator>
      <dc:date>2016-06-11T07:57:54Z</dc:date>
    </item>
    <item>
      <title>Re: For.. each / or loop?</title>
      <link>https://community.qlik.com/t5/QlikView/For-each-or-loop/m-p/1173256#M633182</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I would probably use two nested FOR EACH&amp;nbsp; .. IN loops&lt;/P&gt;&lt;P&gt;(one to iterate over the list of your three data paths, one to iterate over the FILELIST('*.xlsx'), which has not so many issues as&amp;nbsp; the star symbold wildcard in the FROM statement).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There is a code sample in the HELP for FOR EACH .. IN how to get the syntax.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Within the loops, you can also set variables for the POS_FILE_DATE and POS_TYPE which you can then use in the LOAD statement, so I think you can essentially burn it down to two nested FOR EACH .. IN loops and a single LOAD statement.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Jun 2016 10:05:44 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/For-each-or-loop/m-p/1173256#M633182</guid>
      <dc:creator>swuehl</dc:creator>
      <dc:date>2016-06-11T10:05:44Z</dc:date>
    </item>
    <item>
      <title>Re: For.. each / or loop?</title>
      <link>https://community.qlik.com/t5/QlikView/For-each-or-loop/m-p/1173257#M633183</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;‌thanks Stefan.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Jun 2016 10:29:12 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/For-each-or-loop/m-p/1173257#M633183</guid>
      <dc:creator>joris_lansdaal</dc:creator>
      <dc:date>2016-06-11T10:29:12Z</dc:date>
    </item>
  </channel>
</rss>

