Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
cancel
Showing results for 
Search instead for 
Did you mean: 
Krish2459_58
Creator II
Creator II

HIDE/SHOW

Hi ,

I have an inline table as

load * inline [
Expiration bands,Rank_Map
< 12 Months,1
12-24 Months,2
>24 Months,3
];

I am creating a logic to hide and show on a cell in  strainght table and it works only if we select only one Expiration bands.

If we select two Expiration bands the logic is not working showing balnk.

Requesting your help. 

lOGIC:

If(Max([Lease Expiration])-Now()<=360, if(GetFieldSelections([Expiration bands])='< 12 Months','BAD') ,
If(Max([Lease Expiration])-Now()>360 and Max([Lease Expiration])-Now()<=720, if(GetFieldSelections([Expiration bands])='12-24 Months','AVG'),
If(Max([Lease Expiration])-Now()>720 ,if(GetFieldSelections([Expiration bands])='>24 Months','GOOD'),
'NEUTRAL)))

 

Thanks..

Labels (4)
4 Replies
pedrohenriqueperna
Creator III
Creator III

Hi,
I believe this is happening because your logic considers a specific selection for the if condition. Whenever you select 2 or more fields it doesn't match the condition anymore.

You could try to play around with GetSelectedCount(field) to get the number of selections in a certain field and create conditions for whenever there are more than 1 field selected
Or
MVP
MVP

GetFieldSelections([Expiration bands]) will return all of the values selected in this field, as a string. If multiple values were selected, it won't match any individual value. You can use WildMatch() to work around this.

Krish2459_58
Creator II
Creator II
Author

Hi, Used the wildmatch() but still same issue.

If(Max([Lease Expiration])-Now()<=360, if(wildmatch([Expiration bands],'< 12 Months'),'BAD') ,
If(Max([Lease Expiration])-Now()>360 and Max([Lease Expiration])-Now()<=720, if(wildmatch([Expiration bands],'12-24 Months'),'AVG'),
If(Max([Lease Expiration])-Now()>720 ,if(wildmatch([Expiration bands],'>24 Months'),'GOOD'),
'NEUTRAL')))

 

Thanks..

Or
MVP
MVP

You're missing the wildcards for wildmatch. You'll want *StringHere*, otherwise it's the exact same problem as what you had before.