Sum() calculates the total of the values given by the expression or field across the aggregated data.
Syntax:
Sum([{SetExpression}] [DISTINCT] [TOTAL [<fld {,fld}>]] expr])
Return data type: numeric
| Argument | Description | 
|---|---|
| expr | The expression or field containing the data to be measured. | 
| SetExpression | By default, the aggregation function will aggregate over the set of possible records defined by the selection. An alternative set of records can be defined by a set analysis expression. | 
| DISTINCT | If the word 
 DISTINCT occurs before the function 
arguments, duplicates resulting from the evaluation of the function arguments are disregarded. Information noteAlthough the DISTINCT qualifier is supported, use it only with extreme caution because it may mislead the reader into thinking a total value is shown when some data has been omitted. | 
| TOTAL | If the word 
 TOTAL occurs before the function 
arguments, the calculation is made over all possible values given 
the current selections, and not just those that pertain to the current dimensional value, that is, it disregards the chart dimensions. By using TOTAL [<fld {.fld}>], where the TOTAL qualifier is followed by a list of one or more field names as a subset of the chart dimension variables, you create a subset of the total possible values. | 
| Example | Result | 
|---|---|
| Sum(UnitSales) | Returns the total of the values in UnitSales. | 
| Sum(UnitSales*UnitPrice) | Returns the total of UnitPrice multiplied by UnitSales aggregated. | 
| Sum(TOTAL UnitSales*UnitPrice) | Returns the total sum for all rows in the table, as well as the total, because the TOTAL qualifier means the sum is calculated disregarding the chart dimensions. | 
| Sum({1} TOTAL UnitSales*UnitPrice) | The set analysis expression {1} defines the set of records to be evaluated as ALL, independent of any selection made. |