<?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: Incremental load in QlikView</title>
    <link>https://community.qlik.com/t5/QlikView/Incremental-load/m-p/856906#M990823</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;If you are using Case 1: Append Only (used for Log files) then qlikview will know that if it is basic or Incremental loading by identifying the Buffer Incremental keywords in the statement.&amp;nbsp; For other scenarios Qlikview will not know whether it is Normal or Incremental load. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H3&gt;&lt;A name="kanchor966"&gt;&lt;/A&gt;&lt;A name="Append_only"&gt;&lt;/A&gt;Case 1: Append Only&lt;/H3&gt;&lt;P&gt;The simplest case is the one of log files; files in which records are only appended and never deleted. The following conditions apply:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt; The database must be a log file (or some other file in which records are appended and not inserted or deleted) which is contained in a text file (no ODBC/OLE DB).&amp;nbsp; &lt;/LI&gt;&lt;LI&gt; QlikView keeps track of the number of records that have been previously read and loads only records added at the end of the file. &lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;IMG border="0" class="jive-image" style="border-style: none;" /&gt; &lt;/P&gt;&lt;P class="example"&gt;Script Example:&lt;/P&gt;&lt;P class="Code"&gt;Buffer (Incremental) Load * From LogFile.txt (ansi, txt, delimiter is '\t', embedded labels);&lt;/P&gt;&lt;P class="Code"&gt;&lt;/P&gt;&lt;P class="Code"&gt;&lt;STRONG&gt;Buffer Load:&lt;/STRONG&gt;&lt;/P&gt;&lt;P class="Code"&gt;&lt;/P&gt;&lt;P&gt;The syntax is:&lt;/P&gt;&lt;P class="syntax"&gt;&lt;SPAN class="Bold"&gt;buffer&lt;/SPAN&gt;&lt;SPAN class="Italic"&gt;[ &lt;SPAN class="Bold"&gt;(&lt;/SPAN&gt;option [ , option] &lt;SPAN class="Bold"&gt;)&lt;/SPAN&gt; ] ( loadstatement | selectstatement&lt;/SPAN&gt; )&lt;/P&gt;&lt;P&gt;where:&lt;/P&gt;&lt;P style="font-weight: bold;"&gt;&lt;SPAN class="Italic"&gt;option ::&lt;/SPAN&gt;= incremental | &lt;SPAN class="Italic"&gt;expiry&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-weight: bold;"&gt;expiry::= stale &lt;SPAN class="Italic"&gt;[after]&lt;/SPAN&gt;&lt;SPAN class="Italic"&gt;amount&lt;/SPAN&gt;&lt;SPAN class="Italic"&gt;[&lt;/SPAN&gt; (days | hours)&lt;SPAN class="Italic"&gt;]&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="Italic"&gt;amount&lt;/SPAN&gt; is a number specifying the time period. Decimals may be used. The unit is assumed to be &lt;SPAN class="Bold"&gt;days&lt;/SPAN&gt; if omitted. &lt;/P&gt;&lt;P&gt;The &lt;SPAN class="Bold"&gt;incremental&lt;/SPAN&gt; option enables the ability to read only part of an underlying file. Previous size of the file is stored in the XML header in the QVD file. This is particularly useful with log files. All records loaded at a previous occasion are read from the QVD file whereas the following new records are read from the original source and finally an updated QVD-file is created. Note that the &lt;SPAN class="Bold"&gt;incremental&lt;/SPAN&gt; option can only be used with &lt;SPAN class="Bold"&gt;load&lt;/SPAN&gt; statements and text files and that &lt;SPAN class="Bold"&gt;incremental load&lt;/SPAN&gt; cannot be used where old data is changed or deleted!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 13 Jul 2015 02:30:26 GMT</pubDate>
    <dc:creator>jagan</dc:creator>
    <dc:date>2015-07-13T02:30:26Z</dc:date>
    <item>
      <title>Incremental load</title>
      <link>https://community.qlik.com/t5/QlikView/Incremental-load/m-p/856903#M990820</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; In incremental load process how the system will understand which one basic load and which one is incremental load&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Jul 2015 01:03:44 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Incremental-load/m-p/856903#M990820</guid>
      <dc:creator>hari8088</dc:creator>
      <dc:date>2015-07-13T01:03:44Z</dc:date>
    </item>
    <item>
      <title>Re: Incremental load</title>
      <link>https://community.qlik.com/t5/QlikView/Incremental-load/m-p/856904#M990821</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;System is not going to understand and differentiate Full or Incremental Load.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You should handle this in your code (Script). &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.qlik.com/thread/156074"&gt;IF else condition while scripting Incremental Load&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.qlik.com/thread/116721"&gt;Regarding loading DIM data and FACT data in QVD file, I got some doubt:&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H1 class="title entry-title" style="margin: 0 0 0.5em; font-family: Arial, sans-serif; color: #222222;"&gt;Three Types of Qlikview Incremental Loads&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin: 0 0 1.2em;"&gt;&lt;SPAN style="color: #000000;"&gt;Large transactional tables can be significantly time consuming in a reload. Taking advantage of Qlikview’s incremental load logic can reduce that time considerably. An incremental load is a process of simply appending new records or updating specific records in an existing QVD. There are three key scripting options available for incremental loads.&lt;/SPAN&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN style="color: #000000;"&gt;Insert Only&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="color: #000000;"&gt;Insert &amp;amp; Update&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="color: #000000;"&gt;Insert, Update, &amp;amp; Delete&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;H2 style="margin: 0 0 0.5em; font-size: 1.8em; font-family: 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif; color: #222222;"&gt;&lt;SPAN style="color: #000000;"&gt;SET UP&lt;/SPAN&gt;&lt;/H2&gt;&lt;P&gt;&lt;SPAN style="color: #000000; margin: 0 0 1.2em;"&gt;Each of these three scenarios is designed to run once an INITIAL LOAD has occurred. An initial load is a task that creates the source QVDs. These QVDs from then on can be optimized to reload with one of the following incremental load scripts. Since an incremental load is designed to pull only new or altered data, a source QVD is needed to hold all non-modified information and must exist before an incremental load can run.&lt;/SPAN&gt;&lt;SPAN style="color: #000000; margin: 0 0 1.2em;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;H2 style="margin: 0 0 0.5em; font-size: 1.8em; font-family: 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif; color: #222222;"&gt;&lt;SPAN style="color: #000000;"&gt;INSERT ONLY&lt;/SPAN&gt;&lt;/H2&gt;&lt;P&gt;&lt;SPAN style="color: #000000; margin: 0 0 1.2em;"&gt;For an INSERT ONLY scenario, there is the assumption that new data will not create duplicate records. There is no set way to determine NEW data, so this must be reviewed case by case. Once a method for finding new records is determined, the reload process is a simple three step process.&lt;/SPAN&gt;&lt;/P&gt;&lt;OL style="margin: 0 0 15px; list-style-position: initial; list-style-image: initial;"&gt;&lt;LI&gt;&lt;SPAN style="color: #000000;"&gt;Load all NEW data from the data source&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="color: #000000;"&gt;Concatenate this data with a load of all data from the QVD file&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="color: #000000;"&gt;Store the entire table out to the QVD file&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;SPAN style="margin: 0 0 1.2em;"&gt;&lt;SPAN style="color: #000000;"&gt;&lt;A href="http://www.resultdata.com/wp-content/uploads/2013/12/insert_only-copy.jpg" style="color: #428bca;"&gt;&lt;SPAN style="color: #000000;"&gt;&lt;IMG alt="insert_only copy" class="wp-image-4203 alignnone jive-image size-full" height="360" src="http://www.resultdata.com/wp-content/uploads/2013/12/insert_only-copy.jpg" style="padding: 3px; border-color: #e6e6e6; background-color: rgba(255, 255, 255, 0.701961);" width="504" /&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;As long as the QVD is named the same, this will overwrite the previous QVD so the process can repeat for the next reload.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; margin: 0 0 1.2em;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;H2 style="margin: 0 0 0.5em; font-size: 1.8em; font-family: 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif; color: #222222;"&gt;&lt;SPAN style="color: #000000;"&gt;INSERT &amp;amp; UPDATE&lt;/SPAN&gt;&lt;/H2&gt;&lt;P&gt;&lt;SPAN style="color: #000000; margin: 0 0 1.2em;"&gt;The INSERT &amp;amp; UPDATE scenario also takes new data from the source but it also pulls in updated records. Additional precautions need to be taken in order to avoid duplicate records. During the load from the QVD, exclude records where there is a match on the primary key. This will ensure that the updated records will not be duplicated.&lt;/SPAN&gt;&lt;/P&gt;&lt;OL style="margin: 0 0 15px; list-style-position: initial; list-style-image: initial;"&gt;&lt;LI&gt;&lt;SPAN style="color: #000000;"&gt;Load all NEW and UPDATED data from the data source&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="color: #000000;"&gt;Concatenate this data with a load of only the missing records from the QVD file&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="color: #000000;"&gt;Store the entire table out to the QVD file&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;SPAN style="color: #000000; margin: 0 0 1.2em;"&gt;&lt;EM&gt;Example of Script&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="margin: 0 0 1.2em; padding: 0 0 0 60px;"&gt;&lt;SPAN style="color: #000000;"&gt;Data:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt; SQL SELECT&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PrimaryKey,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;FROM DB_Table&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;WHERE ModifyDate &amp;gt;= $(vDate);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; margin: 0 0 1.2em; padding: 0 0 0 60px;"&gt;CONCATENATE&lt;/SPAN&gt;&lt;SPAN style="margin: 0 0 1.2em; padding: 0 0 0 60px;"&gt;&lt;SPAN style="color: #000000;"&gt;LOAD&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PrimaryKey,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;&amp;nbsp; FROM Data.qvd&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;&amp;nbsp; WHERE NOT exists (PrimaryKey);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; margin: 0 0 1.2em; padding: 0 0 0 60px;"&gt;STORE Data into Data.qvd;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; margin: 0 0 1.2em;"&gt;Using the Exists() function keeps the QVD from loading the obsolete records since the UPDATED version is currently in memory.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; margin: 0 0 1.2em;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;H2 style="margin: 0 0 0.5em; font-size: 1.8em; font-family: 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif; color: #222222;"&gt;&lt;SPAN style="color: #000000;"&gt;INSERT, UPDATE, &amp;amp; DELETE&lt;/SPAN&gt;&lt;/H2&gt;&lt;P&gt;&lt;SPAN style="color: #000000; margin: 0 0 1.2em;"&gt;An INSERT, UPDATE, &amp;amp; DELETE script is very similar to the load process of the INSERT &amp;amp; UPDATE, however there is an additional step needed to remove deleted records. The most effective method is to load all the PrimaryKeys from the source and then apply an inner join. This will achieve the delete process.&lt;/SPAN&gt;&lt;/P&gt;&lt;OL style="margin: 0 0 15px; list-style-position: initial; list-style-image: initial;"&gt;&lt;LI&gt;&lt;SPAN style="color: #000000;"&gt;Load all NEW and UPDATED data from the data source&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="color: #000000;"&gt;Concatenate this data with a load of only the missing records from the QVD file&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="color: #000000;"&gt;Inner join all PrimaryKeys from the data source&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="color: #000000;"&gt;Store the entire table out to the QVD file&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P style="margin: 0 0 1.2em;"&gt;&lt;SPAN style="color: #000000;"&gt;&lt;EM&gt;Example of Script&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 0 0 1.2em; padding: 0 0 0 60px;"&gt;&lt;SPAN style="color: #000000;"&gt;Data:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;SQL SELECT&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;PrimaryKey,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;A,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;B,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;C&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;FROM DB_Table&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;WHERE ModifyDate &amp;gt;= $(vDate);&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 0 0 1.2em; padding: 0 0 0 60px;"&gt;&lt;SPAN style="color: #000000;"&gt;CONCATENATE&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 0 0 1.2em; padding: 0 0 0 60px;"&gt;&lt;SPAN style="color: #000000;"&gt;LOAD&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;PrimaryKey,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;A,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;B,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;C&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;FROM Data.qvd&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;WHERE NOT exists (PrimaryKey);&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 0 0 1.2em; padding: 0 0 0 60px;"&gt;&lt;SPAN style="color: #000000;"&gt;INNER JOIN&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 0 0 1.2em; padding: 0 0 0 60px;"&gt;&lt;SPAN style="color: #000000;"&gt;SQL SELECT&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;PrimaryKey,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;FROM DB_Table;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 0 0 1.2em; padding: 0 0 0 60px;"&gt;&lt;SPAN style="color: #000000;"&gt;STORE Data into Data.qvd;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 0 0 1.2em;"&gt;&lt;SPAN style="color: #000000;"&gt;Very large data sets can take a long time to load and greatly effect the performance of your QlikView documents over time. By implementing QVD optimization with incremental loads, this technique can be employed to perform faster loads in less time, utilizing less system resources.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Jul 2015 01:29:48 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Incremental-load/m-p/856904#M990821</guid>
      <dc:creator />
      <dc:date>2015-07-13T01:29:48Z</dc:date>
    </item>
    <item>
      <title>Re: Incremental load</title>
      <link>https://community.qlik.com/t5/QlikView/Incremental-load/m-p/856905#M990822</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 don't think, there is any special function to identify the incremental process. Incremental load is a mechanism by which data is appended, updated or deleted in large tables using the &lt;STRONG&gt;where&lt;/STRONG&gt; condition &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Jul 2015 01:58:05 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Incremental-load/m-p/856905#M990822</guid>
      <dc:creator>settu_periasamy</dc:creator>
      <dc:date>2015-07-13T01:58:05Z</dc:date>
    </item>
    <item>
      <title>Re: Incremental load</title>
      <link>https://community.qlik.com/t5/QlikView/Incremental-load/m-p/856906#M990823</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;If you are using Case 1: Append Only (used for Log files) then qlikview will know that if it is basic or Incremental loading by identifying the Buffer Incremental keywords in the statement.&amp;nbsp; For other scenarios Qlikview will not know whether it is Normal or Incremental load. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H3&gt;&lt;A name="kanchor966"&gt;&lt;/A&gt;&lt;A name="Append_only"&gt;&lt;/A&gt;Case 1: Append Only&lt;/H3&gt;&lt;P&gt;The simplest case is the one of log files; files in which records are only appended and never deleted. The following conditions apply:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt; The database must be a log file (or some other file in which records are appended and not inserted or deleted) which is contained in a text file (no ODBC/OLE DB).&amp;nbsp; &lt;/LI&gt;&lt;LI&gt; QlikView keeps track of the number of records that have been previously read and loads only records added at the end of the file. &lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;IMG border="0" class="jive-image" style="border-style: none;" /&gt; &lt;/P&gt;&lt;P class="example"&gt;Script Example:&lt;/P&gt;&lt;P class="Code"&gt;Buffer (Incremental) Load * From LogFile.txt (ansi, txt, delimiter is '\t', embedded labels);&lt;/P&gt;&lt;P class="Code"&gt;&lt;/P&gt;&lt;P class="Code"&gt;&lt;STRONG&gt;Buffer Load:&lt;/STRONG&gt;&lt;/P&gt;&lt;P class="Code"&gt;&lt;/P&gt;&lt;P&gt;The syntax is:&lt;/P&gt;&lt;P class="syntax"&gt;&lt;SPAN class="Bold"&gt;buffer&lt;/SPAN&gt;&lt;SPAN class="Italic"&gt;[ &lt;SPAN class="Bold"&gt;(&lt;/SPAN&gt;option [ , option] &lt;SPAN class="Bold"&gt;)&lt;/SPAN&gt; ] ( loadstatement | selectstatement&lt;/SPAN&gt; )&lt;/P&gt;&lt;P&gt;where:&lt;/P&gt;&lt;P style="font-weight: bold;"&gt;&lt;SPAN class="Italic"&gt;option ::&lt;/SPAN&gt;= incremental | &lt;SPAN class="Italic"&gt;expiry&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="font-weight: bold;"&gt;expiry::= stale &lt;SPAN class="Italic"&gt;[after]&lt;/SPAN&gt;&lt;SPAN class="Italic"&gt;amount&lt;/SPAN&gt;&lt;SPAN class="Italic"&gt;[&lt;/SPAN&gt; (days | hours)&lt;SPAN class="Italic"&gt;]&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="Italic"&gt;amount&lt;/SPAN&gt; is a number specifying the time period. Decimals may be used. The unit is assumed to be &lt;SPAN class="Bold"&gt;days&lt;/SPAN&gt; if omitted. &lt;/P&gt;&lt;P&gt;The &lt;SPAN class="Bold"&gt;incremental&lt;/SPAN&gt; option enables the ability to read only part of an underlying file. Previous size of the file is stored in the XML header in the QVD file. This is particularly useful with log files. All records loaded at a previous occasion are read from the QVD file whereas the following new records are read from the original source and finally an updated QVD-file is created. Note that the &lt;SPAN class="Bold"&gt;incremental&lt;/SPAN&gt; option can only be used with &lt;SPAN class="Bold"&gt;load&lt;/SPAN&gt; statements and text files and that &lt;SPAN class="Bold"&gt;incremental load&lt;/SPAN&gt; cannot be used where old data is changed or deleted!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Jul 2015 02:30:26 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Incremental-load/m-p/856906#M990823</guid>
      <dc:creator>jagan</dc:creator>
      <dc:date>2015-07-13T02:30:26Z</dc:date>
    </item>
    <item>
      <title>Re: Incremental load</title>
      <link>https://community.qlik.com/t5/QlikView/Incremental-load/m-p/856907#M990824</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;you can use some method in the script to figure out which case (incremental / basic)&lt;/P&gt;&lt;P&gt;some examples&lt;/P&gt;&lt;P&gt;- usually in incremental load you store data in QVD files; the first time the QVD are missing then you're in basic; second time, third, etc,,, the files are present so you're in the incremental case&lt;/P&gt;&lt;P&gt;- other possibility is to store in an external file the information (a date, a key) to be used for incremental; when you find the date or key in the file you're doing an incremental, otherwise you're in the basic case&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Jul 2015 05:20:33 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Incremental-load/m-p/856907#M990824</guid>
      <dc:creator>maxgro</dc:creator>
      <dc:date>2015-07-13T05:20:33Z</dc:date>
    </item>
    <item>
      <title>Re: Incremental load</title>
      <link>https://community.qlik.com/t5/QlikView/Incremental-load/m-p/856908#M990825</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Please find below attached file.It may helps.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Jul 2015 07:52:19 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Incremental-load/m-p/856908#M990825</guid>
      <dc:creator>krishna20</dc:creator>
      <dc:date>2015-07-13T07:52:19Z</dc:date>
    </item>
  </channel>
</rss>

