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: 
Anonymous
Not applicable

Get list of QUALIFIED fields

Hi.

Is it possible to know wich fields are currently QUALIFIED ?

So, is there any system variable wich store the fields we actually want to QUALIFY.

i.e.:

UNQUALIFY *;

DATA:

QUALIFY name, society;

LOAD id, name, society FROM qvd_file;

Any treatment {

     here, I want to know how my field are called; so wich ones have a prefix table name.

};

1 Solution

Accepted Solutions
Anil_Babu_Samineni

Check in data model which field are extending to Table like TableName.FieldName ...

Please add me Anil_Babu_Samineni to interact faster when reply back. Speak low think High.

Before develop something, think If placed (The Right information | To the right people | At the Right time | In the Right place | With the Right context)

View solution in original post

3 Replies
Anil_Babu_Samineni

Check in data model which field are extending to Table like TableName.FieldName ...

Please add me Anil_Babu_Samineni to interact faster when reply back. Speak low think High.

Before develop something, think If placed (The Right information | To the right people | At the Right time | In the Right place | With the Right context)
rwunderlich
Partner Ambassador/MVP
Partner Ambassador/MVP

I don't think there is any way in script to detect what the current qualify is, or to determine what has been qualified already.

-Rob

Anonymous
Not applicable
Author

Thanks for your suggestion.

Effectively, I've make an information table, browsing the data model, using the functions NoOfTables() and NoOfFields().

It's not very perfect, because it may have some errors, as a fieldName wish has been renamed; but I can't do better.

So:

DATA:

LOAD '' as tableName, '' as fieldName, '' as isQualified

autogenerate(0);

for i = 0 to NoOfTables() - 1

    for j = 1 to NoOfFields(TableName($(i)))

          let vTableName = TableName($(i));

          let vFieldName = FieldName($(j), TableName($(i)));

          let vIsQualified = if (SubField(vFieldName, '.', 1) = vTableName, true(), false());


          LOAD '$(vTableName)' as tableName, '$(vFieldName)' as fieldName, '$(vIsQualified)' as isQualified

          autogenerate(1);

    next j;

next i;

Regards.