Previous - fonction de script
Last updated: 26/11/2025
Previous() recherche la valeur de l'expression expr en utilisant les données de l'enregistrement d'entrée précédent. Dans le premier enregistrement d'une table interne, la fonction renvoie NULL.
Previous(expr)
double
| Argument | Description |
|---|---|
| expr | Expression ou champ contenant les données à mesurer. L'expression peut contenir des fonctions previous() imbriquées pour permettre l'accès à des enregistrements antérieurs. La fonction recherche les données directement dans la source d'entrée, ce qui vous permet de faire aussi référence à des champs qui n'ont pas été chargés dans QlikView, c'est-à-dire même s'ils n'ont pas été stockés dans sa base de données associative. |
Dans le premier enregistrement d'une table interne, la fonction renvoie NULL.
Sales2013:
Load *, (Sales - Previous(Sales) )as Increase Inline [
Month|Sales
1|12
2|13
3|15
4|17
5|21
6|21
7|22
8|23
9|32
10|35
11|40
12|41
] (delimiter is '|');
En utilisant la fonction Previous() dans l'instruction Load, nous pouvons comparer la valeur active de Sales avec la valeur précédente et l'employer dans un troisième champ, Increase.
| Month | Sales | Increase |
|---|---|---|
| 1 | 12 | - |
| 2 | 13 | 1 |
| 3 | 15 | 2 |
| 4 | 17 | 2 |
| 5 | 21 | 4 |
| 6 | 21 | 0 |
| 7 | 22 | 1 |
| 8 | 23 | 1 |
| 9 | 32 | 9 |
| 10 | 35 | 3 |
| 11 | 40 | 5 |
| 12 | 41 | 1 |
Sales2013:
Load * Inline [
Month|Sales
1|12
2|13
3|15
4|17
5|21
6|21
7|22
8|23
9|32
10|35
11|40
12|41
] (delimiter is '|');
Sales:
NoConcatenate Load *, (Sales - Previous(Sales) )as Increase Resident Sales2013 where Month > 6;
Drop Table Sales2013;
Dans cet exemple, nous excluons les enregistrements où Month est inférieur ou égal à 6 en utilisant une clause WHERE. De cette façon, nous pouvons toujours utiliser Previous(), car la fonction peut faire référence à des données exclues du chargement.
Dans ce cas, le calcul de l'augmentation Increase pour Month=7 fait référence à la valeur de ventes Sales pour Month=6, qui est exclue du chargement.
| Month | Sales | Increase |
|---|---|---|
| 7 | 22 | 1 |
| 8 | 23 | 1 |
| 9 | 32 | 9 |
| 10 | 35 | 3 |
| 11 | 40 | 5 |
| 12 | 41 | 1 |