<?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: TableName Function in QlikView</title>
    <link>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870699#M304367</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If i use &lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 13px;"&gt;NoOfTables&lt;/SPAN&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 13px;"&gt;() at the begin of the script, i get 0 tables.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Marco&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 04 May 2015 13:27:25 GMT</pubDate>
    <dc:creator>marco_puccetti</dc:creator>
    <dc:date>2015-05-04T13:27:25Z</dc:date>
    <item>
      <title>TableName Function</title>
      <link>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870697#M304365</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I need to use a function in order to delete all the previous data loaded, but if i use this statement:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If (len(TableName('TABLE_NAME')) &amp;gt; 0) Then &lt;/P&gt;&lt;P&gt;&amp;nbsp; DROP TABLE &lt;SPAN style="font-size: 13.3333330154419px;"&gt;TABLE_NAME&lt;/SPAN&gt;; &lt;/P&gt;&lt;P&gt;End If&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;this seems to not find any table with that name, although there's just the table loaded previously,&lt;/P&gt;&lt;P&gt;This is the same if i use the DROP TABLES function.&lt;/P&gt;&lt;P&gt;If i use only the DROP TABLE function, it crashes and return an error because the table is not found.&lt;/P&gt;&lt;P&gt;So how the data can be persistent if the tables are not visible as objects previously loaded?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Which function have i to use?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Marco&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 May 2015 13:11:25 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870697#M304365</guid>
      <dc:creator>marco_puccetti</dc:creator>
      <dc:date>2015-05-04T13:11:25Z</dc:date>
    </item>
    <item>
      <title>Re: TableName Function</title>
      <link>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870698#M304366</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This worked:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;// drop tables from generators&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for i = NoOfTables() - 1 to 0 step - 1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; let vTable = tablename($(i));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; drop tables [$(vTable)];&lt;/P&gt;&lt;P&gt;next&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;let i&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = null();&lt;/P&gt;&lt;P&gt;let vTable&amp;nbsp;&amp;nbsp; = null();&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Marcus&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 May 2015 13:22:44 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870698#M304366</guid>
      <dc:creator>marcus_sommer</dc:creator>
      <dc:date>2015-05-04T13:22:44Z</dc:date>
    </item>
    <item>
      <title>Re: TableName Function</title>
      <link>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870699#M304367</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If i use &lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 13px;"&gt;NoOfTables&lt;/SPAN&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 13px;"&gt;() at the begin of the script, i get 0 tables.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Marco&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 May 2015 13:27:25 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870699#M304367</guid>
      <dc:creator>marco_puccetti</dc:creator>
      <dc:date>2015-05-04T13:27:25Z</dc:date>
    </item>
    <item>
      <title>Re: TableName Function</title>
      <link>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870700#M304368</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;All the tables are dropped at the start of a normal reload, and there is no reason to attempt to explicitly drop them. The tables are then re-created during the reload.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The exception is a partial reload, which requires a load script specifically designed to handle a partial load. Most QV solutions do not require a partial load, but it can be useful for near-real time solutions with large volumes of source data and an incremental load strategy.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;HTH&lt;/P&gt;&lt;P&gt;Jonathan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 May 2015 13:36:03 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870700#M304368</guid>
      <dc:creator>jonathandienst</dc:creator>
      <dc:date>2015-05-04T13:36:03Z</dc:date>
    </item>
    <item>
      <title>Re: TableName Function</title>
      <link>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870701#M304369</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This script-part is nearly the last statement within the entire script aimed to clean up everything what is being left. If you want to drop tables after certain load-statements and it should more generic as "drop table Table;" you will need something like this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;let vLoadTable = TableName(NoOfTables() - 1);&lt;/P&gt;&lt;P&gt;drop tables $(vLoadTable);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Marcus&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 May 2015 13:38:50 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870701#M304369</guid>
      <dc:creator>marcus_sommer</dc:creator>
      <dc:date>2015-05-04T13:38:50Z</dc:date>
    </item>
    <item>
      <title>Re: TableName Function</title>
      <link>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870702#M304370</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;So if i need a list of table also out of the reload script i can't have the visibility, though these functions are not valid out of the script editor?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Marco&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 May 2015 13:40:05 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870702#M304370</guid>
      <dc:creator>marco_puccetti</dc:creator>
      <dc:date>2015-05-04T13:40:05Z</dc:date>
    </item>
    <item>
      <title>Re: TableName Function</title>
      <link>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870703#M304371</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;What is it that you would like to do with a list of tables?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 May 2015 13:42:10 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870703#M304371</guid>
      <dc:creator>jonathandienst</dc:creator>
      <dc:date>2015-05-04T13:42:10Z</dc:date>
    </item>
    <item>
      <title>Re: TableName Function</title>
      <link>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870704#M304372</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I need to do what is the purpose of the function!!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Marco&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 May 2015 13:48:09 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870704#M304372</guid>
      <dc:creator>marco_puccetti</dc:creator>
      <dc:date>2015-05-04T13:48:09Z</dc:date>
    </item>
    <item>
      <title>Re: TableName Function</title>
      <link>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870705#M304373</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You want to know which tables are available within a qvw and/or which data-sources are included then you will need to read the meta-data:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A _jive_internal="true" data-containerid="2049" data-containertype="14" data-objectid="2614" data-objecttype="102" href="https://community.qlik.com/docs/DOC-2614"&gt;Governance Materials.zip&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A _jive_internal="true" data-containerid="2049" data-containertype="14" data-objectid="4002" data-objecttype="102" href="https://community.qlik.com/docs/DOC-4002"&gt;QlikView Governance Dashboard 1.0&lt;/A&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Marcus&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 May 2015 13:49:38 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870705#M304373</guid>
      <dc:creator>marcus_sommer</dc:creator>
      <dc:date>2015-05-04T13:49:38Z</dc:date>
    </item>
    <item>
      <title>Re: TableName Function</title>
      <link>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870706#M304374</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Both examples from me have a useful purpose and you could it extend to more complex things like:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;let vTabName = 'DataStructures';&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;let vLoadStart = num(now() - today(), '#.########', '.', ','); &lt;/P&gt;&lt;P&gt;for i = 0 to NoOfTables() - 1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for ii = 1 to NoOfFields(TableName($(i)))&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; let vTableName = '[' &amp;amp; TableName($(i)) &amp;amp; ']';&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; let vFieldName = '[' &amp;amp; FieldName($(ii), TableName($(i))) &amp;amp; ']';&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; let vFieldCounter = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for j = 0 to NoOfTables() - 1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for jj = 1 to NoOfFields(TableName($(j)))&lt;/P&gt;&lt;P&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; let vFieldNameCounter = '[' &amp;amp; FieldName($(jj), TableName($(j))) &amp;amp; ']';&lt;/P&gt;&lt;P&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; let vFieldCounter = if('$(vFieldName)' = '$(vFieldNameCounter)', 1 + $(vFieldCounter), $(vFieldCounter));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; next&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; next&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DataStructure:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Load&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $(i) as TableNumber,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TableName($(i)) as TableName,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NoOfRows(TableName($(i))) as Rows,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $(ii) as FieldNumber,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FieldName($(ii), TableName($(i))) as FieldName,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Count($(vFieldName)) as FieldTotalCount,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Count(distinct $(vFieldName)) as FieldDistinctCount,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MissingCount($(vFieldName)) as FieldMissingCount,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TextCount($(vFieldName)) as FieldTextCount,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NumericCount($(vFieldName)) as FieldNumericCount,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NullCount($(vFieldName)) as FieldNullCount,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; num(Count($(vFieldName)) / NoOfRows(TableName($(i))), '#.##0%') as FieldDensity,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(TextCount($(vFieldName)) &amp;gt;= 1 and NumericCount($(vFieldName)) &amp;gt;= 1, 'mixed',&lt;/P&gt;&lt;P&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; if(TextCount($(vFieldName)) &amp;gt;= 1, 'string', 'numeric')) as FieldFormat,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if($(vFieldCounter) &amp;gt; 1, 'yes (' &amp;amp; $(vFieldCounter) &amp;amp; ')', 'no') as Key&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Resident $(vTableName) Where '$(vTableName)' &amp;lt;&amp;gt; 'DataStructure';&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; let vFieldCounter = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; next&lt;/P&gt;&lt;P&gt;next&lt;/P&gt;&lt;P&gt;store DataStructure into $(pApp@03)DataStructure.qvd (qvd);&lt;/P&gt;&lt;P&gt;$(Include=$(pScript@04)Include_LoadLogging.txt);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But with bigger apps it will be rather slow but many things are possible.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Marcus&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 May 2015 13:58:15 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/TableName-Function/m-p/870706#M304374</guid>
      <dc:creator>marcus_sommer</dc:creator>
      <dc:date>2015-05-04T13:58:15Z</dc:date>
    </item>
  </channel>
</rss>

