No Qlik Sense, o valor booleano “true” é representado por -1, e o valor falso é representado por 0.
A função inyeartodate() segmentará uma parte específica do ano com a base_date, identificando a data máxima permitida para esse segmento de ano. Em seguida, a função avalia se um campo ou valor de data se enquadra nesse segmento e retorna um resultado booleano.
Argumentos
Argumento
Descrição
timestamp
A data que você deseja comparar com base_date.
base_date
Data que é usada para avaliar o ano.
period_no
O ano pode ser deslocado por period_no. period_no é um inteiro, em que o valor 0 indica o ano que contém base_date. Valores negativos em period_no indicam anos precedentes e valores positivos indicam anos 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 inyeartodate() retorna um resultado booleano. Normalmente, esse tipo de função será usado como uma condição em uma expressão if. Isso retornaria uma agregação ou um cálculo dependendo de uma data avaliada ter ocorrido no ano até e incluindo a data em questão.
Por exemplo, a função inyeartodate() pode ser usada para identificar todos os equipamentos fabricados em um ano até uma data específica.
Esses exemplos usam o formato de data MM/DD/AAAA. O formato de data é especificado no comando SET DateFormat na parte superior do seu script de carregamento de dados. Altere o formato nos exemplos para atender às suas necessidades.
Exemplos de funções
Exemplo
Resultado
inyeartodate ('01/25/2013', '02/01/2013', 0)
Retorna TRUE.
inyeartodate ('01/25/2012', '01/01/2013', 0)
Retorna FALSE.
inyeartodate ('01/25/2012', '02/01/2013', -1)
Retorna TRUE.
inyeartodate ('11/25/2012', '01/31/2013', 0, 4)
Returna TRUE. O valor de timestamp cai no ano fiscal que começa no quarto mês e antes do valor de base_date.
inyeartodate ('3/31/2013', '01/31/2013', 0, 4 )
Returna FALSE. Comparado com o exemplo anterior, o valor de timestamp ainda está dentro do ano fiscal, mas é depois que o valor de base_date, assim, fica fora de parte do ano.
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_year_to_date
Tabela de resultados
date
in_year_to_date
01/13/2020
0
02/26/2020
0
03/27/2020
0
04/16/2020
0
05/21/2020
0
06/14/2020
0
08/07/2020
0
09/05/2020
0
01/22/2021
-1
02/03/2021
-1
03/17/2021
-1
04/23/2021
-1
05/04/2021
-1
06/30/2021
-1
07/26/2021
-1
07/27/2021
0
06/06/2022
0
07/18/2022
0
11/14/2022
0
12/12/2022
0
O campo in_year_to_date é criado na instrução de carregamento anterior usando a função inyeartodate(). O primeiro argumento fornecido identifica qual campo está sendo avaliado.
O segundo argumento é uma data codificada para 26 de julho de 2021, que é a base_date que identifica o limite final do segmento de ano. O period_no de 0 é o argumento final, o que significa que a função não está comparando anos anteriores ou posteriores ao ano segmentado.
Qualquer transação que ocorra entre 1º e 26 de janeiro retorna um resultado booleano de TRUE. Datas de transações anteriores a 2021 e após 26 de julho de 2021 retornam FALSE.
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_year_to_date, que determina quais transações ocorreram um ano inteiro antes do término do segmento de ano em 26 de julho de 2021.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:
date
previous_year_to_date
Tabela de resultados
date
previous_year_to_date
01/13/2020
-1
02/26/2020
-1
03/27/2020
-1
04/16/2020
-1
05/21/2020
-1
06/14/2020
-1
08/07/2020
0
09/05/2020
0
01/22/2021
0
02/03/2021
0
03/17/2021
0
04/23/2021
0
05/04/2021
0
06/30/2021
0
07/26/2021
0
07/27/2021
0
06/06/2022
0
07/18/2022
0
11/14/2022
0
12/12/2022
0
Um valor de period_no -1 indica que a função inyeartodate () compara o segmento de trimestre de entrada com o ano anterior. Com uma data de entrada de 26 de julho de 2021, o segmento de 1º de janeiro de 2021 a 26 de julho de 2021 foi inicialmente identificado como o acumulado do ano. period_no então desloca esse segmento em um ano inteiro antes, fazendo com que os limites de data se tornem de 1º de janeiro a 26 de julho de 2020.
Portanto, qualquer transação que ocorra entre 1º de janeiro e 26 de julho de 2020 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_year_to_date, que determina quais transações ocorreram no mesmo ano até 26 de julho de 2021.
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_year_to_date
Tabela de resultados
date
in_year_to_date
01/13/2020
0
02/26/2020
0
03/27/2020
0
04/16/2020
0
05/21/2020
0
06/14/2020
0
08/07/2020
0
09/05/2020
0
01/22/2021
0
02/03/2021
0
03/17/2021
-1
04/23/2021
-1
05/04/2021
-1
06/30/2021
-1
07/26/2021
-1
07/27/2021
0
06/06/2022
0
07/18/2022
0
11/14/2022
0
12/12/2022
0
Usando 3 como o argumento first_month_of_year na função inyeartodate(), a função começa o ano em 1º de março. A base_date de 26 de julho de 2021 define a data de término para esse segmento de ano.
Portanto, qualquer transação que ocorra entre 1º de março e 26 de julho de 2021 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 ano até 26 de julho de 2021 é criado como uma medida em um objeto de gráfico no aplicativo.
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esse campo como uma dimensão:date.
Crie a seguinte medida:
=inyeartodate(date,'07/26/2021', 0)
Tabela de resultados
date
=inyeartodate(date,'07/26/2021', 0)
01/13/2020
0
02/26/2020
0
03/27/2020
0
04/16/2020
0
05/21/2020
0
06/14/2020
0
08/07/2020
0
09/05/2020
0
01/22/2021
-1
02/03/2021
-1
03/17/2021
-1
04/23/2021
-1
05/04/2021
-1
06/30/2021
-1
07/26/2021
-1
07/27/2021
0
06/06/2022
0
07/18/2022
0
11/14/2022
0
12/12/2022
0
A medida in_year_to_date é criada no objeto de gráfico usando a função inyeartodate(). O primeiro argumento fornecido identifica qual campo está sendo avaliado. O segundo argumento é uma data codificada para 26 de julho de 2021, que é a base_date que identifica o limite final do segmento de ano comparador. O period_no de 0 é o argumento final, o que significa que a função não está comparando anos anteriores ou posteriores ao ano segmentado.
Qualquer transação que ocorra entre 1º de janeiro e 26 de julho de 2021 retorna um resultado booleano de TRUE. Datas da transação antes de 2021 e depois de 26 de julho de 2021 retornam FALSE.
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 ID do produto, tipo de produto, data de fabricação e preço de custo.
O usuário final gostaria de um objeto de gráfico que exiba, por tipo de produto, o custo dos produtos fabricados em 2021 até 26 de julho.
A função inyeartodate() retorna um valor booleano ao avaliar as datas de fabricação de cada um dos produtos. Para qualquer produto fabricado em 2021 antes de 27 de julho, a função inyeartodate() retorna um valor booleano de TRUE e soma o cost_price.
O produto D é o único que também foi fabricado após 26 de julho de 2021. A entrada com product_ID 8203 foi fabricada em 27 de dezembro e custou $ 25,12. Portanto, esse custo não foi incluído no total do Produto D no objeto de gráfico.
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!