2017-09-11 3 views
0

J'ai cette chaîne:QlikView Wildcard dans une variable

Sum (if(left(SeasonCalc,3) = '171', Fsgantal*ShoesMen)) 

SeasonCalc est une période de vente pour l'année, à savoir la saison. Fsgantal est le nombre de chaussures vendues ShoesMen est de montrer seulement le nombre de chaussures vendues qui sont des chaussures pour hommes.

La saison est nommé comme 17S1 ... 17S2 ... 18S1 etc.

Ce que je veux faire est de changer la saison comme la période de vente des changements et faire en utilisant un Wildcard dans la variable. Est-ce possible?

Je sais qu'il est possible d'utiliser une variable pour définir la période de vente, nous le faisons déjà, mais je dois définir *ShoesMen ou *ShoesLadies etc. pour chaque chaîne.

Merci!

Répondre

1

Votre question n'est pas très claire, mais votre exemple, je pense que quelque chose comme cela pourrait fonctionner:

Sum(if(WildMatch(SeasonCalc, '*S1'), Fsgantal*ShoesMen)) 

WildMatch retourne vrai si elle correspond à l'un des une expression générique donnée comme paramètre .

+0

Cela fonctionne. Je l'ai changé à Sum (si (WildMatch (SeasonCalc, '171 *'), Fsgantal * ShoesMen)) '(désolé j'ai égaré le S et le 1). Je reçois une valeur correcte et va maintenant aller de l'avant et créer une variable à partir de '171 *' dans mon script. Cela devrait le faire et me donner plus de contrôle. –

1

Les jokers peuvent également être utilisés dans Set Analysis, également une meilleure performance:

Sum({<SeasonCalc={'*S1'}>}, Fsgantal*ShoesMen))