Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
jmialoundama
Specialist
Specialist

Problème script de chargement : formule somme

Bonjour,

Voici mon script de chargement:

Top_indicateurs:

Let varCurrentYear = Year(Today());

LOAD

[Id. Collab],

weekyear(Jour) & '-' & right('0' & week(Jour),2)            as "Année-semaine (cal)2",

month(Jour)                                                    as "Mois (cal)2",

sum([_CA TTC net <>0]) / sum([_Nb. Tickets <>0])                as "Panier moyen"

From [lib://QVData/Fait.qvd] (qvd)

      Where year(Jour) = $(varCurrentYear)

   

      ;

Lorsque je charge mes données avec la formule suivante, j'ai une erreur qui se déclenche :

sum([_CA TTC net <>0]) / sum([_Nb. Tickets <>0]) as "Panier moyen"

J'ai l'erreur suivante :

Capture.JPG

J'ai essayé de charger mes données sans cette formule et ça fonctionne. Et lorsque je charge mes données uniquement avec la formule ça fonctionne également :

Top_indicateurs:

LOAD

weekyear(Jour) & '-' & right('0' & week(Jour),2)            as "Année-semaine (cal)2",

sum([_CA TTC net <>0]) / sum([_Nb. Tickets <>0])                  as "Panier moyen"

        From [lib://QVData/Fait.qvd]

        (qvd)

        ;

De plus dans mon fichier  j'ai bien deux dimensions qui s'appellent :

-"_CA TTC net <>0"

-"_Nb. Tickets <>0"


Je ne vois pas d'où pourrait venir le problème car lorsque je charge mes données uniquement avec cette formule (sum ), ça charge bien.

Merci d'avance

1 Solution

Accepted Solutions
maxgro
MVP
MVP

When there is an aggregation function in the script, you should add the group by for the other fields

Load

    field1,

     field2,

     sum(field3)          // sum is an aggr function

from

     ....

group by

    field1,

     field2

;

View solution in original post

4 Replies
kevinchevrier
Partner - Creator III
Partner - Creator III

Le problème viendrait pas de ta clause WHERE ?

Je ne la vois pas dans ton essai qui fonctionne.

jmialoundama
Specialist
Specialist
Author

Merci pour ton retour .

Non le problème ne vient pas de là.

En fait quand je charge les données sans la formule ça fonctionne:

Top_indicateurs:

Let varCurrentYear = Year(Today());

LOAD

[Id. Collab],

weekyear(Jour) & '-' & right('0' & week(Jour),2)   as "Année-semaine (cal)2",

month(Jour)  as "Mois (cal)2",

sum([_CA TTC net <>0]) / sum([_Nb. Tickets <>0])  as "Panier moyen"

From [lib://QVData/Fait.qvd] (qvd)

      Where year(Jour) = $(varCurrentYear)

  

      ;

Quand je charge les données avec uniquement la formule ça fonctionne :

Top_indicateurs:

LOAD

sum([_CA TTC net <>0]) / sum([_Nb. Tickets <>0])  as "Panier moyen"

From [lib://QVData/Fait.qvd] (qvd)

      ;

Quand je charge les données avec la formule et en y ajoutant un champs et bien ça ne fonctionne plus:

Top_indicateurs:

LOAD

[Id. Collab],

sum([_CA TTC net <>0]) / sum([_Nb. Tickets <>0])  as "Panier moyen"

From [lib://QVData/Fait.qvd] (qvd)

      ;

maxgro
MVP
MVP

When there is an aggregation function in the script, you should add the group by for the other fields

Load

    field1,

     field2,

     sum(field3)          // sum is an aggr function

from

     ....

group by

    field1,

     field2

;

jmialoundama
Specialist
Specialist
Author

Thanks you for your answer Massimo

Thank you for your answer Massimo,


I modified the loading script by adding a clause "group by", it's perfect !


Top_indicateurs:

Let varCurrentYear = Year(Today());

LOAD

[Id. Collab],

weekyear(Jour) & '-' & right('0' & week(Jour),2)            as "Année-semaine (cal)2",

month(Jour)                                                    as "Mois (cal)2",

sum([_CA TTC net <>0]) / sum([_Nb. Tickets <>0])                as "Panier moyen"

From 'lib://QVData/Fait.qvd' (qvd)

Where weekyear(Jour)=$(varCurrentYear)

group by [Id. Collab],

        weekyear(Jour) & '-' & right('0' & week(Jour),2),

          month(Jour);

          ;