Skip to main content
Announcements
Introducing a new Enhanced File Management feature in Qlik Cloud! GET THE DETAILS!
cancel
Showing results for 
Search instead for 
Did you mean: 
qlikview979
Specialist
Specialist

Recent qvd

Hi Experts,

please find the my  attached  source files.

I have  source1 folder Three Qvds  names like

2016_01_01.qvd

2016_01_02.qvd

2016_01_03.qvd

qvd creation time is 11:10:10 AM

and

source2 folder Three Qvds names like

2016_01_01.qvd

2016_01_04.qvd

2016_01_05.qvd

Qvd creation time is 11:15:15 AM

then i have loaded all qvd's into qlikview .Check here  2016_01_01.qvd name having 2 qvd's  ..

coming to my requirement

i need latest with same  name 2016_01_01.qvd  from source2

Output:  i want 2016_01_01.qvd   from source2 because this is the latest qvd based on timestamp.

45 Replies
Kushal_Chawda

Couple of changes

FOR Each source1 in FileList('H:\Personal\TOP5\source1\QVDS\*.qvd')

source1:

load FileName('$(source1)') as filename,

'$(source1)' as filename1,

FileTime('$(source1)') as FileTime1 AutoGenerate 1;

next source1

FOR Each source2 in FileList('H:\Personal\TOP5\source2\QVDS\*.qvd')

source2:

load FileName('$(source2)') as filename,

'$(source2)' as filename2,

FileTime('$(source2)') as FileTime2 AutoGenerate 1;

next source2

Kushal_Chawda

Also can you show me, what are the Values you are getting in filename1 and filename2 fields

qlikview979
Specialist
Specialist
Author

2016-05-03_15-38-10.png

qlikview979
Specialist
Specialist
Author

Hi Kushal,

I have made the changes Now also i am getting same problem  like first screen shot.


Regards,

Mahesh.

qlikview979
Specialist
Specialist
Author

Hi Experts,

can any one give solution for my requirement

Regards,

Mahesh

zhadrakas
Specialist II
Specialist II

Hello mahesh,

please upload your qvw.

Kushal_Chawda

what is the error?

qlikview979
Specialist
Specialist
Author

Hi Kushal,

I am using  your script only with modifications,

FOR Each source1 in FileList('H:\Personal\TOP5\source1\QVDS\*.qvd')

source1:

load FileName('$(source1)') as filename,

'$(source1)' as filename1,

FileTime('$(source1)') as FileTime1 AutoGenerate 1;

next source1

FOR Each source2 in FileList('H:\Personal\TOP5\source2\QVDS\*.qvd')

source2:

load FileName('$(source2)') as filename,

'$(source2)' as filename2,

FileTime('$(source2)') as FileTime2 AutoGenerate 1;

next source2

New:

noconcatenate

LOAD *

Resident source1;

join(New)

LOAD *

Resident source2;

Drop Tables source1, source2;

Final:

noconcatenate

LOAD

(if(FileTime2 > FileTime1 or isnull(FileTime1),FileTime2,

    if(FileTime1 > FileTime2 or isnull(FileTime2),FileTime1)))as filename,

  

    Rangemax(FileTime2,FileTime1) as FileTime

Resident New;

drop table New;

AllQVD:

LOAD 1 as Junk

Autogenerate 1;

For i=1 to FieldValueCount('filename')

let vFileName = FieldValue('filename',$(i));

Concatenate(AllQVD)

LOAD*,

    '$(vFileName)' as filename

FROM $(vFileName)(Qvd);

Next i

drop field Junk;

Store AllQVD into FinalQVD.qvd;

2016-05-04_11-37-02.png

Kushal_Chawda

change this if statement. You are taking filetime instead of filename.

(if(FileTime2 > FileTime1 or isnull(FileTime1),filenam1,

    if(FileTime1 > FileTime2 or isnull(FileTime2),filename2)))as filename,

(if(FileTime2 > FileTime1 or isnull(FileTime1),filenam2,

    if(FileTime1 > FileTime2 or isnull(FileTime2),filename1)))as filename,

update: Corrected if

qlikview979
Specialist
Specialist
Author

Hi Kushal,

Now Showing this error,

2016-05-04_11-37-02.png