7 Replies Latest reply: Jan 24, 2018 6:10 AM by Chadlia Gabsi RSS

    Count with set analysis

    Chadlia Gabsi

      Bonjour,

      pour arriver à calculer les présences physiques je dois trouver l’écart entre n et n-1 J'ai réussi à le calculer. Après je dois calculer le nombre des écarts  qui égale -1 et à 1  de l'année sélectionnée.

      j'ai utilisé l'expression suivante mais ca ne fonctionne toujours pas.

      Expression:

      count ( {$<ANNEE={$(=max(ANNEE))}

      if(

      If(Sum({$<ANNEE={$(=max(ANNEE-1))}, MOTIF = {'*'}-{'Congé parental'}>} ((Aggr(Count({$<ANNEE={$(=max(ANNEE-1))}, MOTIF = {'*'}-{'Congé parental'}>}

      NOMBRE_JOURS_TRAVAILLES),

      ANNEE, MOIS, MOTIF, TEMPS_TRAVAIL)/Day(MonthEnd(Date(Date#(MOIS, 'MMM'))))) * TEMPS_TRAVAIL)/100)/12 <> 0, 1, 0)

      -

      If(Sum({$<ANNEE={$(=max(ANNEE))}, MOTIF = {'*'}-{'Congé parental'}>} ((Aggr(Count({$<ANNEE={$(=max(ANNEE))}, MOTIF = {'*'}-{'Congé parental'}>}

      NOMBRE_JOURS_TRAVAILLES),

      ANNEE, MOIS, MOTIF, TEMPS_TRAVAIL)/Day(MonthEnd(Date(Date#(MOIS, 'MMM'))))) * TEMPS_TRAVAIL)/100)/12 <> 0, 1, 0)

      = -1 ,

       

      MATRICULE_AGENT))

       

      test.png

        • Re: Count with set analysis
          bruno bertels

          Bonjour

           

          Peut être rien à voir mais le premier { de ton expression ne semble pas avoir de } de sortie dans ta formule ci dessous

           

          Peut être essayer de le mettre ici MATRICULE_AGENT) } )

          Capture.PNG

            • Re: Count with set analysis
              Chadlia Gabsi

              Bonjour Bruno,

              J'ai pas pu la fermer aprés matricule_agent par contre je l'ai fermé en haut et toujours pas de résultat

              count({$<ANNEE={$(=max(ANNEE))}> }

               

              Par contre j'ai essayé cette expression mais elle me donne aussi des personnes non concernées.

               

              count(distinct(aggr(if (If(Sum({$<ANNEE={$(=max(ANNEE-1))}, MOTIF = {'*'}-{'Congé parental'}>} ((Aggr(Count({$<ANNEE={$(=max(ANNEE-1))}, MOTIF = {'*'}-{'Congé parental'}>}

              NOMBRE_JOURS_TRAVAILLES),

              ANNEE, MOIS, MOTIF, TEMPS_TRAVAIL)/30) * TEMPS_TRAVAIL)/100)/12 <> 0, 1, 0)

              -

              If(Sum({$<ANNEE={$(=max(ANNEE))}, MOTIF = {'*'}-{'Congé parental'}>} ((Aggr(Count({$<ANNEE={$(=max(ANNEE))}, MOTIF = {'*'}-{'Congé parental'}>}

              NOMBRE_JOURS_TRAVAILLES),

              ANNEE, MOIS, MOTIF, TEMPS_TRAVAIL)/30) * TEMPS_TRAVAIL)/100)/12 <> 0, 1, 0)

              = -1 ,MATRICULE_AGENT),ANNEE,MATRICULE_AGENT)

              ))

            • Re: Count with set analysis
              Sébastien Fatoux

              Bonjour,

               

              Vu que dans tes IF tu veux simplement vérifier si c'est <> 0, tu peux simplifier ton expression en supprimant toutes cette partie /Day(MonthEnd(Date(Date#(MOIS, 'MMM'))))) * TEMPS_TRAVAIL)/100)/12

              Tu n'auras un 0 que si NOMBRE_JOURS_TRAVAILLES ou TEMPS_TRAVAIL est à 0, et je pense que tu n'auras pas TEMPS_TRAVAIL à 0 si tu as NOMBRE_JOURS_TRAVAILLES <> 0.

               

              Essaye ça :

               

              Nombre de sortie:

              = Sum( Aggr(
              If(
              If(Sum({$<ANNEE={$(=max(ANNEE))}, MOTIF = {"*"}-{'Congé parental'}>} Aggr(Count({$<ANNEE={$(=max(ANNEE))}, MOTIF = {"*"}-{'Congé parental'}>} NOMBRE_JOURS_TRAVAILLES), ANNEE, MOIS, MATRICULE_AGENT)) <> 0, 1, 0)
              -
              If(Sum({$<ANNEE={$(=max(ANNEE-1))}, MOTIF = {"*"}-{'Congé parental'}>} Aggr(Count({$<ANNEE={$(=max(ANNEE-1))}, MOTIF = {"*"}-{'Congé parental'}>} NOMBRE_JOURS_TRAVAILLES), ANNEE, MOIS, MATRICULE_AGENT)) <> 0, 1, 0)
              = -1
              ,1
              ,0
              )
              ,
              MATRICULE_AGENT)
              )

               

              Nombre d'entrée:

               

              = Sum( Aggr(
              If(
              If(Sum({$<ANNEE={$(=max(ANNEE))}, MOTIF = {"*"}-{'Congé parental'}>} Aggr(Count({$<ANNEE={$(=max(ANNEE))}, MOTIF = {"*"}-{'Congé parental'}>} NOMBRE_JOURS_TRAVAILLES), ANNEE, MOIS, MATRICULE_AGENT)) <> 0, 1, 0)
              -
              If(Sum({$<ANNEE={$(=max(ANNEE-1))}, MOTIF = {"*"}-{'Congé parental'}>} Aggr(Count({$<ANNEE={$(=max(ANNEE-1))}, MOTIF = {"*"}-{'Congé parental'}>} NOMBRE_JOURS_TRAVAILLES), ANNEE, MOIS, MATRICULE_AGENT)) <> 0, 1, 0)
              = 1
              ,1
              ,0
              )
              ,
              MATRICULE_AGENT)
              )

                • Re: Count with set analysis
                  Chadlia Gabsi

                  bonjour Sébastien,

                  pour les sorties donnent toujours 0 j'ai essayé à inversé n-1 et n pareillement toujours 0

                  = Sum( Aggr(

                  If(

                  If(Sum({$<ANNEE={$(=max(ANNEE-1))}, MOTIF = {"*"}-{'Congé parental'}>} Aggr(Count({$<ANNEE={$(=max(ANNEE-1))}, MOTIF = {"*"}-{'Congé parental'}>} NOMBRE_JOURS_TRAVAILLES), ANNEE, MOIS, MATRICULE_AGENT)) <> 0, 1, 0)

                  - If(Sum({$<ANNEE={$(=max(ANNEE))}, MOTIF = {"*"}-{'Congé parental'}>} Aggr(Count({$<ANNEE={$(=max(ANNEE))}, MOTIF = {"*"}-{'Congé parental'}>} NOMBRE_JOURS_TRAVAILLES), ANNEE, MOIS, MATRICULE_AGENT)) <> 0, 1, 0)

                  = 1,1,0),MATRICULE_AGENT))