12 Replies Latest reply: Apr 27, 2017 2:41 AM by Chadlia Gabsi RSS

    Somme Avec deux conditions

    Chadlia Gabsi

      Bonjour à tous,

       

      J'ai voulu calculé la somme de deux montants avec deux conditions et toujours j'obtiens l'ancien résultat malgré il y a aucun erreur.

      Mon but de calculer la somme avec deux différentes conditions donc Si le CODE_FaCTURE <>0 alors 0 Sinon je veux calculer sum des prixunitaires* nombres + prix d'activité dans lequel on a ici  une condition que si la date d'activité entre Mars et décembre alors je prend la liste des prix du GHSM2017 sinon je prend GHSJF2017.

      Expression:

      if(CODE_FACTURE<>0,0,(Sum(PRIX_UNITAIRE_GHS*NOMBRE_GHS+sum(if(ANNEE_FIN_ACTE=2017 and

      MOIS_FIN_ACTE>=03 and MOIS_FIN_ACTE<=12,GHSM2017,GHSJF2017))))).

       

      J'ai essayé aussi cette expression

       

      sum(if(CODE_FACTURE<>0,0,(Sum((PRIX_UNITAIRE_GHS*NOMBRE_GHS)))+sum(if(ANNEE_FIN_ACTE=2017 and

      MOIS_FIN_ACTE>=03 and MOIS_FIN_ACTE<=12 and CODE_FACTURE<>0,GHSM2017,GHSJF2017))))

       

      Merci d'avance de vos retours.

        • Re: Somme Avec deux conditions
          Kevin Chevrier

          Bonjour Chadlia,

           

          Il faut utilliser les set analysis.

           

          Voilà qui doit se rapprocher de ce que tu souhaite :

          =if(CODE_FACTURE<>0,0,

          ((Sum(PRIX_UNITAIRE_GHS)*SUM(NOMBRE_GHS))+

          ((Sum({$ <ANNEE_FIN_ACTE= {2017},MOIS_FIN_ACTE={">=3"},MOIS_FIN_ACTE={"<=12"}>}GHSM2017))

          + (Sum({$ <ANNEE_FIN_ACTE= {2017},MOIS_FIN_ACTE={"<3"}>}GHSJF2017)))))

           

          Je te joint une doc qui devrait t'aider à y voir plus clair.

           

          Kevin

            • Re: Somme Avec deux conditions
              Chadlia Gabsi

              Bonjour Kevin,

              Merci.

              J'ai essayé ta formule  et ça n' a pas marché.

              if(CODE_FACTURE<>0,0,

              ((Sum(PRIX_UNITAIRE_GHS*NOMBRE_GHS))+

              ((Sum({$ <ANNEE_FIN_ACTE= {2017},MOIS_FIN_ACTE={">=03"},MOIS_FIN_ACTE={"<=12"}>}GHSM2017))

              + (Sum({$ <ANNEE_FIN_ACTE= {2017},MOIS_FIN_ACTE={01},MOIS_FIN_ACTE={02}}GHSJF2017)))))

               

              Pour + (Sum({$ <ANNEE_FIN_ACTE= {2017},MOIS_FIN_ACTE={01},MOIS_FIN_ACTE={02}}GHSJF2017))

              je n'ai pas besoin de la somme de GHSJF2017+GHSM2017  si MOIS entre 03 et 12 alors je dois calculer la

              (Sum(PRIX_UNITAIRE_GHS*NOMBRE_GHS)+ GHSM2017

              Sinon

              (Sum(PRIX_UNITAIRE_GHS*NOMBRE_GHS)+ GHSJF2017




            • Re: Somme Avec deux conditions
              Kevin Chevrier

              Il n'y a pas de raison particulière pour que cela ne fonctionne pas.

               

              Si le résultat du set analysis est de 0, cela ne viendra pas te rajouter de montant que tu ne souhaites pas.

               

              Sinon tu peux essayer :

              =if(CODE_FACTURE<>0,0,

              ((Sum(PRIX_UNITAIRE_GHS)*SUM(NOMBRE_GHS))+

              ((Sum({$ <ANNEE_FIN_ACTE= {2017},MOIS_FIN_ACTE={">=3"}*{"<=12"}>}GHSM2017))

              + (Sum({$ <ANNEE_FIN_ACTE= {2017},MOIS_FIN_ACTE={"<3"}>}GHSJF2017)))))

               

              Si tu ne peux pas nous mettre ton application. Je te conseille de faire 3 objets textes et d'y insérer ton calcul découper pour voir où cela ne fonctionne pas :

               

              Objet texte 1 : =(Sum(PRIX_UNITAIRE_GHS)*SUM(NOMBRE_GHS))

               

              Objet texte 2 : =Sum({$ <ANNEE_FIN_ACTE= {2017},MOIS_FIN_ACTE={">=3"}*{"<=12"}>}GHSM2017)

               

              Objet texte 3 : =Sum({$ <ANNEE_FIN_ACTE= {2017},MOIS_FIN_ACTE={"<3"}>}GHSJF2017)

               

              Tu constateras que tu ne peux pas avoir 2 valeurs supérieures à 0 dans tes objets textes 2 et 3.

               

              Kevin

                • Re: Somme Avec deux conditions
                  Chadlia Gabsi

                  Bonjour Kevin,

                  J'ai fait plusieurs essaies et toujours avec échec.

                  Je pense qu'il y a un problème de jointure parce que le CODE_FACTURE n'est pas dans la même table que GHSM2017. Est ce que c'est un problème pourtant j'ai identifié les clés étrangères de chaque table.

                  j'ai quatre tables définies comme suit

                  Table admission: N°document, code_facture,

                  Table document: n°document,annee_activité, mois activité

                  Table Prix: j'ai des prix et des codes

                  Table Facture: N°document + Code

                   

                  Chadlia

                • Re: Somme Avec deux conditions
                  Kevin Chevrier

                  Sans ton application, je pense que l'on aura du mal à t'aider plus.

                   

                  Tu sélectionnes bien un mois en particulier quand tu fais tes tests ?

                   

                  Kevin