9 Replies Latest reply: Nov 22, 2016 3:09 AM by Emilie CAMBET RSS

    Limiter l'affichage d'un indicateur

    Emilie CAMBET

      Bonjour,

       

      Je dois mettre en place une application QlikView à destination de comités d'entreprise.

      Pour cela, je dois limiter la visualisation des objets.

       

      La maille la plus fine de mon script est le salarié.

      Je souhaite empêcher l'objet d'afficher le résultat quand il y a moins de 3 salariés impactés.

      Est ce possible?

       

      En vous remerciant,

      Cordialement

      Emilie

        • Re: Limiter l'affichage d'un indicateur
          bruno bertels

          Bonjour Emilie

           

          Bien que je pratique plus sur QlikSense que sur Qlikview il est tout a fait possible de limiter des calculs suivant un nombre de salariés impactés par ce calcul.

           

          Dans les objets sous qlikview tu as des options de limitations

           

          Est ce que tu peux détailler un peu plus ta questions soit en donnant ta formule de calcul que tu veux limiter

          soit en mettant un exemple de fichier

           

          Bruno

            • Re: Limiter l'affichage d'un indicateur
              Emilie CAMBET

              Bonjour Bruno,

               

              Merci pour ta réponse.

              Je t'ai mis un fichier .qvw en pièce jointe, avec deux des objets que je souhaiterai limiter.

               

              Il s'agit ici de données sur la rémunération à destination des membres du comité d'entreprise.

              Il ne doivent pas avoir ou déduire d'information individuelles.

               

              Ainsi je souhaiterai que l'information ne soit pas visible lorsque mon objet concerne 5 personnes et moins.

               

              Par exemple, dans l'objet salaire moyen par âge, certaines tranches d'âge ne comportent qu'un seul salarié.

              En l'état, il sera facile pour les délégués du personne de savoir de qui il s'agit.

               

              Merci beaucoup

              Emilie

                • Re: Limiter l'affichage d'un indicateur
                  bruno bertels

                  Bonjour Emilie

                  Merci pour ton fichier, en revanche je ne peux pas l'ouvrir car je n'ai que la version gratuite de qlikview qui ne permet d'ouvrir que ses propres fichiers créés ou les exemples et par d'autres fichiers qvw importés.

                  Je pensais plus a un extrait de base excel avec quelques données et tes formules de calcul , pour reproduire çà sous Qliksense

                   

                  Bruno

                    • Re: Limiter l'affichage d'un indicateur
                      Emilie CAMBET

                      Bonjour Bruno,

                       

                      Ce n'est pas moi qui ai effectué le script qui est assez compliqué.

                      Les données de ces objets viennent de plusieurs fichiers excel et sont retravaillés dans un qvw ETL.

                       

                      Voici une capture d'écran de l'application que je t'ai envoyé:

                      Sans titre.jpg

                       

                      La formule Frais du personnel dans l'objet graphique est la suivante:

                      =Sum({<CUMUL_TYPE={'Brut','Constributions patronales'}, EXERCICE=>}CUMUL_MENSUEL_VALEUR)

                       

                      la formule dans l'objet Salaire moyen par âge est la suivante:

                      =round(avg({<SEXE={'F'},CUMUL_MENSUEL={'Salaire Brut'},MOIS={"<=$(=max(MOIS))"}>}CUMUL_MENSUEL_VALEUR)

                      /sum({<SEXE={'F'},FDM={'1'},EXERCICE={$(=max(EXERCICE))},AN_MOIS={$(=max(AN_MOIS))} >} EFF_PRESENT),0.01)

                       

                      Est ce que cela te suffit?

                       

                      Merci beaucoup,

                      Emilie

                    • Re: Limiter l'affichage d'un indicateur
                      Thomas Moutault

                      Bonjour Emilie,

                       

                      Au niveau des expressions tu peux utiliser cela :

                      exemple concernant les Femmes

                      =if(count(DISTINCT {<SEXE={'F'}>} MATRICULE)>=5 ,

                      round(avg({<SEXE={'F'},CUMUL_MENSUEL={'Salaire Brut'},MOIS={"<=$(=max(MOIS))"}>}CUMUL_MENSUEL_VALEUR)

                      /sum({<SEXE={'F'},FDM={'1'},EXERCICE={$(=max(EXERCICE))},AN_MOIS={$(=max(AN_MOIS))} >} EFF_PRESENT),0.01)

                      )

                       

                      si tu souhaites rendre l'objet complétement invisible tu peux aller dans propriété->Disposition et utiliser l'affichage conditionnel :

                      limit.png

                      • Re: Limiter l'affichage d'un indicateur
                        bruno bertels

                        Bonjour

                         

                        comme je ne peux ouvrir les fichier qvw

                         

                        je t'ai fait un petit exemple de ce qu'il est possible de faire avec

                        quelques données fictives pour que tu puisses voir la logique

                         

                        tranche : classe d'age

                        count(employé) compte le nombre de salarié

                         

                        1er formule

                        if(aggr(count(employé),tranche)<=5, 0, count(employé))

                        permet de compter les employé si leur nombre dans une tranche d'age et

                        supérieur ou inférieur à 5 sinon affiche 0

                         

                        2eme formule

                        if(aggr(count(employé),tranche)<=5,'non dispo',avg(salaire))

                        t'affiche donc le salaire moyen par tranche si le nombre de salarié

                        d'une tranche est supérieur à 5

                         

                         

                         

                        En espérant que ça t'aidera

                    • Re: Limiter l'affichage d'un indicateur
                      Emilie CAMBET

                      Merci beaucoup à tous les deux!

                       

                      Vos formules fonctionnent bien et les données pour moins de 5 salariés n'apparaissent pas!

                       

                      J'ai bien la notion 'Non dispo' qui s'affiche dans les tableaux à la place des données.

                      Par contre, concernant les objets type Histogramme, y a t'il une astuce pour qu'on ait une information comme quoi il y a des données pour une tranche, mais qui ne peuvent pas être communiquées?

                       

                      Merci beaucoup!

                      Emilie

                        • Re: Limiter l'affichage d'un indicateur
                          Sébastien Fatoux

                          Bonjour Emilie,

                           

                          Vous pouvez mettre une valeur numérique par défaut à la place de 'non dispo' pour qu'une barre soit affichée et pour cette barre modifié la couleur d'affichage et caché la valeur(valeur par défaut).

                           

                          En sélectionnant uniquement 2016 et en mettant la limite d'effectif à plus de 2 , j'obtient le résultat suivant :

                          2016-11-13 22_43_28-QlikView.png

                           

                          Je vous joins votre QVW modifié comme suit:

                          • Ajout de la dimension SEXE
                          • Conserver une seul expression pour l'affichage des barres
                          • Ajout d'une expression qui calcul l'Effectif pour chaque combinaison
                            min(aggr(Sum({<FDM={'1'},EXERCICE={$(=max(EXERCICE))},AN_MOIS={$(=max(AN_MOIS))} >} EFF_PRESENT),TRANCHE_AGE, SEXE_LIB))
                            • Cette valeur est ajoutée dans l'info bulle
                            • Cette valeur est utilisée comme condition
                          • Modification de la valeur du salaire moyen par une valeur par défaut si l'effectif minimum n'est pas atteint par une valeur par défaut
                          • Modification de la couleur d'affichage de la valeur si l'effectif minimum n'est pas atteint
                          • Modification de la couleur de la barre si l'effectif minimum n'est pas atteint

                           

                           

                          En vérifiant votre expression pour calculer le salaire moyen, il y a plusieurs chose que je trouve étrange:

                          • Vous faite la moyenne des salaires brut de tous les matricule pour tous les mois plus petit ou égale au mois sélectionné sans tenir compte de l'exercice MAX (au cas ou plusieurs exercices sont sélectionnés).???
                          • Vous divisez votre moyenne par l'effectif présent pour le mois et l'exercice sélectionné ???

                           

                          Si vous voulez calculer le salaire moyen de tout vos employé depuis le début de l'année, il faut calculer le salaire moyen par matricule, puis calculer le salaire moyen de cet ensemble :

                           

                          avg(aggr(avg({<CUMUL_MENSUEL={'Salaire Brut'},EXERCICE={$(=max(EXERCICE))},MOIS={"<=$(=max(MOIS))"}>}CUMUL_MENSUEL_VALEUR), MATRICULE, TRANCHE_AGE, SEXE_LIB))

                           

                           

                          ATTENTION, les AGGR doivent au minimum avoir la même granularité que l'ensemble de données définit par le graphe (il doit contenir les dimensions du graphe). Que cela soit pour l'expression de l'Effectif ou du Salaire.

                        • Re: Limiter l'affichage d'un indicateur
                          Emilie CAMBET

                          Bonjour,

                           

                          Je vous remercie beaucoup pour votre retour.

                          Je suis désolée pour la réponse tardive, j'étais en congés la semaine dernière

                           

                          Je ne connaissais pas cette possibilité de créer une expression pour l'utiliser comme condition, merci beaucoup.

                           

                          Concernant ma formule pour le salaire moyen:

                          - Je fais effectivement la moyenne des salaires bruts sans tenir compte de l'exercice MAX car mon client ne veut pouvoir sélectionner qu'un seul exercice à la fois

                          - Concernant la division par l'effectif présent, il s'agit effectivement d'une erreur de copier/coller

                           

                          Je vous remercie beaucoup pour votre aide

                           

                          Emilie