Si vous voulez les sous-totaux, il faut que ce soit une expression. Mais à ce moment, ça sera affiché pour toutes les valeurs de dimension (produit), donc redondance de données.
Il est aussi possible de bidouiller pour faire une fausse dimension qui serait les produits + un produit "total", et faire une expression avec une condition pour savoir ce qu'on veut afficher.
Avec les données suivantes :
1 2 3 4 5 6 7 8 9 10 11
|
data:
LOAD * INLINE [
Dim1, Dim2, Valeur
A, aa, 1
A, bb, 2
A, cc, 3
B, aa, 4
B, bb, 5
B, cc, 6
]; |
On fait un tableau croisé avec comme dimensions :
et
=valuelist($(=chr(39) & concat({1} distinct Dim2, chr(39) & ', ' & chr(39)) & chr(39)), 'TOTAL')
Et comme expression :
1 2 3 4
| if(valuelist($(=chr(39) & concat({1} distinct Dim2, chr(39) & ', ' & chr(39)) & chr(39)), 'TOTAL') = 'TOTAL', 'calcul du total',
sum(if(Dim2 = valuelist($(=chr(39) & concat({1} distinct Dim2, chr(39) & ', ' & chr(39)) & chr(39)), 'TOTAL'), Valeur))
) |
On obtiendra alors :
L'expression sera quand même assez lourde à maintenir (et à calculer).
Partager