# Date - Função de script e de gráfico

Date() formata uma expressão como uma data usando o formato definido nas variáveis de sistema no script de carga de dados ou sistema operacional, ou uma string de formato, se fornecida.

Sintaxe:

Date(number[, format])

Tipo de dados de retorno: dual

Argumentos

| Argumento | Descrição |
| --- | --- |
| number | O número a ser formatado. |
| format | String descrevendo o formato da string resultante. Se nenhuma string de formato for fornecida, será usado o formato de data definido nas variáveis do sistema no script de carga de dados ou no sistema operacional.<br><br>A função `Date` oferece suporte a muitas opções de formato para diferentes estruturas de data, por exemplo:<br><br>​`DD/MM/YYYY`: ​Dia/Mês/Ano (por exemplo, 15/02/2022)<br><br>​`MM-DD-YYYY`: ​Mês-Dia-Ano com hifens (por exemplo, 02-15-2022)<br><br>​`YYYY-MM-DD`: ​Ano-Mês-Dia, formato ISO (por exemplo, 2022-02-15)<br><br>​`D-MMM-YYYY`: ​Dia, nome abreviado do mês, ano, com hifens (por exemplo, 15-Feb-2022)<br><br>`​MMMM YYYY`: ​Nome longo do mês e ano (por exemplo, February 2022)<br><br>​`MM/YYYY`: ​Mês e ano (por exemplo, 02/2022)<br><br>​`DD MMMM YYYY`: ​Dia, Nome longo do mês e ano (por exemplo, 15 February 2022) |

Exemplo: expressões de gráfico

| Exemplo | Resultado |
| --- | --- |
| `Date( 35648 )` | Retorna `97-08-06` quando a configuração de `DateFormat` é `YY-MM-DD`. |
| `Date( 35648, 'YY.MM.DD' )` | Retorna `97.08.06` quando a configuração de `DateFormat` é `YY-MM-DD`. |
| `Date( '8/6/97', 'YY.MM.DD' )` | Retorna `NULL` quando a configuração de `DateFormat` é `YY-MM-DD`. |

## Exemplo – Fundamentos de Date

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/FormattingFunctions/Date.htm)

#### Expressão de gráfico

Visão geral

Abra o editor da carga de dados e adicione o script de carregamento abaixo em uma nova seção.

O script de carregamento contém:

* Um conjunto de dados que é carregado em uma tabela de dados denominada `Example`.

* Os campos a seguir na tabela de dados:

  * `RowNo`
  * `InputDate`

* A variável `DateFormat`, que usa o formato `YY-MM-DD`.

Script de carregamento

```
SET DateFormat='YY-MM-DD';
Example:
Load * inline [
RowNo, InputDate
1, 35648
2, 35648.375
3, 8/6/97
];
```

Resultados

Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:

* ` RowNo
                                       `

* `InputDate`

Crie as seguintes medidas:

* `=Date(InputDate)` para visualizar o valor como uma data formatada usando as configurações da variável `DateFormat`.

* `=Date(InputDate, 'DD.MM.YYYY')` para visualizar o valor como uma data formatada usando o formato fornecido na função.

* `=Date(InputDate, 'YY.MM.DD')` para visualizar o valor como uma data formatada usando o formato fornecido na função.

* `=Num(InputDate)` para retornar o valor numérico da data.

Results table

| RowNo | InputDate | Date(InputDate) | Date(InputDate, 'DD.MM.YYYY') | Date(InputDate, 'YY.MM.DD') | Num(InputDate) |
| --- | --- | --- | --- | --- | --- |
| 1 | 35648 | 97-08-06 | 06.08.1997 | 97.08.06 | 35648 |
| 2 | 35648.375 | 97-08-06 | 06.08.1997 | 97.08.06 | 35648.375 |
| 3 | 8/6/97 | - | - | - | - |

Os resultados mostram como a função `Date` pode ser usada para exibir e formatar datas. Neste exemplo, o `DateFormat` é definido como `YY-MM-DD` no script de carregamento. O sistema espera que a expressão para a data use esse formato. Você pode ver que o valor para `InputDate` na linha 3 (`8/6/97`) não segue esse formato, portanto, o sistema não o reconhece como uma data e retorna `NULL`.

Altere a configuração de `DateFormat` no script de carregamento para `SET DateFormat='M/D/YY';` e recarregue os dados. O valor na linha 3 agora corresponderá ao formato esperado. O sistema a reconhecerá como uma data válida e a formatará de acordo. A tabela a seguir mostra os resultados com a nova configuração de `DateFormat`.

Results table with variable statement `Set DateFormat='M/D/YY'`Set DateFormat='M/D/YY'

| RowNo | InputDate | Date(InputDate) | Date(InputDate, 'DD.MM.YYYY') | Date(InputDate, 'YY.MM.DD') | Num(InputDate) |
| --- | --- | --- | --- | --- | --- |
| 1 | 35648 | 97-08-06 | 06.08.1997 | 97.08.06 | 35648 |
| 2 | 35648.375 | 97-08-06 | 06.08.1997 | 97.08.06 | 35648.375 |
| 3 | 35648 | 97-08-06 | 06.08.1997 | 97.08.06 | 35648.375 |

## Exemplo – Cenário de Date

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/FormattingFunctions/Date.htm)

#### Expressão de gráfico

Visão geral

Um conjunto de dados contém dados de vendas que usam o formato de data `MM-DD-YYYY`. Você deseja usar o formato de data `DD/MM/YYYY`.

Abra o editor da carga de dados e adicione o script de carregamento abaixo em uma nova seção.

O script de carregamento contém:

* Um conjunto de dados que é carregado em uma tabela de dados denominada `Example`.

* Os campos a seguir na tabela de dados:

  * `Customer`
  * `SalesDate`
  * `Amount`

* A variável `DateFormat`, que usa o formato `MM/DD/YYYY`.

Script de carregamento

```
SET DateFormat='MM/DD/YYYY';
Example:
Load * inline [
Customer, SalesDate, Amount
Customer A, 2/15/2024, 100008
Customer B, 9/30/2024, 12500
Customer C, 12/28/2024, 15000
];
```

Resultados

Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esse campo como uma dimensão:

* ` Customer
                                       `

Crie as seguintes medidas:

* `=Date(SalesDate ,'DD/MM/YYYY')` para visualizar o valor como uma data formatada usando o formato fornecido na função.

* `=Sum(Amount)` para calcular o valor total do custo de vendas.

Results table

| Customer | Date(SalesDate ,'DD/MM/YYYY') | Sum(Amount) |
| --- | --- | --- |
| Customer A | 15/02/2024 | 100008 |
| Customer B | 30/09/2024 | 12500 |
| Customer C | 28/12/2024 | 15000 |

Observando os resultados, você pode ver que, embora as datas no conjunto de dados usem um formato, a função `Date` permite que você apresente essas datas em um formato diferente.