Skip to content

$math.sum

Description

Calcule une somme de valeurs. La méthode supporte plusieurs formats de données en entrée:

  • une valeur litérale: Dans cas, la méthode n'a rien à calculer et elle ne fait que de retourner la valeur reçue

  • un tableau 1D de valeurs litérales: La méthode calcule la somme des valeurs du tableau et retourne une valeur litérale

  • un tableau 2D de valeurs litérales: La méthode calcule la somme par colonnes et retourne un tableau 1D

  • un map: La méthode ne fait que de filtrer le map en fonction du paramètre filter (si défini) et retourne un map

  • un tableau de map: La méthode calcule la somme par propriété (en tenant compte du paramètre filter et retourne un map

Syntaxe

$math.sum( data [ , options ] )

Paramètres

data number / array / map
Jeu de données dont on souhaite calculer la somme
options map

Map d'options. Les options reconnues sont:

filter number / array
Cette option est prise en compte lorsque le paramètre data désigne un map. Elle permet d'indiquer la ou les propriétés pour lesquelles la méthode doit calculer une somme. Le map en sortie ne contiendra que les propriétés énumérées dans filter.
nullSubst number
Valeur à utiliser en lieu et place des éventuelles valeurs null présentes dans le dataset. Si non défini, la présence de valeur null engendrera une réponse null.

Retour

Valeur de type number, array ou map contenant la somme des éléments reçus en entrée. Le format de la sortie dépend du format des données en entrée et de la nature du filter.

Exemple

L'exemple ci-dessous calcule la valeur du champ "totalHT" dans le groupe "cout" (champ de type "single"). Le calcul reprend la somme des montantsHT de tous les tuples présents dans le groupe "taches".

1
2
3
4
5
context "projet" {
    #cout.totalHT {
        return $math.sum(#taches.montantHT);
    }
}