# Previous - função de script

Previous() descobre o valor da expressão expr usando dados do registro de entrada anterior. No primeiro registro de uma tabela interna, a função retornará NULL.

Sintaxe:

Previous(expr)

Tipo de dados de retorno: dual

Argumentos:

Argumentos Previous

| Argumento | Descrição |
| --- | --- |
| expr | A expressão ou campo que contém os dados a serem medidos.<br><br>A expressão pode conter funções previous() aninhadas para acessar os registros anteriores. Os dados são lidos diretamente da fonte de entrada, o que permite fazer referência também aos campos não carregados no QlikView, isto é, mesmo que não tenham sido armazenados em seu banco de dados associado. |

Limitações:

No primeiro registro de uma tabela interna, a função retorna NULL.

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

Ao usar a função Previous() no comando Load, é possível comparar o valor atual de Sales com o valor precedente e usar o resultado em um terceiro campo, Increase.

Resultados do exemplo 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 |

Exemplo 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;` ` `

Neste exemplo, excluímos os registros em que Month é 6 ou menos, usando uma cláusula WHERE. Isso ainda possibilita usar Previous(), pois a função pode fazer referência a dados que estão excluídos do carregamento.

Nesse caso, o cálculo de Increase para Month=7 faz referência ao valor Sales para Month=6, que está excluído do carregamento.

Resultados do exemplo 2

| Month | Sales | Increase |
| --- | --- | --- |
| 7 | 22 | 1 |
| 8 | 23 | 1 |
| 9 | 32 | 9 |
| 10 | 35 | 3 |
| 11 | 40 | 5 |
| 12 | 41 | 1 |

## Saiba mais

* [Peek - função de script](https://help.qlik.com/pt-BR/qlikview/May2024/Subsystems/Client/Content/QV_QlikView/Scripting/InterRecordFunctions/Peek.htm)