Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour,
Voila ce que j'ai :
Une première dimension temps, ensuite une dimension =if(...) qui contient une liste de source,
puis en expressions, la distribution max on, off, pour cent de on et pour-cent de off.
Petit problème, comme on peut le voir pour l'heure 0, la liste des sources ne s'affiche pas... Si j'en selectionne une son nom apparait, mais plusieurs j'obtiens le fameux : -
Que dois-je faire, je suis bloqué la ?
Cordialement.
Oups désolé pour la mésentente, j'ai mis les underscore pour cacher mes champs (close de confidentialité obligé).
Mon problème était tout béte en faite... Mon expression prend le max des sum des Neptune par heures. Alors que dans mon tableau j'affiche déja ses donnée par heures, en passant par un affichage par mois cela fonctionnait.
Du coup, maintenant je fais simplement un sum() et la donnée se précise en fonction de la dimension temps.
Je ne sais pas si je suis térs clair ^^ Mais merci a vous, expliquer mon probléme m'a aider a le comprendre
Ça peut dépendre de ce que vous avez dans les paramètres de la fonction If(). Vous devez utiliser des agrégations ici, pas des références des champs directs.
https://community.qlik.com/blogs/qlikviewdesignblog/2014/06/16/use-the-aggregation-functions
HIC
bonjour et merci de votre réponse,
Ce n'est pas une fonction d’agrégation, j'ai =if (nameH like 'Neptune_*', nameH).
Comment puis-je faire dans ce cas pour avoir pour chaque heure la liste de mes nameH ?
edit :
J'ai changé un peu le positionnement des colonnes / lignes.
Ma dimension avec =if (nameH like 'Neptune_*', nameH) affiche maintenant ma liste de nameH, mais les valeurs sont toutes a null.
Pourtant si je met la formule dans une liste box a coté,et que je selectionne dans cette listbox j'ai des valeurs..
Je dois voir vos données pour répondre. Si je fais la même chose avec mes données générées, il fonctionne très bien.
(Ma réponse précédente n'était pas tout à fait correcte. Il aurait été pertinent si l'expression avait été une mesure et pas une dimension.)
HIC
Voici un screen de la requête qui reprend les données utilisées dans mon chart :
Lors du chargement j'effectue la même requête (sans les conditions) j'ai donc un tableau avec toutes mes infos comme présenter ci dessus dans qlikview
Ma dimension
=if (hc_nameH='Neptune_*' and metric_nameH = '____' and (service_descriptionH = 'NEP-____INPUTRATE' OR service_descriptionH = 'NEP-____-INPUTRATE' OR service_descriptionH like 'NEP-____-*INPUTRATE')
,host_nameH)
et mes deux expressions
=round( max( aggr( sum({<metric_nameH = {_____}, service_descriptionH = {'NEP-____INPUTRATE', 'NEP-____-INPUTRATE'}>}avg_valueH) ,dtimeH) ),0.01)
et
=round( max( aggr( sum({<metric_nameH = {_____}, service_descriptionH = {'NEP-_____-INPUTRATE'}>}avg_valueH) ,dtimeH) ),0.01)
La je séche un peu, encore merci de votre aide !
Bonjour,
Je ne sais pas si je comprend bien tout votre code mais si je subbodore bien :
On ne peut pas utiliser de joker directement dans une comparaison.
=> hc_nameH='Neptune_*' ne sera pas vrai pour ce qui commence 'Neptune_'.
=> idem pour le _ s'il est sensé remplacer 1 caractère.
En script de qlik if faut utiliser la fonction WildMatch() pour faire cela.
Exemple : if(WildMatch(NameField,'*pierre*'), 1, 0) renvoie 1 si NameField contient pierre, sinon renvoie 0.
NB : WildMatch n'est pas sensible à la casse des caractères. Je vous conseille de consulter l'aide pour cette fonction qui offre d'autres possibilités.
Cordialement,
Xavier.
Idem, j'ai un doute sur la syntaxe des expressions:
=round( max( aggr( sum({<metric_nameH = {_____}, service_descriptionH = {'NEP-____INPUTRATE', 'NEP-____-INPUTRATE'}>}avg_valueH) ,dtimeH) ),0.01)
En rouge : que voulez-vous obtenir ?
En bleu : est-ce que le underscore _ est utilisé comme un joker ?
Xavier.
Oups désolé pour la mésentente, j'ai mis les underscore pour cacher mes champs (close de confidentialité obligé).
Mon problème était tout béte en faite... Mon expression prend le max des sum des Neptune par heures. Alors que dans mon tableau j'affiche déja ses donnée par heures, en passant par un affichage par mois cela fonctionnait.
Du coup, maintenant je fais simplement un sum() et la donnée se précise en fonction de la dimension temps.
Je ne sais pas si je suis térs clair ^^ Mais merci a vous, expliquer mon probléme m'a aider a le comprendre