Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
I have let's say 10 tables in my script. All 10 are loaded first thing in the morning with a full run of the script. But as the day goes on, 2 of the 10 tables get loaded every 30 minutes. I am looking into using partial reload as an option for those 2 tables. But really if it was possible, all I would want to load to those 2 tables would be whatever was new/changed/deleted since the prior run. Doing a partial reload with the REFRESH option will definitely save us from having to load the other 8 tables fully every 30 minutes, but can I go even father and somehow make the two tables we are loading every 30 minutes be loaded incrementally? Is it possible to come up with a partial incremental reload? Thanks! - Ron
Hi Ron,
The partial reload means that when the reload is done, the tables that have "replace" in front of the load will be dropped and reloaded. So, I don't see a way to do an incremental load, being the table has been dropped.
Bill
PARTIAL LOAD works in 2 ways
The ADD statement in the load indicates to QlikView that it should add the additional rows
to the existing table. The REPLACE function will drop the existing table and replace it.
Whereas Incremental Load is completely about ADDING a new data, UPDATE the existing data and DELETING the existing data.
Thanks
Satish
Hi Ron,
Partial load and Incremental load are two different concepts. As per my knowledge we cannot combine those.
Partial Reload:
Executes the current load script, including all script commands, such as
Drop Table and reloads data to the active QlikView document.
However, only those tables whose load and select statements are preceded
by the Replace or Add prefix are reloaded. Data
tables that are not affected by this kind of load or select statements will not
be affected by the partial reload.
Incremental load:
It is defined as loading nothing but new or
changed records from the database. All other data should already be available, in one way or another. With
QVD Files.
Thank you everyone for your responses! I am a new QlikView user and wasn't sure whether someone found a clever way to combine the two, but it really is two incompatible concepts after all. Thank you! - Ron
Hi Ron,
I know this topic is old, but I just wanted to point out that the replies you received are not correct.
You can deffinetly code a script where the "ADD Load" command only adds the new fields.
You could also implement a Keep function to define how to delete/update data.
Better late than ever
Best regards,
José
Hi,
Not sure the Keep functions works the way you think it does.
Keep
The keep prefix is similar to the Join (page 250) prefix. Just as the join prefix, it compares the loaded table
with an existing named table or the last previously created data table.
But instead of joining the loaded table with an existing table, it has the effect of reducing one or both of the
two tables before they are stored in QlikView, based on the intersection of table data. The comparison made
is equivalent to a natural join made over all the common fields, i.e. the same way as in a corresponding join.
However, the two tables are not joined and will be kept in QlikView as two separately named tables.
I meant the keep to remove newly updated records, so that then can join with the new fields.
An Where Exists would work as well (and I think it performs better anyways).