3 Replies Latest reply: Dec 1, 2014 10:28 AM by luc Derosne RSS

    Cumul CA par mois

      Bonjour,

      J'ai un petit problème et je me demandais si vous pourriez m'aider SVP.

      Je souhaiterais créer deux champ,

      Le premier CA_Janvier fais me récupère le CA du mois de Janvier et le concatène avec une chaine de caractère.

      le CA_Février fait le cumul du C1 + Chiffre d'affaire du Mois de Février.

      Les CA_Janvier et CA_Février doivent être divisé par 1000 et arrondis à deux chiffres.

      J'ai fais:

      NoConcatenate MSPCHA_S1: LOAD*,      IF([Mois]='Janvier',Round([CA HT en Euro]/1000,0.01),[CA HT en Euro]) as [CA en Euro Janvier]     ,[TextConstant]&(IF([Mois]='Janvier',Round([CA HT en Euro]/1000,0.01),0))&';' as [CLEF 1],     IF([Mois]='Février',[CA HT en Euro]+(IF([Mois]='Janvier',Round([CA HT en Euro]/1000,0.01),0)),[CA HT en Euro]/1000) as [CA en Euro Février],     [TextConstant]&Sum(IF([Mois]='Février',Round([CA HT en Euro]+(Round(IF([Mois]='Janvier',([CA HT en Euro]/1000),     [CA HT en Euro]),0.01)),[CA HT en Euro]),0.01))&';' as [CLEF 2] Resident Extraction_Bil;

       

      ça ne marche pas, j'ai la valeur de CA_Janvier qui est la même que le celle de CA_Février,  or c'est FAUX, CA_Février devra je ne sais pas comment faire.

      J'ai un champ CA, MOIS, Année.

        • Re: Cumul CA par mois
          François Cavé

          Bonjour Slim,

          Peux-tu joindre à ta question une application avec un jeu test et le résultat attendu.

          Cela sera plus facile pour t'aider...

          Merci d'avance,

          François

          • Re: Cumul CA par mois
            Henric Cronström

            Vous avez un tableau de données source avec Année, Mois et CA, et vous voulez créer un nombre cumulatif. Ce n’est pas possible en utilisant seulement les autres valeurs du même enregistrement. Vous devez utiliser les valeurs de l’enregistrement précédent pour calculer "Cumul". Ci-dessous, vous devez additioner 100 et 200, qui sont sur des enregistrement différents pour obtenir 300.

            Image1.png

            Donc, vous avez besoin d'une fonction qui peut faire référence à d'autres enregistrements que la ligne actuelle. C’est la fonction Peek().

             

            Un script similaire à la suivante va résoudre le problème. Il va créer un champ commun pour les valeurs cumulées. Ensuite, vous pouvez utiliser ce champ comme dimension horizontale dans un tableau croisé dynamique. Ensuite, vous obtenez une colonne par mois.

             

            Facts1:

            Load Année, Mois, CA From ...;

             

            Facts2:

            Load Année, Mois, CA,

            If (Année = Peek (Année), NumSum (Peek (Cumul), CA), CA) as  Cumul

            Resident Facts1

            Order By Année, Mois;

             

            Drop Table Facts1;

             

            HIC