17 Replies Latest reply: Sep 15, 2017 1:19 AM by Sébastien Fatoux RSS

    Count Stock historique

    Maurice ludo

      Bonjour,

      je voudrais mettre en place un tableau pour afficher  l'historique de mon stock

      - flux = count( DISTINCT Création)  F

      - Traitement = count(DISTINCT Cloture) T

      - Stock :   S1 = F-T

                       S2 = stock S1 + F-T

                       S3 = Stock S2 + F-T

      j'ai essayé plusieurs expression pour afficher l'historique de la semaine s-1 mais je n'ai pas réussi.

      quelqu'un peut me aider s'il vous plait ?

      Merci

      Maurice

        • Re: Count Stock historique
          Kevin Chevrier

          As-tu essayé la fonction above ?

           

          Peux-tu transférer un .qvw ?

           

          Kevin

          • Re: Count Stock historique
            Sébastien Fatoux

            Je crois que c'est ce que tu veux :

            community_271546.png

             

            je joint l'application avec 2 solutions. J'essayerai d'expliquer un peu les 2 solutions dans une autre réponse si j'ai le temps.

              • Re: Count Stock historique
                Sébastien Fatoux

                L'application que j'ai fournit ne contient pas les données, mais elles peuvent être chargées à partir de ton application (chargement binaire), voir le script de chargement de mon application:

                 

                J'ai fait cela pour que l'application soit plus rapidement téléchargée et parce que j'avais besoin d'ajouter des données pour une de mes solutions :

                 

                Binary [stock histo.qvw];

                SET ThousandSep=' ';
                ...
                SET LongDayNames='lundi;mardi;mercredi;jeudi;vendredi;samedi;dimanche';

                _M_1:
                LOAD *
                Inline [
                M_1
                Flux
                Traitement
                Stock
                Flux moyen semaine
                ]
                ;

                  • Re: Count Stock historique
                    Maurice ludo

                    Merci Sébastien pour ta réponse,

                    j'ai rechargé l'application à partir de l'application initiale, mais je n'ai pas le tableau, peux-tu nous communiqué l'expression utilisée pour calculer le stock.

                    Merci

                    Maurice

                      • Re: Count Stock historique
                        Sébastien Fatoux

                        Ok, autant pour moi.

                         

                        Voici l'appli avec les données et les tableaux

                          • Re: Count Stock historique
                            Maurice ludo

                            Merci Sébastien,

                            Ça marche bien pour le stock mais pas pour flux moyen par semaine voici la règle de calcul

                            cumul de flux sur nombre des semaine passées

                            exemple pour semaine 8

                            Flux moyen semaine = 1+17+12 / 3 = 10

                            j'ai testé cette expression mais ca ne marche pas


                            count(DISTINCT{<[File d’attente]={'N1-Developpement'}>} Création ) - rangesum(before(count(DISTINCT{<[File d’attente]={'N1-Developpement'}>} Création ),0,columnno())),

                              • Re: Count Stock historique
                                Sébastien Fatoux

                                je n'ai pas du tout traité ce sujet, car il ne faisait pas partie de ta question.

                                 

                                Le nombre de valeur utilisé pour calculer ta moyenne ne va pas cesser d'augmenter, c'est bien ce que tu veux ?

                                on est d'accord qu'une moyenne calculée sur 2 semaines n'est pas comparable à une moyenne calculée sur 104 semaines (2 ans).

                                 

                                Je pense que tu ne veux pas que le résultat soit fonction de la sélection de la semaine ?

                                Si tu sélectionnes la semaine 8 tu voudras toujous voir la valeur 10

                                  • Re: Count Stock historique
                                    Maurice ludo

                                    oui il va augmenter puisque il s'agit d'un cumul de flux de toutes les semaine.

                                    on est d'accord le moyenne est différente d'une semaine à l'autre ,

                                    le résultat ne dépend pas de la sélection.

                                    Merci 

                                      • Re: Count Stock historique
                                        Sébastien Fatoux

                                        Si c'est ce que tu veux, tu trouveras l'application modifiée en pièce jointe

                                          • Re: Count Stock historique
                                            Maurice ludo

                                            Concernant flux moyen semaine,  la moyenne calculée  par rapport aux nombre de semaine dont la valeurs de flux est différents de  zéro alors qu'il doit prendre en compte ttes les semaine

                                            si je prends la semaine 9 la valeur moyenne affichée est 15 : 59/4=14.75 la bonne valeur est : 59/9= 6.55

                                            Merci

                                              • Re: Count Stock historique
                                                Sébastien Fatoux

                                                Donc pas comme tu l'avait spécifié précédemment

                                                  • Re: Count Stock historique
                                                    Sébastien Fatoux

                                                    Voici l'expression, avec en gras la partie modifiée :

                                                    e -1 en rouge a été ajouté pour arriver exactement à ce que tu as demandé, Car il y a également un bout de la semaine 52 de 2016 en 2017 que tu n'as pas compté dans ton exemple.

                                                     

                                                    Num(
                                                    if(SecondaryDimensionality()=0,
                                                    //Total
                                                    Round( count(DISTINCT{<[File d’attente]={'N1-Developpement'}, Semaine=>} Création ) / Count({<Semaine=>} Aggr(count({<[File d’attente]={'N1-Developpement'}, Semaine=>} DISTINCT Création ), M_1, Semaine)))
                                                    ,
                                                    //Cellules
                                                    Avg(
                                                    Aggr(
                                                    RangeSum(
                                                    Above(
                                                    count(DISTINCT{<[File d’attente]={'N1-Developpement'}, Semaine=>} Création ),
                                                    0,
                                                    RowNo
                                                    ()
                                                    )
                                                    ) / (
                                                    RangeSum(
                                                    Above(
                                                    count(DISTINCT{<Semaine=>} Semaine ),
                                                    0,
                                                    RowNo
                                                    ()
                                                    )
                                                    )-1),
                                                    M_1, Semaine
                                                    )
                                                    )
                                                    ), '0.##')

                                                      • Re: Count Stock historique
                                                        Maurice ludo

                                                        Merci Sébastien,

                                                        désolé si je me suis mal exprimé avant.

                                                        concernant l'expression de stock pour N2-Développement la semaine 1 n'affiche pas la bonne valeur,

                                                        j'ai utilisé cette expression pour le stock dans le graphe courbe, a ton avis c'est la bonne règle?

                                                         

                                                        if(Dimensionality()=0,

                                                        //Total

                                                        count(DISTINCT{<[File d’attente]={'N1-Developpement'}, Semaine=>} Création )- count(DISTINCT{<[File d’attente]={'N1-Developpement'}, Semaine>} Cloture )

                                                        ,

                                                        // Cellules

                                                        Sum(

                                                        Aggr(

                                                        RangeSum(

                                                        Above(

                                                        count(DISTINCT{<[File d’attente]={'N1-Developpement'}, Semaine=>} Création )- count(DISTINCT{<[File d’attente]={'N1-Developpement'}, Semaine>} Cloture ),

                                                        0,

                                                        RowNo()-1

                                                        )

                                                        ),  Semaine

                                                        )

                                                        )

                                                        )

                                                          • Re: Count Stock historique
                                                            Sébastien Fatoux

                                                            Il faut enlever le test sur Dimentionality() qui n'a pas lieu d'être dans un graphique en ligne, ainsi que l'expression pour le Total pour le "Stock" et le "Flux moyen".

                                                             

                                                            Mais si tu garde une seul expression tu auras le premier graphique où l'on ne voit que le Stock, les autres données n'étant pas très visibles.

                                                            ==> Je te conseille de créer des expressions distinctes et de mettre le Stock sur l'axe de droite comme sur le graphique du bas.

                                                            community_1343334.png

                                                              • Re: Count Stock historique
                                                                Maurice ludo

                                                                Merci Sébastien,

                                                                concernant le graphe 2 , la valeur de semaine 1 doit être 8 et non 0 , je ne vois pas d'ou ça vient l'erreur,

                                                                aussi si tu comparer les graphes 3 et 4 on a pas le même résultât pourtant on la même expression.

                                                                Merci pour ton aide

                                                                  • Re: Count Stock historique
                                                                    Sébastien Fatoux

                                                                    Salut,

                                                                    il y a 3 problèmes:

                                                                    1. Dans le graphe 2, le problème est du au fait que pour la semaine 1 le Traitement est à Null. Pour calculer le Stock, on fait Flux -Traitement, mais traitement est Null alors Stock sera Null. Pour corriger ce problème, il faut utiliser RangeSum(Flux, -1 * Traitement) . Tu peux effectuer cette correction dans toutes les expressions pour calculer Stock.
                                                                    2. Dans la même expression, on fait un RangeSum sur RowNo()-1 cellules --> enlever le -1
                                                                    3. Dans le dernIer graphique on utilisé pas la dimension M_1, il ne faut donc pas l'utiliser dans les Aggr des expressions Stock et Flux Moyen Semaine