Discussion Board for collaboration related to QlikView Deployment.
Hi i did this in my script for create a QVD file:
SQL SELECT "DT_DATA",
With "Buffer" i think QlikView create a Qvd file, but where? i not have the directory C:\ProgramData\QlikTech\QlikView\Buffers
Solved! Go to Solution.
In your qvw file where you are using this Buffer Load. Just click Ctrl+ALt+U to open the User preferences and go to Locations tab there you can see default path. Like below:
What do you mean can you give an example. ? You want the QVD file name to be changed? May be you can modify the path from Modify button in Locations tab of User preferences.
Buffer files are not meant to be used by you or your script code as data sources. They are a behind-the-scenes technique to cache data that doesn't need to be extracted from the data source over and over again. QlikView manages those buffers, nobody else.
Ah i understand..... this i want to do:
I have a big query it make response after 5 hours from Oracle, but i know the 80% of results (years before 2016) never change... so i want use the QVD files, i think it can resolve my situation... i want the query with years before 2016 never be changed, after this year from 2017 i want all day qlikview refresh my data; so i thought to use BUFFER expression... this is a wrong technics?
Automatic buffering using the BUFFER prefix has numerous limitations. IMHO you better use a classical incremental LOAD technique (of which many examples are present in this community) along the lines of this pseudo-code:
IF IsNull(Filetime('HistoricalQVD.QVD')) THEN
LET vWhere =;
LET vCutoff = '1/1/' & (Year(Today()) - 1);
LOAD * FROM HistoricalQVW.QVD (qvd)
WHERE DateField < '$(vCutoff)';
LET vWhere = 'WHERE DateField >= ' & chr(39) & '$(vCutoff)' & chr(39);
SQL SELECT * FROM BigOracleTable
Change this template to match your situation.
The general idea of using incremental loads with qvd's in a multi-tier data-architecture is the right one if you are not playing with a few rather small and simple applications. As soon as you have a bigger environment it made sense to handle all data explicitly and professional with store-statements to your preferred folder-structure - BUFFER is only for temporary single loads.
Thanks, but i didn't want to create an incremental, i want give 2 query:
1. BUFFERED with old data (before 2016)
2. NOT buffered with new data (> 2017)
how can i do that?
i mean if i put BUFFER on top of my first query, qlikview automatically will be use the QVD file withouth take records from query?
Won't work. BUFFER limitations.
That's why you need an incremental LOAD, which does pretty much the exact same thing as the BUFFER prefix but better and more flexible.