I'm adventuring in the incremental load subject and I'm facing a couple of issues.
I created a qvx file where I stored my orders data and I wanted to do an incremental load with orders that were entered today.
This is how the script looks like
LOAD *, order as KEY; SQL SELECT * FROM DB.TABLE WHERE LODTE >= '$(vToday)'; Concatenate LOAD * FROM \\server\drive\folder\2012.qvx (qvd) WHERE NOT Exists(KEY); STORE DB.TABLE INTO \\server\drive\folder\2012_increment.qvx;
This is the only script version that I managed to make it works.
Please note that I had to enter the (qvd) parameter when loading the original QVX.
With this script the incremental load works as expected and the resulting data also matches expectations.
If I write instead
Concatenate LOAD * FROM \\server\drive\folder\2012.qvx WHERE NOT Exists(KEY); STORE DB.TABLE INTO \\server\drive\folder\2012_increment.qvx;
so excluding the (qvd) parameter, it does not work.
So it seems like that qvx is not handled when making incremental loads?
Without the (qvd) parameter, it does not load; when I attempt to open the freshly created 2012_increment.qvx, QV recognises it as QVD in the wizard.
I cannot manage to integrate the current qvx with new information. I.e., if I write
Concatenate LOAD * FROM \\server\drive\folder\2012.qvx (qvd) WHERE NOT Exists(KEY); STORE DB.TABLE INTO \\server\drive\folder\2012.qvx (qvd);
in order to fetch data from my qvx and integrate it with the freshly retrieved data from the DB, it does not work. It fails both if I use or not the (qvd) parameters.
Indeed if I read the reference manual, it writes:
QV_Table: SQL SELECT PrimaryKey, X, Y FROM DB_TABLE WHERE ModificationTime >= #$(LastExecTime)#; Concatenate LOAD PrimaryKey, X, Y FROM File.QVD WHERE NOT Exists(PrimaryKey); STORE QV_Table INTO File.QVD;
I'm using QV 10 if it is of any help.