Skip to main content
Announcements
Introducing Qlik Answers: A plug-and-play, Generative AI powered RAG solution. READ ALL ABOUT IT!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Field value-specific QVD load while keeping optimised load

Hi,

I am using 3 different QVDs, each one of which corresponds to a different time period of data – day, week and month (I need 3 separate QVDs due to data interdependencies).

Each QVD is loaded on 2 separate applications that correspond to Product A and B with simple load statement:

LOAD *
FROM
..\QVDs\WeeklyCube.qvd
(
qvd);

For app e.g. “Product A, Weekly”, can I change the app script to only load data for Product A (and not for both products) from Weekly QVD without compromising the optimised QVD load? I am currently using set analysis and if clauses within the app to filter Product A but I suspect the app will become much lighter if I could do a product-specific load.

Thank you
Panos

1 Solution

Accepted Solutions
Gysbert_Wassenaar

Assuming your qvd file actually contains a field name Product_Name you can do this:

Temp:

LOAD * INLINE [

    Product_name

    A

];

MyTable:

LOAD *

FROM

..\QVDs\WeeklyCube.qvd (qvd)

Where Exists (Product_name);

Drop Table Temp;


talk is cheap, supply exceeds demand

View solution in original post

4 Replies
Gysbert_Wassenaar

A where filter will probably cause a non-optimised load. See this blog post: http://www.quickintelligence.co.uk/qlikview-optimised-qvd-loads/

Where exists doesn't do that so you could create a small inline table with only Product A as value and then use a where exists clause referencing that table.


talk is cheap, supply exceeds demand
Not applicable
Author

Great, thank you so much.

As my knowledge around app development is limited, could you possibly have a go on the script? Would it look like that? Thanks again

LOAD *

FROM

..\QVDs\WeeklyCube.qvd

(qvd);

LOAD * INLINE [

    Product_name

    A

]

Where Exists (Product_name, 'A');

Gysbert_Wassenaar

Assuming your qvd file actually contains a field name Product_Name you can do this:

Temp:

LOAD * INLINE [

    Product_name

    A

];

MyTable:

LOAD *

FROM

..\QVDs\WeeklyCube.qvd (qvd)

Where Exists (Product_name);

Drop Table Temp;


talk is cheap, supply exceeds demand
Not applicable
Author

Superb!!! Thank you ever so much!

File size has gone down by a quarter and I can simplify the design script to run it even faster.

Unfortunately, I cannot reload the app on my local machine and I have no licence on the server to check the load progress dialogue. But judging from the speed it was loaded, I should be safe.