6 Replies Latest reply: Nov 15, 2016 12:00 PM by Sébastien Fatoux RSS

    Somme ventes N et N-1

    Franck GONZALVO

      Bonjour la communauté,

       

      Nouveau sur Qlikview, j'ai beaucoup de questions sur les set analysis et principalement ceux sur les dates.

      Par exemple, j'ai la mise en place d'un tableau de bord avec la somme des ventes pour N et N-1. Les données proviennent d'une vue.

       

      L'utilisateur aura a sa disposition des filtres année, mois, trimestre, et un calendrier avec le choix des dates.

      Comment faire pour afficher le N-1 ?

      Peut on avec un set analysis, gérer tous les cas de choix de période ?

      Question subsidiaire quand je choisis le mois en cours mon N-1 affiche le mois complet alors que j'aurais aimé être à jour constant.


      Merci pour vos réponses.

      Je reste à votre disposition si vous avez besoin de précision.

        • Re: Somme ventes N et N-1
          bruno bertels

          Bonjour

           

          Ce document devrait t'aider :

          https://community.qlik.com/docs/DOC-9162

           

          ainsi pour ton besoin , avoir la période N-1 :

           

          Sum({<Date={$(=year(today())-1)}>} Sales )

          ou

          Sum({<Year={$(=year(today())-1)}>} Sales )

           

          Bruno

            • Re: Somme ventes N et N-1
              Franck GONZALVO

              Merci Bruno pour ta réponse. J’ai une expression qui ressemble à ça

              Sum({$<Année = {$(=Max(Année)-1)}>} [SALES]

              qui permet d’avoir la somme de mon N-1 dans le cas d’une sélection d’une année, d’un ou plusieurs trimestres ou d’un ou plusieurs mois.


              Ce que j’ai plus de mal à mettre en place, c'est pour le mois en cours, en effet la somme correspond au mois complet alors que j’ai besoin d’afficher la somme à jour égal avec l’année dernière.


              Si l’utilisateur fait une sélection de jour dans le calendrier, dans ce cas ma somme est égale à 0.

              Je cherche donc à avoir un set analysis qui me permet d’avoir une somme correcte dans tous les cas de figures.

                • Re: Somme ventes N et N-1
                  bruno bertels

                  Bonjour

                   

                  Voici ci dessous des set analysis à adapter,  qui devraient répondre à ton besoin :

                   

                  Total Année en cours à la date du jour :

                  Sum({$<[Date] = {'>=$(=YearStart(Today()))'}>} [Sales])

                   

                  somme des ventes de toutes les dates supérieurs au début d'année ( Yearstart() ) d'aujourd'hui (Today() )

                   

                  Total à date de N-1 : ( ta demande)

                  Sum({$<[Date] = {'>=$(=Date(AddYears(YearStart(Today()),-1)))<$(=Date(AddYears(Today(),-1)))'}>} [Sales])

                   

                  somme des ventes supérieure au premier jour de l'année dernière (01/01/2015) et inférieure à la date du jour moins 1 an (20/10/2015)

                   

                  Différence entre Total à Date N et total à Date N-1

                  //vente de l'année en cours :

                  (Sum({$<[Date] = {'>=$(=YearStart(Today()))'}>} [Sales])

                  -

                  //vente de l'année N-1 à la date du jour de N-1

                  Sum({$<[Date] = '>=$(=Date(AddYears(YearStart(Today()),-1)))<$(=Date(AddYears(Today(),-1)))'}>} [Sales]))

                    • Re: Somme ventes N et N-1
                      Franck GONZALVO

                      Bonjour Bruno et merci de ta réponse.

                       

                      Désolé de répondre si tard.

                      J'ai un souci que je ne comprends pas.

                      Mes données proviennent d'une base oracle via une vue.

                      La date de vente est au format date avec pour format DD/MM/AAAA.

                      Dans les scripts Qlikview je nomme ma date de vente Date pour toute les données date de vente de toutes les vues.

                      J'ai aussi une script de conf qui permet de mettre la date format DD/MM/AAAA.

                      Malgré cela quand je teste tes set analysis, je n'arrive pas à avoir de résultat. J'ai essayé de les adapter pour avoir un résultat mais je "sèche".


                      As tu une idée d'ou peut venir le problème ?


                      Franck

                        • Re: Somme ventes N et N-1
                          bruno bertels

                          Bonjour

                           

                          PAs sur de pouvoir t'aider sans avoir une vue de ton script ou de tes données. De plus j'utilise Qliksense plutot que Qlikwiew , même si la logique est la même.

                           

                          je penses que tu as vérifié le format date sous qlikwiew dans le mainscript tu dois avoir ceci :

                          SET DateFormat='DD/MM/YYYY';

                           

                          Ensuite si je comprends bien tu dois avoir une ligne de script comme ceci :

                          "date de vente" as Date,

                          Si c'est le cas mets ceci :

                          date("date de vente",'DD/MM/YYYY') as Date,

                          (c'est peut être ce que tu fais déja quand tu écris "J'ai aussi une script de conf qui permet de mettre la date format DD/MM/AAAA"

                          Si non tu peux me mettre le code en question.

                           

                          Enfin

                          Essaye de tester ta formule par bloc  pour voir les formats de sortie dans un tableau

                          • Re: Somme ventes N et N-1
                            Sébastien Fatoux

                            Salut Frank, voici les expression adaptée:

                             

                            Total Année en fonction de la sélection:

                            Sum({$<Année = {$(=Max(Année))}, [Date] = {'<=$(=Date(Max([Date]),'DD/MM/YYYY'))'}>} [Sales])

                             

                            Total année précédente en fonction de la sélection:

                            Sum({$<Année = {$(=Max(Année)-1)}, [Date] = {'<=$(=Date(AddYears(Max([Date]),-1),'DD/MM/YYYY'))'}>} [Sales])

                             

                            Différence entre Total à Date N et total à Date N-1

                            //vente de l'année en cours :

                            (Sum({$<Année = {$(=Max(Année))}, [Date] = {'<=$(=Date(Max([Date]),'DD/MM/YYYY'))'}>} [Sales])

                            -

                            //vente de l'année N-1 à la date du jour de N-1

                            Sum({$<Année = {$(=Max(Année)-1)}, [Date] = {'<=$(=Date(AddYears(Max([Date]),-1),'DD/MM/YYYY'))'}>} [Sales]))