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: 
datanibbler
Champion
Champion

Large loop - keywords five tabs apart


HI,

I always split my script into several parts, one part of the script on one tab.

Now I have one large loop that encompasses two subroutines and several more loops

=> To the effect that the keywords "FROM ..." and "NEXT" are five tabs apart

There should actually be no big issue about that - I can easily put "NEXT [Counter]" instead of just "NEXT" and it should be clear for QlikView what is what

<=> It doesn't work: I have tested what is to be my meta_loop on its own - it parses through an inline_table with six sheet_names which  correspond to the names of worksheets in an Excel_workbook.

<=> Still, when I activate this meta_loop around all the other stuff - the first time round, my counter_variable (which is not identical to
           any of the "inner" ones, I have named them all differently) is populated all right and so is the variable for the worksheet I'm
           currently processing, but after the first iteration is completed, the variable has a NULL value ...

Can anyone help me there?

Thanks a lot!

Best regards,

DataNibbler

13 Replies
datanibbler
Champion
Champion
Author

Hi,

that seems to have been the problem.

Now the script starts the second iteration - but then there's an issue: I am getting a >Field not found< at some point when actually that field should certainly be there - it is in every list.

=> How can I look at the contents of a file in RAM at a specific point in the process of my script without taking the entire loop apart?

Colin-Albert

You could add a qualified load to a test table to see the contents of a table at a particular point in your script.

e.g.

if vLoop = N

      qualify * ;

     TestTable:

     load * resident TableX ;

      unqualify * ;

endif;  // if Vloop = N

You could add a where clause or first N  if you only want a few records included

marcus_sommer

A look into the RAM is more complicated and will need significantly more time as to debug within qv - the suggestions from http://community.qlik.com/people/Colin_Albert about using several trace-statements and using from dummy-tables created per qualify-statement are good - I use the same approach if I can't find my mistakes ...

- Marcus

datanibbler
Champion
Champion
Author

Hi all,

thanks! I made it. Instead of using the variable, which apparently didn't work for some reason, I used the same PEEK() function inside the meta_subroutine that I had used the first time round to feed one of the six entries of my inline_table into a variable.

I guess that is solved now. A good day's work.

Best regards,

DataNibbler