RangeSum - funzione dello script e del grafico
RangeSum() restituisce la somma di una scala di valori. Tutti i valori non numerici vengono trattati come 0, a differenza dell'operatore +.
Sintassi:
RangeSum(first_expr[, Expression])
Tipo di dati restituiti: numerico
Argomenti:
L'argomento di questa funzione può contenere funzioni intra-record, che a loro volta restituiscono un elenco di valori.
- first_expr: l'espressione o il campo contenente i dati da sommare.
- Expression: le espressioni o i campi opzionali contenenti la scala di dati da sommare. È possibile utilizzare più espressioni aggiuntive.
Limiti:
La funzione RangeSum considera tutti i valori non numerici come 0, diversamente dall'operatore +.
Esempi:
| Esempio | Risultato |
|---|---|
| RangeSum (1,2,4) |
Restituisce 7 |
| RangeSum (5,'abc') | Restituisce 5 |
| RangeSum (null( )) |
Restituisce 0 |
Esempio: (usando l'espressione)
RangeSum (Above(MyField,0,3))
Restituisce la somma dei tre valori di MyField): dalla riga attuale e dalle due righe che la precedono. Specificando 3 per il terzo argomento, la funzione Above() restituisce tre valori, se il numero di righe che precedono la riga attuale è sufficiente, che vengono considerati come input per la funzione RangeSum().
| MyField | RangeSum(Above(MyField,0,3)) |
|---|---|
| 10 | 10 |
|
2 |
12 |
| 8 | 20 |
| 18 | 28 |
| 5 | 31 |
| 9 | 32 |
Dati utilizzati negli esempi:
RangeTab:
LOAD * INLINE [
MyField
10
2
8
18
5
9
] ;
Esempio: (in forma di tabella)
Aggiungere lo script di esempio al documento ed eseguirlo. Aggiungere quindi a un foglio del documento almeno i campi elencati nella colonna dei risultati per visualizzare il risultato.
RangeTab3:
LOAD recno() as RangeID, Rangesum(Field1,Field2,Field3) as MyRangeSum INLINE [
Field1, Field2, Field3
10,5,6
2,3,7
8,2,8
18,11,9
5,5,9
9,4,2
];
La tabella risultante mostra i valori restituiti da MyRangeSum per ciascun record della tabella.
| RangeID | MyRangeSum |
|---|---|
| 1 | 21 |
| 2 | 12 |
| 3 | 18 |
| 4 | 38 |
| 5 | 19 |
| 6 | 15 |