No Qlik Sense, o valor booleano “true” é representado por -1, e o valor falso é representado por 0.
A função inquartertodate() divide o ano em quatro trimestres iguais entre 1º de janeiro e 31 de dezembro (ou o início do ano definido pelo usuário e sua data final correspondente). Usando a base_date, a função segmentará um trimestre específico, com base_date identificando o trimestre e a data máxima permitida para esse segmento de trimestre. Por fim, a função retorna um resultado booleano ao comparar os valores de data prescritos com esse segmento.
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.
Quando usar
A função inquartertodate() retorna um resultado booleano. Normalmente, esse tipo de função será usado como uma condição em uma expressão if. A função inquartertodate() seria usada para retornar uma agregação ou um cálculo, dependendo de se uma data avaliada ocorreu no trimestre, até e incluindo a data em questão.
Por exemplo, a função inquartertodate() pode ser usada para identificar todos os equipamentos fabricados em um trimestre até uma data específica.
Exemplos de funções
Exemplo
Resultado
inquartertodate('01/25/2013', '03/25/2013', 0)
Retorna TRUE, já que o valor de timestamp, 25/01/2013, está dentro do período de três meses de 01/01/2013 a 25/03/2013, no qual se encontra o valor de base_date, 25/03/2013.
inquartertodate('04/26/2013', '03/25/2013', 0)
Retorna FALSE, já que 26/04/2013 está fora do mesmo período do exemplo anterior.
inquartertodate('02/25/2013', '06/09/2013', -1)
Retorna TRUE, já que o valor de period_no, -1, desloca o período de pesquisa para um período de três meses (um quarto do ano). Isso torna o período de pesquisa de 01/01/2013 a 09/03/2013.
inquartertodate('03/25/2006', '04/15/2006', 0, 2)
Retorna TRUE, já que o valor de first_month_of_year está definido como 2, o que torna o período de pesquisa 01/02/2006 a 15/04/2006 em vez de 01/04/2006 a 15/04/2006.
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. Para obter mais informações, consulte Modificando configurações regionais para aplicativos e scripts.
As configurações regionais padrão nos aplicativos são baseadas no perfil do usuário. Essas configurações de formato regional não estão relacionadas ao idioma exibido na interface do usuário do Qlik Cloud. O Qlik Cloud será exibido no mesmo idioma do navegador que você está usando.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:
date
in_quarter_to_date
Tabela de resultados
date
in_quarter_to_date
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
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
O campo in_quarter_to_date é criado na instrução de carregamento anterior usando a função inquartertodate(). O primeiro argumento fornecido identifica qual campo está sendo avaliado. O segundo argumento é uma data codificada para 15 de maio, que é a base_date que identifica qual trimestre segmentar e que define o limite final desse segmento. Um period_no de 0 é o argumento final, o que significa que a função não está comparando trimestres anteriores ou posteriores ao trimestre segmentado.
Qualquer transação que ocorra entre 1º de abril e 15 de maio retorna um resultado booleano de TRUE. As transações com datas de 16 de maio e posteriores retornarão FALSE, assim como qualquer transação antes de 1º de abril.
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:
O mesmo conjunto de dados e cenário do primeiro exemplo.
A criação de um campo, previous_qtr_to_date, que determina quais transações ocorreram um trimestre inteiro antes do término do segmento de trimestre em 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_to_date
Tabela de resultados
date
previous_qtr_to_date
1/7/2022
-1
1/19/2022
-1
2/5/2022
-1
2/28/2022
0
3/16/2022
0
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
Um valor de period_no -1 indica que a função inquartertodate () compara o segmento de trimestre de entrada com o trimestre anterior. 15 de maio cai no segundo trimestre do ano e, portanto, o segmento inicialmente equivale a período entre 1º de abril e 15 de maio. period_no então desloca esse segmento para três meses antes, fazendo com que os limites de data se tornem de 1º de janeiro a 15 de fevereiro.
Portanto, qualquer transação que ocorra entre 1º de janeiro e 15 de fevereiro 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:
O mesmo conjunto de dados e cenário do primeiro exemplo.
A criação de um campo, in_quarter_to_date, que determina quais transações ocorreram no mesmo trimestre até 15 de maio de 2022.
Neste exemplo, definimos março como o primeiro mês do ano fiscal.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:
date
in_quarter_to_date
Tabela de resultados
date
in_quarter_to_date
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
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
Usando 3 como argumento first_month_of_year na função inquartertodate(), a função começa o ano em 1º de março e, em seguida, divide o ano em trimestres. Portanto, os segmentos de trimestre são:
Março a maio
Junho a agosto
Setembro a novembro
Dezembro a fevereiro
A base_date de 15 de maio então segmenta o trimestre de março a maio, estabelecendo seu limite final como 15 de maio.
Portanto, qualquer transação que ocorra entre 1º de março e 15 de maio retornará um resultado booleano de TRUE, enquanto as transações com datas fora desses limites retornarão um valor de FALSE.
Exemplo 4: Exemplo de objeto de gráfico
Visão geral
Abra o editor de carregamento de dados e adicione o script de carregamento abaixo em uma nova guia.
O script de carregamento contém o mesmo conjunto de dados e cenário do primeiro exemplo. No entanto, neste exemplo, o conjunto de dados inalterado é carregado no aplicativo. O cálculo que determina quais transações ocorreram no mesmo trimestre de 15 de maio é criado como uma medida no objeto de gráfico.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esse campo como uma dimensão:date.
Crie a seguinte medida:
=inquartertodate(date,'05/15/2022', 0)
Tabela de resultados
date
=inquartertodate(date,'05/15/2022', 0)
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
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
A medida in_quarter_to_date é criada em um objeto de gráfico usando a função inquartertodate(). O primeiro argumento é o campo de data que está sendo avaliado. O segundo argumento é uma data codificada para 15 de maio, que é a base_date que identifica qual trimestre segmentar e que define o limite final desse segmento. Um period_no de 0 é o argumento final, o que significa que a função não está comparando trimestres anteriores ou posteriores ao trimestre segmentado.
Qualquer transação que ocorra entre 1º de abril e 15 de maio retorna um resultado booleano de TRUE. As transações com datas de 16 de maio e posteriores retornarão FALSE, assim como qualquer transação antes de 1º de abril.
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.
Informações sobre o ID do produto, data de fabricação e preço de custo.
Em 15 de maio de 2022, um erro de equipamento foi identificado no processo de fabricação e resolvido. Os produtos que foram fabricados naquele trimestre até essa data estão com defeito. O usuário final deseja um objeto de gráfico que mostre, por nome de trimestre, o status que indica se o produto está "com defeito" ou "sem defeito", bem como o custo dos produtos fabricados naquele trimestre até o momento.
A função inquartertodate() retorna um valor booleano ao avaliar as datas de fabricação de cada um dos produtos. Para os casos que retornam um valor booleano de TRUE, ela marca os produtos como ‘Defective’. Para qualquer produto que retorne um valor de FALSE e, portanto, não tenha sido fabricado no trimestre até e incluindo o dia 15 de maio, 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!