Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Store Images Into QVDs

Hi,

Does anyone know how to store images that have been imported into QlikView (Desktop) into a QVD?

I'm trying to do the following:

FOR i = 1 TO $(NrRows);

LET FilePath = PEEK('FILEPATH', $(i) - 1, 'INSPECTION IMAGES');
LET IDPEEK('IMAGEID', $(i) - 1, 'INSPECTION IMAGES');

"IMPORT INSPECTION IMAGES":

BUNDLE INFO LOAD     *
INLINE               [IMAGEID, FILEPATH
$(ID), $(FilePath)]
;

NEXT i

STORE * FROM [IMPORT INSPECTION IMAGES] INTO '$(iQVDPath)IMPORT INSPECTION IMAGES.QVD';

The import function works perfectly (i.e. everything before the STORE statement). However, when I try to store the table [IMPORT INSPECTION IMAGES] into a QVD, I get an error which states that the [IMPORT INSPECTION IMAGES] tablet cannot be found, as follows:

Table not found

STORE * FROM [IMPORT INSPECTION IMAGES] INTO 'C:\Program Files\QlikView\QVD Files\IMPORT INSPECTION IMAGES.QVD'

My purpose for this requirement is to be able to import all my data, including pictures, into a QlikView model. Then I want to create the relevant QVDs, again including pictures, and FTP the QVD files to another site. At the new site, I want to download the QVDs from the FTP site and import them into the same QlikView Model.

This allows for easy data transfer. However, it is critical that the pictures are transferred as well.

Any ideas?

Kind regards,

Johan

6 Replies
rwunderlich
Partner Ambassador/MVP
Partner Ambassador/MVP

If you open the table viewer  you will not see a table named "IMPORT INSPECTION IMAGES". Info Load does not create a traditional table. Rather it creates a link between a field value and the image -- which I think is stored in the special $Info table.

I haven't tried it, but you might try BINARY load of a qvw that contains INFO LOADed dat and see if you can use that as a data source.

-Rob

Not applicable
Author

Hi Rob,

Thank you for the quick response.

I've played around with the BINARY load and it seems to work well. My only concern is that I need to send incremental data which will require multiple BINARY loads which it seems isn't possible in QlikView.

What I do like about the solution is that I can send one QVW instead of multiple QVDs at a time. Also, the QVW takes the picture with it (using BUNDLE INFO LOAD).

Any ideas on how to load multiple QVW files into one new QVW using a BINARY load?

Kind regards,

Johan

rwunderlich
Partner Ambassador/MVP
Partner Ambassador/MVP

Start by binary loading the existing qvw. Then run the script to load the latest data. All tables should autoconcatenate. At the end, you'll have one qvw. The downside is you'll have to ftp that entire qvw every time.

-Rob

Not applicable
Author

Hi Rob,

Thank you for your further feedback.

So I won't be able to send incremental QVW files via FTP and then load them into a single QVW via multiple BINARY loads?

E.g.

binary ;

binary ;

SQL SELECT .... ;

Regards,

Johan

rwunderlich
Partner Ambassador/MVP
Partner Ambassador/MVP

Correct, you cannot load multiple using BINARY. You can have only one BINARY in a script.

-Rob

Not applicable
Author

Hi Rob,

Ok, thank you.

Is there possibly any other method of transferring the picture that you can think of? The QVW files become very big due to the pictures, so I won't be able to resend the whole QVW each evening.

Regards,

Johan