5 Replies Latest reply: Nov 3, 2017 8:41 AM by Nicolas Goussi RSS

    sélection dans graphique

    Nicolas Goussi

      Bonjour,

       

      Ayant été très satisfait des vos retours pour mon premier problème, je reposte ici ma deuxième problématique.

      J'ai un graphique avec plusieurs colonnes :

      * Dépôt : avec différentes valeurs

      * Article : avec différentes valeurs

       

      J'ai besoin de pouvoir extraire certains articles.

      Par exemple, je souhaiterai afficher les lignes contenant uniquement le CodAd=AGR05105 ou CodAD=AGR05118.

       

      Il y a bien sur d'autres code article à sortir.

       

      Je vous remercie pour l'aide.

        • Re: sélection dans graphique
          Martin Sorel

          Bonjour Nicolas,

          Je ne suis pas sur de bien comprendre la demande; la sélection que tu veux faire est elle statique (toujours les même valeurs) est elle faite en fonction de sélections utilisateurs?

          Si le but est que les utilisateurs puissent filtrer des articles,  il leur suffit de sélectionner les codes dans le tableau ou dans une liste de sélection pour filtrer les données. C'est le principe même du moteur associatif de Qlik.

           

          Si l'objectif est plutôt de filtrer des valeurs prédéfinies "en dur" , il faut passer par du Set Analysis qui permet de filtrer les résultats d'une fonction d’agrégation ou par des fonctions conditionnelles

           

          Martin

            • Re: sélection dans graphique
              Nicolas Goussi

              Bonjour Martin,

               

              Oui en fait je souhaite avoir une sélection statique de façon à préparer le tableau pour une autre personne.

              C'est là que je n'arrive pas à comprendre comment faire pour indiquer de ne prendre que certaines valeurs prédéfinie.

               

               

              Pour une seule j'y arrive avec la fonction if et en filtrant les lignes nulles ensuite mais lorsque je dois faire plus de une sélection, je suis bloqué.

                • Re: sélection dans graphique
                  Martin Sorel

                  Alors pour filtrer sur une dimension, on peut effectivement utiliser la fonction if. Lorsqu'on travaille avec des listes de valeurs, les fonctions de listes telles que Match() ou wildMatch() sont souvent très utiles, par exemple en dimension:

                  If(Match(CodAd,'AGR05105','AGR05118')>0,CodAd)

                   

                  La fonction Wildmatch permet d'utiliser des masques , par exemple:

                  If(WildMatch(CodAd,'AGR05*')>0,CodAd)

                  renverra les valeurs de CodAd qui commencent par AGR05.

                   

                  A noter que l'utilisation de fonction if() en dimension n'est pas terrible en terme de performances si les volumes de donnée sont importants.

                   

                  Pour filtrer au niveau des expressions du graphique, on utilise le set analysis ex:

                  Sum({<CodAd={'AGR05105','AGR05118'} >}  ChampValeur)

                   

                   

                  Martin

                  • Re: sélection dans graphique
                    Kevin Chevrier

                    Bonjour nicolas,

                     

                    Pour compléter le propos de Martin, si ton problème est que tu as beaucoup de codes, je te conseille de créer une variable avec tout tes codes à filtrer.

                     

                    Pour cela tu vas dans ctrl + alt + v puis tu lui donnes un nom. Exemple : vCode

                     

                    A l'intérieur tu mets tes codes :

                    GR05105, GR05118 etc.


                    Puis :

                    - si tu cherches à filtrer dans une expression, tu fais par exemple :

                    Sum({<CodAd={$(vCode)} >}  ChampValeur)


                    - si tu cherches à filtrer dans une dimension :

                    If(Match(CodAd,$(vCode))>0,CodAd)


                    Kevin

                • Re: sélection dans graphique
                  Nicolas Goussi

                  Super merci à tous les 2 !

                  Ca fonctionne comme je le souhaite.