Ga naar hoofdinhoud

Previous - scriptfunctie

OP DEZE PAGINA

Previous - scriptfunctie

Previous() retourneert de waarde van de uitdrukking expr met gebruik van de gegevens uit de vorige invoerrecord. In de eerste record van een interne tabel retourneert de functie NULL.

Syntax:  

Previous(expr)

Return data type: dual

Arguments:  

Argumenten voor previous
Argument Beschrijving
expr De uitdrukking die of het veld dat de gegevens bevat die moeten worden gemeten.

De uitdrukking kan geneste functies previous() bevatten om toegang te krijgen tot eerdere records. Gegevens worden rechtstreeks opgehaald uit de invoerbron. Zo kan ook worden verwezen naar velden die niet zijn geladen in QlikView en dus zelfs als deze niet zijn opgeslagen in de bijbehorende associatieve database.

Limitations:  

In de eerste record van een interne tabel retourneert de functie NULL.

Example 1:  

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 '|');

 

Door gebruik te maken van de functie Previous() in de opdracht Load, kunnen wij de huidige waarde van Sales vergelijken met de voorafgaande waarde en deze gebruiken in een derde veld, Increase.

Resultaten voorbeeld 1
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

Example 2:  

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;

 

In dit voorbeeld worden de records waarin Month 6 of lager is, uitgesloten door een WHERE-clausule te gebruiken. Het is hierbij nog steeds mogelijk om Previous() te gebruiken, omdat de functie kan verwijzen naar gegevens die van de laadopdracht zijn uitgesloten.

In dit geval verwijst de berekening van Increase voor Month=7 naar de Sales-waarde voor Month=6, die van de laadopdracht is uitgesloten.

Resultaten voorbeeld 2
Month Sales Increase
7 22 1
8 23 1
9 32 9
10 35 3
11 40 5
12 41 1