Qlik Community

Ask a Question

App Development

Discussion board where members can learn more about Qlik Sense App Development and Usage.

Announcements
Join us for a live Q&A! September 21, 10 AM ET - Onboarding Fast in Qlik Sense SaaS! REGISTER
cancel
Showing results for 
Search instead for 
Did you mean: 
Applicable88
Creator III
Creator III

Get return for wildmatch search but not in a set analysis

Hello,

something like this never occured to me before.

I want to filter ONE Column called "Systemstatus" with status abbreviation like this and there are many combination possible:

FREE OPEN  PRNT DLVR

They are all in the same column. 

I used these kind of set analysis for this:

count({<Systemstatus={"*FREE*","*OPEN*"}>}Ordernumber)

I also tried with singlequotes:

count({<Systemstatus={'*FREE*', '*OPEN*'}>}Ordernumber)

I don't filter anything at all. 

but the same structure via wildmatch works in a variable combination out:

=if(vFormel='0',if(wildmatch(Systemstatus,'*FREE*',*PRNT*'),Systemstatus),if(wildmatch(Systemstatus,'*DLVR*'),

Systemstatus))

 

There are  limitation with the if-statements, since its "just" a dimension. 

with the count I can add to a pick match function and switch between to different counts , with a 1 and 0 variable and filter accordingly two different things. 

So I would like to know why the set analysis cannot filter the same as the wildmatch function here. I used it many times before, but what can be the interference here? 

I hope someone knows a solution.

Thank you.

Best. 

2 Solutions

Accepted Solutions
Taoufiq_Zarra

@Applicable88 

you mean an OR in the same field? Have you tested this possibility?

 

=count({<Systemstatus={"*FREE*"}>+<Systemstatus={"*OPEN*"}>}Ordernumber)

 

for example this sample gives

Taoufiq_Zarra_0-1613398717239.png

 

Regards,
Taoufiq ZARRA

"Please LIKE posts and "Accept as Solution" if the provided solution is helpful "

(you can mark up to 3 "solutions") 😉

View solution in original post

marcus_sommer
MVP & Luminary
MVP & Luminary

The specified fields within a set analysis are associated per AND mode while the n field-values respectively search-strings to a field are set in OR mode. To get an AND association between field-values you need to apply multiple set analysis statements which are connected to each other with a suitable operator like in the example from Toufic_Zara which showed an OR linking. To get an AND linking change it to:

=count({<Systemstatus={"*FREE*"}>*<Systemstatus={"*OPEN*"}>}Ordernumber)

- Marcus

View solution in original post

4 Replies
Taoufiq_Zarra

@Applicable88 

you mean an OR in the same field? Have you tested this possibility?

 

=count({<Systemstatus={"*FREE*"}>+<Systemstatus={"*OPEN*"}>}Ordernumber)

 

for example this sample gives

Taoufiq_Zarra_0-1613398717239.png

 

Regards,
Taoufiq ZARRA

"Please LIKE posts and "Accept as Solution" if the provided solution is helpful "

(you can mark up to 3 "solutions") 😉

View solution in original post

Applicable88
Creator III
Creator III
Author

Thanks at @Taoufiq_Zarra .

 

But rather like an AND:

There are many abbreviation possible. More than wrote there.

For example :

1.

FREE OPEN  PRNT DLVR

only count when there is FREE and Open inside. 

I thought this one:

count({<Systemstatus={'*FREE*', '*OPEN*'}>}Ordernumber)

2.

FREE CLSE  PRNT DLVR

only count when Systemstatus has CLSE and DLVR inside.

like this:

count({<Systemstatus={'*CLSE*', '*DLVR*'}>}Ordernumber)

So its not an OR actually, but still its not filtering right at all. 

 

I put it in a variable and pickmatch function to switch a dynamic table with a switch: 

=Pick(Match($(vVariable), '0', '1'), count({<Systemstatus={'*FREE*', '*OPEN*'}>}Ordernumber),count({<Systemstatus={'*CLSE*', '*DLVR*'}>}Ordernumber)

Is something wrong with that set analysis that I build?

 

 

 

 

marcus_sommer
MVP & Luminary
MVP & Luminary

The specified fields within a set analysis are associated per AND mode while the n field-values respectively search-strings to a field are set in OR mode. To get an AND association between field-values you need to apply multiple set analysis statements which are connected to each other with a suitable operator like in the example from Toufic_Zara which showed an OR linking. To get an AND linking change it to:

=count({<Systemstatus={"*FREE*"}>*<Systemstatus={"*OPEN*"}>}Ordernumber)

- Marcus

View solution in original post

Applicable88
Creator III
Creator III
Author

Thank you @marcus_sommer @Taoufiq_Zarra ,

what a fault in reasoning of mine! Of course I cannot put it like this:

count({<Systemstatus={"*FREE*","*OPEN*"}>}Ordernumber)

Since that following 2 structures are basically a field on their own:

FREE OPEN  PRNT DLVR

FREE CLSE  PRNT DLVR

 

I need to use the >*< for subset or the OR -operator for filtering what I want. 

Thank you both so much.