No Qlik Sense, o valor booleano “true” é representado por -1, e o valor falso é representado por 0.
Em outras palavras, a função inquarter() divide o ano em quatro trimestres iguais entre 1º de janeiro e 31 de dezembro. Você pode usar o argumento first_month_of_year para alterar qual mês é considerado o primeiro em seu aplicativo, e os trimestres mudarão com base nesse argumento. A função base_date identifica qual trimestre deve ser usado como comparador da função. Finalmente, a função retorna um resultado booleano ao comparar valores de data com esse segmento trimestral.
Quando usar
A função inquarter() retorna um resultado booleano. Normalmente, esse tipo de função será usado como uma condição em um if expression. Isso retorna uma agregação ou cálculo que depende se uma data ocorreu no trimestre selecionado.
Por exemplo, a função inquarter() pode ser usada para identificar todos os equipamentos fabricados em um segmento trimestral com base nas datas em que o equipamento foi fabricado.
Argumentos
Argumento
Descrição
timestamp
A data que você deseja comparar com base_date.
base_date
Data que é usada para avaliar o trimestre.
period_no
O trimestre pode ser deslocado por period_no. period_no é um inteiro, em que o valor 0 indica o trimestre que contém base_date. Valores negativos em period_no indicam trimestres precedentes e valores positivos indicam trimestres sucessivos.
first_month_of_year
Se desejar trabalhar com anos (fiscais) que não comecem em janeiro, indique um valor entre 2 e 12 em first_month_of_year.
Você pode usar os seguintes valores para definir o primeiro mês do ano no argumento first_month_of_year:
Valores first_month_of_year
Month
Valor
Fevereiro
2
Março
3
Abril
4
Maio
5
Junho
6
Julho
7
Agosto
8
Setembro
9
Outubro
10
Novembro
11
Dezembro
12
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.
Exemplos de funções
Exemplo
Resultado
inquarter ('01/25/2013', '01/01/2013', 0)
Retorna TRUE
inquarter ('01/25/2013', '04/01/2013', 0)
Retorna FALSE
inquarter ('01/25/2013', '01/01/2013', -1)
Retorna FALSE
inquarter ('12/25/2012', '01/01/2013', -1)
Retorna TRUE
inquarter ('01/25/2013', '03/01/2013', 0, 3)
Retorna FALSE
inquarter ('03/25/2013', '03/01/2013', 0, 3)
Retorna TRUE
Exemplo 1: Nenhum argumento adicional
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 contendo um conjunto de transações em 2022 que é carregado em uma tabela denominada "Transactions".
Um carregamento anterior que contém a função inquarter() definida como o campo “in_quarter” e determina quais transações ocorreram no mesmo trimestre de 15 de maio de 2022.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:
date
in_quarter
Tabela de resultados
date
in_quarter
1/7/2022
0
1/19/2022
0
2/5/2022
0
2/28/2022
0
3/16/2022
0
4/1/2022
-1
5/7/2022
-1
5/16/2022
-1
6/15/2022
-1
6/26/2022
-1
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
O campo "in_quarter" é criado na instrução de carregamento anterior usando a função inquarter(). O primeiro argumento identifica qual campo está sendo avaliado. O segundo argumento é uma data codificada para 15 de maio que identifica qual trimestre definir como o comparador. Um period_no de 0 é o argumento final e garante que a função inquarter() não compare trimestres anteriores ou posteriores ao trimestre segmentado.
Qualquer transação que ocorra entre 1º de abril e o final de 30 de junho retorna um resultado booleano de TRUE.
Exemplo 2: period_no
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 contendo um conjunto de transações em 2022 que é carregado em uma tabela denominada "Transactions".
Um carregamento anterior que contém a função inquarter() definida como o campo “previous_quarter” e determina quais transações ocorreram no trimestre anterior ao trimestre de 15 de maio de 2022.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:
date
previous_qtr
Tabela de resultados
date
previous_qtr
1/7/2022
-1
1/19/2022
-1
2/5/2022
-1
2/28/2022
-1
3/16/2022
-1
4/1/2022
0
5/7/2022
0
5/16/2022
0
6/15/2022
0
6/26/2022
0
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
Usar -1 como o argumento period_no na função inquarter() desloca os limites do trimestre comparador para trás em um trimestre inteiro. 15 de maio cai no segundo trimestre do ano e, portanto, o segmento inicialmente equivale ao trimestre de 1º de abril a 30 de junho. period_no desloca esse segmento em três meses negativos e faz com que os limites de data se tornem de 1º de janeiro a 30 de março.
Portanto, qualquer transação que ocorra entre 1º de janeiro e 30 de março retornará um resultado booleano de TRUE.
Exemplo 3: first_month_of_year
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 contendo um conjunto de transações em 2022 que é carregado em uma tabela denominada "Transactions".
Um carregamento anterior que contém a função inquarter() definida como o campo “in_quarter” e determina quais transações ocorreram no mesmo trimestre de 15 de maio de 2022.
No entanto, neste exemplo, a política organizacional é que março seja o primeiro mês do exercício financeiro.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:
date
previous_qtr
Tabela de resultados
date
previous_qtr
1/7/2022
0
1/19/2022
0
2/5/2022
0
2/28/2022
0
3/16/2022
-1
4/1/2022
-1
5/7/2022
-1
5/16/2022
-1
6/15/2022
0
6/26/2022
0
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
Usar 3 como argumento first_month_of_year na função inquarter() define 1º de março como o início do ano e depois divide o ano em trimestres. Portanto, os segmentos trimestrais são de março a maio, junho a agosto, setembro a novembro, dezembro a fevereiro. A base_date de 15 de maio define o trimestre de março a maio como o trimestre comparador da função.
Portanto, qualquer transação que ocorra entre 1º de março e 31 de maio retornará um resultado booleano de TRUE.
Exemplo 4: Exemplo de objeto 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:
Um conjunto de dados contendo um conjunto de transações em 2022 que é carregado em uma tabela denominada "Transactions".
Um carregamento anterior que contém a função inquarter() definida como o campo “in_quarter” e determina quais transações ocorreram no mesmo trimestre de 15 de maio de 2022.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esse campo como uma dimensão:
date
Crie a medida a seguir para calcular se as transações ocorreram no mesmo trimestre de 15 de maio:
=inquarter(date,'05/15/2022', 0)
Tabela de resultados
date
in_quarter
1/7/2022
0
1/19/2022
0
2/5/2022
0
2/28/2022
0
3/16/2022
0
4/1/2022
-1
5/7/2022
-1
5/16/2022
-1
6/15/2022
-1
6/26/2022
-1
7/9/2022
0
7/22/2022
0
7/23/2022
0
7/27/2022
0
8/2/2022
0
8/8/2022
0
8/19/2022
0
9/26/2022
0
10/14/2022
0
10/29/2022
0
A medida “in_quarter” é criada no gráfico usando a função inquarter(). O primeiro argumento identifica qual campo está sendo avaliado. O segundo argumento é uma data codificada para 15 de maio que identifica qual trimestre definir como o comparador. Um period_no de 0 é o argumento final e garante que a função inquarter() não compare trimestres anteriores ou posteriores ao trimestre segmentado.
Qualquer transação que ocorra entre 1º de abril e o final de 30 de junho retorna um resultado booleano de TRUE.
Exemplo 5: Cenário
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 que é carregado em uma tabela denominada “Products”.
A tabela contém os seguintes campos:
product ID
product type
manufacture date
cost price
Foi identificado que, devido a um erro no equipamento, os produtos que foram fabricados no trimestre de 15 de maio de 2022 estavam com defeito. O usuário final deseja um gráfico que mostre, por nome do trimestre, o status de quais produtos fabricados estavam “com defeito” ou “sem defeito”, bem como o custo dos produtos fabricados naquele trimestre.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esse campo como uma dimensão:
=quartername(manufacture_date)
Crie as seguintes medidas:
=if(only(InQuarter(manufacture_date,makedate(2022,05,15),0)),'Defective','Faultless'), para identificar quais produtos estão com defeito e quais estão sem defeito usando a função inquarter().
=sum(cost_price), para mostrar a soma do custo de cada produto.
Faça o seguinte:
Defina o Formato numérico da medida como Dinheiro.
A função inquarter() retorna um valor booleano ao avaliar as datas de fabricação de cada um dos produtos. Para qualquer produto fabricado no trimestre que contenha 15 de maio, a função retorna inquarter() um valor booleano de TRUE e marca os produtos como “Defective”. Para qualquer produto que retorne um valor de FALSE e, portanto, não fabricado naquele trimestre, ela marca os produtos como “Faultless”.
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 - informe-nos como podemos melhorar!