Skip to main content
Woohoo! Qlik Community has won “Best in Class Community” in the 2024 Khoros Kudos awards!
Announcements
Nov. 20th, Qlik Insider - Lakehouses: Driving the Future of Data & AI - PICK A SESSION
cancel
Showing results for 
Search instead for 
Did you mean: 
papabaer
Contributor
Contributor

Expression using variables not working

I have the following variables defined:

vNomsPartial defined as: if(Availability='Partial', Nomenclature)

vNomsNone defined as: if(Availability='None', Nomenclature)

vNomsFull defined as: if(Availability='Full', Nomenclature)

Any given row in the table could have any number of occurrences of a particular Nomenclature with the Availability in any of the three states.  Nomenclature ABC could occur three times, for example, with each Availability.

I'm trying to fill a field based on the existence of rows in the various states.

For example, if Nomenclature ABC had both a 'Full' and a 'Partial' Availability, then I'd want to output 'Partial' for this particular Nomenclature.

When I try the following expression in a list box - to see what the variables are returning, I do get the expected list of nomenclatures - those for which there exists the condition of Availability = 'None':

= if(match(Nomenclature, $(vNomsNone)) , Nomenclature)

However, the wheels come off when I try to do anything more - like ensure that ALL instances are ONLY None.  The following does not return any rows:

= if(match(Nomenclature, $(vNomsNone)) AND not match(Nomenclature, $(vNomsPartial)), Nomenclature)

I just don't see how the 1st can work, and not the 2nd.

Any help out there?

thanks

 

1 Solution

Accepted Solutions
Akhil_Reddy
Contributor III
Contributor III

I think don't use AND for comparing same field nomenclature. use OR instead of AND. 

View solution in original post

2 Replies
papabaer
Contributor
Contributor
Author

Sorry - Small clarification -

I missed the "Not" in front of the last match...

And, I do know there are rows that should show up with that 2nd logic - i.e., there ARE entries with nomenclatures that have only Availability = 'None'.  (In fact, the final will need to have = None, and <> Partial, and <> Full actually...  but I can't even get that 2nd one to work with only the one added constraint...)

So I assume what I'm trying either isn't allowed (can't imagine in this case...) or I'm just using the wrong syntax (hoping this is the case...)

 

Akhil_Reddy
Contributor III
Contributor III

I think don't use AND for comparing same field nomenclature. use OR instead of AND.