# daynumberofyear Função de script e de gráfico

Essa função calcula o número do dia do ano que estiver em um carimbo de data/hora. O cálculo é feito a partir do primeiro milissegundo do primeiro dia do ano, mas o primeiro mês pode ser deslocado.

Sintaxe:

DayNumberOfYear(timestamp[,start\_month])

Tipo de dados de retorno: inteiro

Argumentos

| Argumento | Descrição |
| --- | --- |
| timestamp | A data ou o carimbo de data/hora a ser avaliado. |
| start\_month | Ao especificar um start\_month entre 2 e 12 (1, se omitido), o início do ano pode avançar para o primeiro dia de qualquer mês. Por exemplo, para trabalhar com um ano fiscal que inicia em 1º de março, especifique start\_month = 3. |

Estes exemplos usam o formato de data DD/MM/YYYY. O formato de data é especificado no comando SET DateFormat na parte superior do seu script de carga de dados. Altere o formato nos exemplos para atender às suas necessidades.

Exemplos de funções

| Exemplo | Resultado |
| --- | --- |
| `DayNumberOfYear( '12/09/2014' )` | Retorna 256, o número do dia contado a partir do primeiro do ano. |
| `DayNumberOfYear( '12/09/2014',3 )` | Retorna 196, o número do dia contado a partir de 1 de março. |

## Exemplo 1 – Início do ano em janeiro (script)

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/daynumberofyear.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 simples contendo uma lista de datas, que é carregada em uma tabela chamada `Calendar`. A variável de sistema `DateFormat` padrão MM/DD/AAAA é usada.

* Um carregamento anterior que cria um campo adicional, chamado `daynryear`, usando a função `DayNumberOfYear()`.

Além da data, nenhum parâmetro adicional é fornecido para a função.

Script de carregamento

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

Calendar: 
Load 
	date, 
	DayNumberOfYear(date) as daynryear
	;
Load
date
Inline
[ 
date
01/01/2022
01/10/2022
01/31/2022
02/01/2022
02/10/2022
06/30/2022
07/26/2022
10/31/2022
11/01/2022
12/31/2022
];				
```

Resultados

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

* `date`

* `daynryear`

Tabela de resultados

| data | daynryear |
| --- | --- |
| 01/01/2022 | 1 |
| 01/10/2022 | 10 |
| 01/31/2022 | 31 |
| 02/01/2022 | 32 |
| 02/10/2022 | 41 |
| 06/30/2022 | 182 |
| 07/26/2022 | 208 |
| 10/31/2022 | 305 |
| 11/01/2022 | 306 |
| 12/31/2022 | 366 |

O primeiro dia do ano é 1º de janeiro, pois um segundo argumento não foi transmitido para a função `DayNumberOfYear()`.

1º de janeiro é o 1º dia do trimestre, enquanto 1º de fevereiro é o 32º dia do ano. O dia 30 de junho é o 182º, enquanto 31 de dezembro é o 366º e último dia do ano.

## Exemplo 2 – Início do ano de novembro (script)

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/DateAndTimeFunctions/daynumberofyear.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 primeiro exemplo.

* A variável de sistema `DateFormat` padrão MM/DD/AAAA é usada.

* Um argumento `start_month` que começa em 1º de novembro. Isso define o exercício como 1º de novembro.

Script de carregamento

```

SET DateFormat='MM/DD/YYYY'; 

Calendar: 
Load 
	date, 
	DayNumberOfYear(date,11) as daynryear
	;
Load
date
Inline
[ 
date
01/01/2022
01/10/2022
01/31/2022
02/01/2022
02/10/2022
06/30/2022
07/26/2022
10/31/2022
11/01/2022
12/31/2022
];				
```

Resultados

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

* `date`

* `daynryear`

Tabela de resultados

| data | daynryear |
| --- | --- |
| 01/01/2022 | 62 |
| 01/10/2022 | 71 |
| 01/31/2022 | 92 |
| 02/01/2022 | 93 |
| 02/10/2022 | 102 |
| 06/30/2022 | 243 |
| 07/26/2022 | 269 |
| 10/31/2022 | 366 |
| 11/01/2022 | 1 |
| 12/31/2022 | 61 |

O primeiro dia do ano é 1º de novembro, pois o segundo argumento transmitido para a função `DayNumberOfYear()` foi 11.

1º de janeiro é o 1º dia do trimestre, enquanto 1º de fevereiro é o 32º dia do ano. O dia 30 de junho é o 182º, enquanto 31 de dezembro é o 366º e último dia do ano.

## Exemplo 3 – Início do ano em janeiro (gráfico)

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

#### Script de carregamento e 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 guia.

O script de carregamento contém:

* O mesmo conjunto de dados do primeiro exemplo.

* A variável de sistema `DateFormat` padrão MM/DD/AAAA é usada.

No entanto, neste exemplo, o conjunto de dados inalterado é carregado no aplicativo. O valor do dia do trimestre é calculado por meio de uma medida em um objeto de gráfico.

Script de carregamento

```
SET DateFormat='MM/DD/YYYY';
						
Calendar:
Load
date
Inline
[
date
01/01/2022
01/10/2022
01/31/2022
02/01/2022
02/10/2022
06/30/2022
07/26/2022
10/31/2022
11/01/2022
12/31/2022
]; 
```

Resultados

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

Crie a seguinte medida:

`=daynumberofyear(date)`

Tabela de resultados

| data | =daynumberofyear(date) |
| --- | --- |
| 01/01/2022 | 1 |
| 01/10/2022 | 10 |
| 01/31/2022 | 31 |
| 02/01/2022 | 32 |
| 02/10/2022 | 41 |
| 06/30/2022 | 182 |
| 07/26/2022 | 208 |
| 10/31/2022 | 305 |
| 11/01/2022 | 306 |
| 12/31/2022 | 366 |

O primeiro dia do ano é 1º de janeiro, pois um segundo argumento não foi transmitido para a função `DayNumberOfYear()`.

1º de janeiro é o 1º dia do ano, enquanto 1º de fevereiro é o 32º dia do ano. O dia 30 de junho é o 182º, enquanto 31 de dezembro é o 366º e último dia do ano.

## Exemplo 4 – Início do ano em novembro (gráfico)

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

#### Script de carregamento e 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 guia.

O script de carregamento contém:

* O mesmo conjunto de dados do primeiro exemplo.

* A variável de sistema DateFormat padrão MM/DD/AAAA é usada.

* O exercício vai de 1º de novembro a 31 de outubro.

No entanto, neste exemplo, o conjunto de dados inalterado é carregado no aplicativo. O valor do dia do ano é calculado por meio de uma medida em um objeto de gráfico.

Script de carregamento

```

SET DateFormat='MM/DD/YYYY';
Calendar:
Load
date
Inline
[
date
01/01/2022
01/10/2022
01/31/2022
02/01/2022
02/10/2022
06/30/2022
07/26/2022
10/31/2022
11/01/2022
12/31/2022
]; 
```

Resultados

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

Crie a seguinte medida:

=daynumberofyear(date)

Tabela de resultados

| data | =daynumberofyear(date,11) |
| --- | --- |
| 01/01/2022 | 62 |
| 01/10/2022 | 71 |
| 01/31/2022 | 92 |
| 02/01/2022 | 93 |
| 02/10/2022 | 102 |
| 06/30/2022 | 243 |
| 07/26/2022 | 269 |
| 10/31/2022 | 366 |
| 11/01/2022 | 1 |
| 12/31/2022 | 61 |

O primeiro dia do ano é 1º de novembro, pois o segundo argumento transmitido para a função DayNumberOfYear() foi 11.

O exercício opera entre novembro e outubro. Isso é mostrado na tabela de resultados, onde 1º de novembro é o 1º dia do ano, enquanto 31 de outubro é o 366º e último dia do ano.