# DateFormat

Essa variável de ambiente define o formato de data usado como padrão no aplicativo e por data, retornando funções como `date()` e `date#()`. O formato é usado para interpretar e formatar datas. Se a variável não estiver definida, o formato de data definido pelas suas configurações regionais será obtido quando o script for executado.

Sintaxe:

DateFormat

Exemplos da função DateFormat

| Exemplo | Resultado |
| --- | --- |
| `Set DateFormat='M/D/YY'; //(US format)` | Esse uso da função `DateFormat` define a data como o formato dos EUA: mês/dia/ano. |
| `Set DateFormat='DD/MM/YY'; //(UK date format)` | Esse uso da função `DateFormat` define a data como o formato do Reino Unido: dia/mês/ano. |
| `Set DateFormat='YYYY/MM/DD'; //(ISO date format)` | Esse uso da função `DateFormat` define a data como o formato ISO: ano/mês/dia. |

## Configurações regionais

A menos que especificado de outra forma, os exemplos neste tópico usam o seguinte formato de data: MM/DD/AAAA. O formato de data é especificado na instrução `SET DateFormat` no seu script de carregamento de dados. A formatação de data padrão pode ser diferente no seu sistema devido às suas configurações regionais e outros fatores. Você pode alterar os formatos nos exemplos abaixo para atender às suas necessidades. Ou pode alterar os formatos no seu script de carregamento para corresponder a esses exemplos.

As configurações regionais padrão nos aplicativos são baseadas nas configurações regionais do sistema do computador ou servidor em que o Qlik Sense está instalado. Se o servidor Qlik Sense que você está acessando estiver definido como Suécia, o Editor de carregamento de dados usará as configurações regionais suecas para datas, horas e moedas. Essas configurações de formato regional não estão relacionadas ao idioma exibido na interface do usuário do Qlik Sense. O Qlik Sense será exibido no mesmo idioma do navegador que você está usando.

## Exemplo 1: Padrão de variáveis de sistema

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

#### Script de carregamento e resultados

Visão geral

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

O script de carregamento contém:

* Um conjunto de dados de datas.

* A função `DateFormat`, que usará o formato de data dos EUA.

Neste exemplo, um conjunto de dados é carregado em uma tabela chamada "`Transactions`". Inclui um `campo` date. A definição de `DateFormat` dos EUA é usada. Esse padrão será usado para conversão implícita de texto em data quando as datas de texto forem carregadas.

Script de carregamento

```

Set DateFormat='MM/DD/YYYY'; 

Transactions: 
LOAD 
date, 
month(date) as month, 
id, 
amount 
INLINE  
[ 
date,id,amount 
01/01/2022,1,1000 
02/01/2022,2,2123 
03/01/2022,3,4124 
04/01/2022,4,2431 
]; 						
```

Resultados

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

* `date`
* `month`

Crie esta medida:

`=sum(amount)`

Tabela de resultados

| date | mês | =sum(amount) |
| --- | --- | --- |
| 01/01/2022 | Jan | 1000 |
| 02/01/2022 | Fev | 2123 |
| 03/01/2022 | Mar | 4124 |
| 04/01/2022 | Abr | 2431 |

A definição de `DateFormat` MM/DD/AAAA é usada para conversão implícita de texto em datas, razão pela qual o campo `date` é interpretado corretamente como uma data. O mesmo formato é usado para exibir a data, conforme mostrado na tabela de resultados.

## Exemplo 2: Alterar variável do sistema

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

#### Script de carregamento e resultados

Visão geral

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

O script de carregamento contém:

* O mesmo conjunto de dados do exemplo anterior.

* A função `DateFormat`, que usará o formato ‘DD/MM/AAAA’.

Script de carregamento

```

SET DateFormat='DD/MM/YYYY'; 
Transactions: 
LOAD 
date, 
month(date) as month, 
id, 
amount 
INLINE  
[ 
date,id,amount 
01/01/2022,1,1000 
02/01/2022,2,2123 
03/01/2022,3,4124 
04/01/2022,4,2431 
]; 					
```

Resultados

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

* `date`
* `month`

Crie esta medida:

`=sum(amount)`

Tabela de resultados

| date | mês | =sum(amount) |
| --- | --- | --- |
| 01/01/2022 | Jan | 1000 |
| 02/01/2022 | Jan | 2123 |
| 03/01/2022 | Jan | 4124 |
| 04/01/2022 | Jan | 2431 |

Como a definição `DateFormat` foi configurada como "DD/MM/AAAA", você pode ver que os dois dígitos após o primeiro símbolo "/" foram interpretados como o mês, fazendo com que todos os registros sejam do mês de janeiro.

## Exemplo 3: Interpretação de datas

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

#### Script de carregamento e resultados

Visão geral

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

O script de carregamento contém:

* Um conjunto de dados com datas em formato numérico.

* A variável `DateFormat`, que usará o formato ‘DD/MM/AAAA’.

* A variável `date()`.

Script de carregamento

```

SET DateFormat='MM/DD/YYYY'; 
						
Transactions: 
Load 
date(numerical_date), 
month(date(numerical_date)) as month, 
id, 
amount 
Inline  
[ 
numerical_date,id,amount 
43254,1,1000 
43255,2,2123 
43256,3,4124 
43258,4,2431 
]; 						
```

Resultados

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

* `date`
* `month`

Crie esta medida:

`=sum(amount)`

Tabela de resultados

| date | mês | =sum(amount) |
| --- | --- | --- |
| 06/03/2022 | Jun | 1000 |
| 06/04/2022 | Jun | 2123 |
| 06/05/2022 | Jun | 4124 |
| 06/07/2022 | Jun | 2431 |

No script de carregamento, você usa a função `date()` para converter a data numérica em um formato de data. Como você não fornece um formato especificado como um segundo argumento na função, `DateFormat` é usado. Isso resulta no campo de data usando o formato ‘MM/DD/AAAA’.

## Exemplo 4: Formatação de datas estrangeiras

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

#### Script de carregamento e resultados

Visão geral

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

O script de carregamento contém:

* Um conjunto de dados de datas.

* A variável `DateFormat`, que usa o formato "DD/MM/AAAA", mas com barras de comentário excluídas.

Script de carregamento

```
// SET DateFormat='DD/MM/YYYY'; 

 
Transactions: 
Load 
date, 
month(date) as month, 
id, 
amount 
Inline  
[ 
date,id,amount 
22-05-2022,1,1000 
23-05-2022,2,2123 
24-05-2022,3,4124 
25-05-2022,4,2431 
]; 
```

Resultados

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

* `date`
* `month`

Crie esta medida:

`=sum(amount)`

Tabela de resultados

| date | mês | =sum(amount) |
| --- | --- | --- |
| 22-05-2022 | - | 1000 |
| 23-05-2022 | - | 2123 |
| 24-05-2022 | - | 4124 |
| 25-05-2022 | - | 2431 |

No script de carregamento inicial, o `DateFormat` que está sendo usado é o padrão ‘MM/DD/AAAA’. Como o campo `date` no conjunto de dados de transações não está nesse formato, ele não é interpretado como uma data. Isso é mostrado na tabela de resultados em que os valores do campo `month` são nulos.

Você pode verificar os tipos de dados interpretados no Visualizador do modelo de dados inspecionando as `propriedades` "Tags" do campo date:

Visualização da tabela `Transactions`. Observe as "Tags" para o campo `date` indicando que os dados de entrada textual não foram implicitamente convertidos em um carimbo de data/hora.

Visualização da tabela `Transactions`. Observe as "Tags" para o campo `date` indicando que os dados de entrada textual não foram implicitamente convertidos em um carimbo de data/hora.

Visualização da tabela `Transactions`Transactions. Observe as "Tags" para o campo `date`date indicando que os dados de entrada textual não foram implicitamente convertidos em um carimbo de data/hora.![Visualização da tabela "Transactions", com detalhes do campo "date" destacados.](https://help.qlik.com/pt-BR/sense/November2024/Subsystems/Hub/Content/Resources/Images/ui_dmv_TransactionsTablePreview1.png)

Isso pode ser resolvido ativando a variável de sistema `DateFormat`:

`// SET DateFormat='DD/MM/YYYY'`;

Remova as barras duplas e recarregue os dados.

Visualização da tabela `Transactions`. Observe as "Tags" para o campo `date` indicando que os dados de entrada textual foram implicitamente convertidos em um carimbo de data/hora.

Visualização da tabela `Transactions`. Observe as "Tags" para o campo `date` indicando que os dados de entrada textual foram implicitamente convertidos em um carimbo de data/hora.

Visualização da tabela `Transactions`Transactions. Observe as "Tags" para o campo `date`date indicando que os dados de entrada textual foram implicitamente convertidos em um carimbo de data/hora.![Visualização da tabela "Transactions" após modificar a variável de sistema DateFormat.](https://help.qlik.com/pt-BR/sense/November2024/Subsystems/Hub/Content/Resources/Images/ui_dmv_TransactionsTablePreview2.png)