Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
datanibbler
Champion
Champion

Avoid errors due to duplicate field_names

Hi,

I have the following problem:

In a big loop, a table is created, let's say the name is [error_table] - then, within the loop (under certain circumstances) I create a second version of that, going

>>>>>>>>>>><<<<<<<<<<<<<<<

error_table_v2: LOAD *,  ... RESIDENT error_table;

DROP TABLE error_table;

RENAME TABLE error_table_v2 TO error_table;

>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<

=> So after that I have a table identical to the original [error_table], only with a few fields more - but that is just in the first iteration of the loop!

In the second iteration, of course the same code is executed again and due to that >> * <<, I get the error message that field_names must not be duplicated in a table.

<=> Explicitly naming only the fields from the original table in the LOAD would probably not be a solution because that way I'd lose the information I have generated in the first iteration?

Can anyone give me a hint on how to deal with this? Generating a new fieldname for every iteration of the loop would be quite cumbersome because I'd have to mix them all into one afterwards. Is there an easier way?

Thanks a lot!

Best regards,

DataNibbler

1 Solution

Accepted Solutions
datanibbler
Champion
Champion
Author

Hi Vineeth,

I don't yet quite understand you.

Anyway, for starters I'll try to structure my code a bit more - it is very  complex as there are several IF_THEN_clauses within the loop. And I'll build an info into the messagebox as to how many iterations there are going to be.

Know what, I'll just leave it - the entire thing is about correcting some errors in the underlying Excel_file, but the error is only in a handful of records and it's a lot more complicated to automatically fix those in QV than to just display the facts and quickly fix the errors in the base_file.

With the thought in mind that any successor of mine should be able to understand and maintain the code, I'll try to avoid that enormous unnecessary complexity and just have a messagebox telling >>whoever is running the script<< to fix those errors in the base_file and, if possible, tell him how to do it.

Thanks a lot anyway!

Best regards,

DataNibbler

View solution in original post

2 Replies
vinieme12
Champion III
Champion III

using Qualify() maybe?

Vineeth Pujari
If a post helps to resolve your issue, please accept it as a Solution.
datanibbler
Champion
Champion
Author

Hi Vineeth,

I don't yet quite understand you.

Anyway, for starters I'll try to structure my code a bit more - it is very  complex as there are several IF_THEN_clauses within the loop. And I'll build an info into the messagebox as to how many iterations there are going to be.

Know what, I'll just leave it - the entire thing is about correcting some errors in the underlying Excel_file, but the error is only in a handful of records and it's a lot more complicated to automatically fix those in QV than to just display the facts and quickly fix the errors in the base_file.

With the thought in mind that any successor of mine should be able to understand and maintain the code, I'll try to avoid that enormous unnecessary complexity and just have a messagebox telling >>whoever is running the script<< to fix those errors in the base_file and, if possible, tell him how to do it.

Thanks a lot anyway!

Best regards,

DataNibbler