Especifica o dia no qual inicia a semana. Se omitido, o valor da variávelFirstWeekDay será usado.
Os valores possíveis first_week_day são 0 para segunda-feira, 1 para terça, 2 para quarta-feira, 3 para quinta-feira, 4 para sexta-feira, 5 para sábado e 6 para domingo.
Para obter mais informações sobre a variável de sistema, consulte FirstWeekDay.
broken_weeks
Se você não especificar broken_weeks, o valor da variável BrokenWeeks será usado para definir se as semanas são quebradas ou não.
Para obter mais informações sobre a variável de sistema, consulte
BrokenWeeks
reference_day
Se você não especificar reference_day, o valor da variável ReferenceDay será usado para definir qual dia de janeiro definir como dia de referência para definir a semana 1. Por padrão, as funções do Qlik Sense usam 4 como o dia de referência. Isso significa que a semana 1 deve conter 4 de janeiro, ou dito de outra forma, que a semana 1 deve sempre ter pelo menos 4 dias em janeiro.
Para obter mais informações sobre a variável de sistema, consulte
ReferenceDay
A função weekyear() determina em qual semana do ano uma data se enquadra. Em seguida, ele retorna o ano correspondente a esse número da semana.
Se BrokenWeeks estiver definido como 0 (false), weekyear() retornará o mesmo que year().
Diagrama do intervalo da função weekyear()
No entanto, se variável de sistema BrokenWeeks estiver configurada para usar semanas ininterruptas, a semana 1 deverá conter apenas um determinado número de dias em janeiro com base no valor especificado na variável de sistema ReferenceDay.
Por exemplo, se um valor ReferenceDay de 4 for usado, a semana 1 deverá incluir pelo menos quatro dias em janeiro. É possível que a semana 1 inclua datas em dezembro do ano anterior ou que o número da última semana de um ano inclua datas em janeiro do ano seguinte. Em situações como essa, a função weekyear() retornará um valor diferente para a função year().
Diagrama do intervalo da função weekyear() ao usar semanas ininterruptas
Quando usar
A função weekyear() é útil quando você deseja comparar agregações por anos. Por exemplo, se você quiser ver o total de vendas de produtos por ano. A função weekyear() é escolhida no lugar de year() quando o usuário deseja manter a consistência com a variável de sistema BrokenWeeks no aplicativo.
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 onde 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 Qlik Sense interface do usuário. Qlik Sense será exibido no mesmo idioma do navegador que você está usando.
Exemplos de funções
Exemplo
Resultado
weekyear('12/30/1996',0,0,4)
Retorna 1997, porque a semana 1 de 1997 começa em 30/12/1996
weekyear('01/02/1997',0,0,4)
Retorna 1997
weekyear('12/28/1997',0,0,4)
Retorna 1997
weekyear('12/30/1997',0,0,4)
Retorna 1998, porque a semana 1 de 1998 começa em 29/12/1997
weekyear('01/02/1999',0,0,4)
Retorna 1998, porque a semana 53 de 1998 termina em 03/01/1999
Retorna um número inteiro que representa o ano em que a expressão é interpretada como uma data, de acordo com a interpretação de número padrão.
Exemplo 1 - Semanas interrompidas
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 contendo um conjunto de transações da última semana de 2020 e da primeira semana de 2021 que é carregado em uma tabela denominada "Transactions",
A variável BrokenWeeks que é definida como 1.
Um carregamento anterior que contém o seguinte:
A weekyear() função, definida como o campo 'week_year' que retorna o ano em que as transações ocorreram.
A função week(), definida como o campo "week", que mostra o número da semana de cada data da transação.
Script de carregamento
SET BrokenWeeks=1;
Transactions:
Load
*,
week(date) as week,
weekyear(date) as week_year
;
Load
*
Inline
[
id,date,amount
8176,12/28/2020,19.42
8177,12/29/2020,23.80
8178,12/30/2020,82.06
8179,12/31/2020,40.56
8180,01/01/2021,37.23
8181,01/02/2021,17.17
8182,01/03/2021,88.27
8183,01/04/2021,57.42
8184,01/05/2021,67.42
8185,01/06/2021,23.80
8186,01/07/2021,82.06
];
Resultados
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:
id
date
week
week_year
Tabela de resultados
ID
Data
semana
week_year
8176
12/28/2020
53
2020
8177
12/29/2020
53
2020
8178
12/30/2020
53
2020
8179
12/31/2020
53
2020
8180
01/01/2021
1
2021
8181
01/02/2021
1
2021
8182
01/03/2021
2
2021
8183
01/04/2021
2
2021
8184
01/05/2021
2
2021
8185
01/06/2021
2
2021
8186
01/07/2021
2
2021
O campo "week_year" é criado na instrução de carregamento anterior usando a função weekyear() e transmitindo o campo de data como o argumento da função.
A variável de sistema BrokenWeeks está definida como 1, significando que o aplicativo usa semanas interruptas. A semana 1 começa em 1º de janeiro.
Diagrama do intervalo da função weekyear() com o uso de semanas interrompidas
A transação 8181 ocorre em 2 de janeiro, que faz parte da semana 1. Portanto, retorna o valor de 2021 para o campo ‘week_year’.
Exemplo 2 - Semanas ininterruptas
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 contendo um conjunto de transações da última semana de 2020 e da primeira semana de 2021 que é carregado em uma tabela denominada "Transactions".
A variável BrokenWeeks, que está definida como 0.
Um carregamento anterior que contém o seguinte:
A função weekyear(), definida como o campo "week_year", que retorna o ano em que as transações ocorreram.
A função week(), definida como o campo "week", que mostra o número da semana de cada data da transação.
No entanto, neste exemplo, a política da empresa é usar semanas ininterruptas.
Script de carregamento
SET BrokenWeeks=0;
Transactions:
Load
*,
week(date) as week,
weekyear(date) as week_year
;
Load
*
Inline
[
id,date,amount
8176,12/28/2020,19.42
8177,12/29/2020,23.80
8178,12/30/2020,82.06
8179,12/31/2020,40.56
8180,01/01/2021,37.23
8181,01/02/2021,17.17
8182,01/03/2021,88.27
8183,01/04/2021,57.42
8184,01/05/2021,67.42
8185,01/06/2021,23.80
8186,01/07/2021,82.06
];
Resultados
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:
id
date
week
week_year
Tabela de resultados
ID
Data
semana
week_year
8176
12/28/2020
53
2020
8177
12/29/2020
53
2020
8178
12/30/2020
53
2020
8179
12/31/2020
53
2020
8180
01/01/2021
53
2020
8181
01/02/2021
53
2020
8182
01/03/2021
1
2021
8183
01/04/2021
1
2021
8184
01/05/2021
1
2021
8185
01/06/2021
1
2021
8186
01/07/2021
1
2021
A variável de sistema BrokenWeeks está definida como 0, significando que o aplicativo usa semanas ininterruptas. Portanto, a semana 1 não precisa começar em 1º de janeiro.
A semana 53 de 2020 continua até o final de 2 de janeiro de 2021, com a semana 1 de 2020 começando no domingo, 3 de janeiro de 2021.
Diagrama do intervalo da função weekyear() com o uso de semanas ininterruptas
A transação 8181 ocorre em 2 de janeiro, que faz parte da semana 1. Portanto, retorna um valor de 2021 para o campo ‘week_year’.
Exemplo 3: Exemplo de objeto de gráfico
Visão geral
São usados o mesmo conjunto de dados e cenário do primeiro exemplo.
No entanto, neste exemplo, o conjunto de dados permanece inalterado e é carregado no aplicativo. O cálculo que retorna o número da semana do ano em que as transações ocorreram é criado como uma medida em um gráfico no aplicativo.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:
id
date
Para calcular a semana em que uma transação ocorre, crie a seguinte medida:
=week(date)
Para calcular o ano em que uma transação ocorre com base no número da semana, crie a seguinte medida:
=weekyear(date)
Tabela de resultados
ID
Data
semana
week_year
8176
12/28/2020
53
2020
8177
12/29/2020
53
2020
8178
12/30/2020
53
2020
8179
12/31/2020
53
2020
8180
01/01/2021
1
2021
8181
01/02/2021
1
2021
8182
01/03/2021
2
2021
8183
01/04/2021
2
2021
8184
01/05/2021
2
2021
8185
01/06/2021
2
2021
8186
01/07/2021
2
2021
O campo "week_year" é criado na instrução de carregamento anterior usando a função weekyear() e transmitindo o campo de data como o argumento da função.
A variável de sistema BrokenWeeks está definida como 1, significando que o aplicativo usa semanas interrompidas. A semana 1 começa em 1º de janeiro.
Diagrama do intervalo da função weekyear() com o uso de semanas interrompidas
A transação 8181 ocorre em 2 de janeiro, que faz parte da semana 1. Portanto, retorna o valor de 2021 para o campo ‘week_year’.
Exemplo 4: Cenário
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 contendo um conjunto de transações da última semana de 2020 e da primeira semana de 2021 que é carregado em uma tabela denominada "Transactions".
A variável BrokenWeeks, que está definida como 0. Isso significa que o aplicativo usará semanas ininterruptas.
A variável ReferenceDay, que está definida como 2. Isso significa que o ano começará em 2 de janeiro e conterá no mínimo dois dias em janeiro.
A variável FirstWeekDay, que está definida como 1. Isso significa que o primeiro dia da semana será terça-feira.
A política da empresa é usar semanas interrompidas. O usuário final gostaria de um gráfico que apresentasse o total de vendas por ano. O aplicativo usa semanas ininterruptas, com a semana 1 contendo no mínimo dois dias em janeiro.
Script de carregamento
SET BrokenWeeks=0;
SET ReferenceDay=2;
SET FirstWeekDay=1;
Transactions:
Load
*
Inline
[
id,date,amount
8176,12/28/2020,19.42
8177,12/29/2020,23.80
8178,12/30/2020,82.06
8179,12/31/2020,40.56
8180,01/01/2021,37.23
8181,01/02/2021,17.17
8182,01/03/2021,88.27
8183,01/04/2021,57.42
8184,01/05/2021,67.42
8185,01/06/2021,23.80
8186,01/07/2021,82.06
];
Resultados
Carregue os dados e abra uma pasta. Crie uma nova tabela.
Para calcular o ano em que uma transação ocorre com base no número da semana, crie a seguinte medida:
=weekyear(date)
Para calcular o total de vendas, crie a seguinte medida:
sum(amount)
Defina o Formato numérico da medida como Dinheiro.
Tabela de resultados
weekyear(date)
=sum(amount)
2020
19.42
2021
373.37
Esta página ajudou?
Se você encontrar algum problema com esta página ou seu conteúdo – um erro de digitação, uma etapa ausente ou um erro técnico – avise-nos!