Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Join us in Toronto Sept 9th for Qlik's AI Reality Tour! Register Now
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Incremental Load Issue

Hi All,

  I have implemented the incremental load for one of my application. There I am loading latest date's record from DB as well as deleting

very first days record from QVD.

But the dashboard was showing Min and Max of date only for some of instruments.

Though DB having in between days data it is not showing up.

My incremental load will be like below

/*If Historical QVD is not available */

History_A:

Sql Select * from DB_Table

where Type_Name ='A' and Trunc(Load_date)>=trunc(SYSDATE-15);

Store History_A into History_A.qvd;

Transac:

Load *

From History_A.qvd;

Store Transac into Transac.qvd;

Else (//if history qvd is avilable)

Load * frrom

History_A.qvd

where (timestamp(Load_Date))>= (timestamp(today()-14)

Concatenate

SQL select * from DB_Table

where Trunc(Load_Date)=Trunc(Sysdate-2)

DB is Oracle.

Kindly share your inputs

5 Replies
Anonymous
Not applicable
Author

Does this trunc() exist in QV?? I doubt!!

Anonymous
Not applicable
Author

I am not using Trunc in QV load script..In SQL only I am using it

Anonymous
Not applicable
Author

Anonymous
Not applicable
Author

okay, pls go through the shared threads, you will get your answer

maxgro
MVP
MVP

I wouldn't' say the incremental load in Qlik is very simple.

You can find some help in QlikView help (search QVD)

1.png

Regarding your script

1)

In the first sql statement you filter the record from db

in the last one you don't; why?

where Type_Name ='A'

2)

When the qvd is available, you load 15 days from qvd and concatenate 3 days (I suppose you need a Trunc(Load_Date)>=trunc(Sysdate-2), greater equal, not an equal as in your script).

I think you get some duplicated rows here, because you load the same dates from qvd and from db. Maybe you need to first load from db and the from qvd with a not exists.

Also you miss a  store in history qvd

Else (//if history qvd is avilable)

Load * frrom

History_A.qvd

where (timestamp(Load_Date))>= (timestamp(today()-14)

Concatenate

SQL select * from DB_Table

where Trunc(Load_Date)=Trunc(Sysdate-2)

3)

You filter on load date in Oracle and in Qlik

In Oracle the filter is on a date (because of trunc); In Qlik you use the timestamp. Perhaps it works; I think it's better to use the same logic (e.g select trunc(Load_Date) as Load_Date in Oracle, so you store a date in qvd and Load_Date >= (today()-14) in Qlik)