Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
rodrigo_rocha
Creator
Creator

Contar Linhas!!

Saudações galera!!

Tenho a tabela abaixo com os seguintes dados:

Sem título.png

Onde esta contornado em vermelho, é uma coluna que fiz com uma formula informando se o período esta vencido ou não.

O que eu preciso é contar esta coluna com cada um dos registros, ou seja, informar quantos estão OK, em Atenção e Vencido. Neste exemplo acima seria o correto informar a quantidade abaixo:

Atenção: 9

OK: 10

Vencido: 6

Pode parecer uma duvida simples mas já tentei de tudo por aqui!! Poderiam me ajudar por favor?

Rodrigo Ramos Rocha

1 Solution

Accepted Solutions
Clever_Anjos
Employee
Employee

Vamos tentar primeiro com essa para "Vencidos"

=Sum(

Aggr(

If(

today()-max(avaliacao_gsd_data)-60 > 0 AND

Today()-admissao_data > 90

,1,0),

funcionario_cpf

)

)

View solution in original post

15 Replies
Clever_Anjos
Employee
Employee

Poderia dar mais informações?

Pelo menos a expressão que usou para calcular

Como obter ajuda? Leia antes de postar

Thiago_Justen_

Bom dia Rodrigo,

Considere o seguinte script:

CONTAGEM:

LOAD

*,

    If(DIAS_VENCER>=0,'VENCIDO',If(DIAS_VENCER<=-15,'OK','ATENÇÃO')) AS VERIFICADOR;

/*AQUI EXECUTO O TESTE UTILIZANDO A REGRA:

DIAS PARA VENCER -> MENOR OU IGUAL A -15 = OK;

DIAS PARA VENCER -> MAIOR OU IGUAL A 0= VENCIDO;

DIAS PARA VENCER -> MAIOR QUE -15 E MENOR QUE 0 = ATENÇÃO;

*/

LOAD * Inline [

     COD_PESSOA,DIAS_VENCER

    1,-8

    2,0

    3,15

    4,-5

    5,-2

    6,4

    7,-20

]

Imaginando que no teu caso seja possível utilizar essa verificação direto no script. Nesse caso, bastaria aplicar as seguintes fórmulas nos KPI's (ou objetos que você julgue melhor):

ATENÇÃO:

COUNT({<VERIFICADOR={'ATENÇÃO'}>}distinct COD_PESSOA)

OK:

COUNT({<VERIFICADOR={'OK'}>}distinct COD_PESSOA)

VENCIDOS:

COUNT({<VERIFICADOR={'VENCIDO'}>}distinct COD_PESSOA)

RESULTADO:

Capturar.PNG

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
rodrigo_rocha
Creator
Creator
Author

Blz Clever!! Peço desculpas pela falta de informações.

A formula que eu utilizei foi a seguinte:

if(Today()-admissao_data > '90',

    if(today()-max(avaliacao_gsd_data)-60 > 0, 'VENCIDO',

          if(today()-max(avaliacao_gsd_data)-60 > -15, 'ATENÇÂO', 'OK')),

    if(today()-max(avaliacao_gsd_data)-30 > 0, 'VENCIDO',

        if(today()-max(avaliacao_gsd_data)-30 > -15, 'ATENÇÂO', 'OK')))

O primeiro IF esta reconhecendo os funcionarios que não estão mais em experiencia, ou seja, os que tem mais de 90 dias de empresa. Assim ele entra em outro IF no qual ele pega a ultima data de avaliação (por isso da função MAX) e diminui por 60, pois é a quantidade de dias que é preciso realizar a avaliação, de 2 em 2 meses. Caso o resultado for maior que 0 significa que o periodo ja passou e esta vencido o tempo de realização, caso seja maior que -15 entra em um periodo de atenção para programar a avaliação caso contrario, esta OK.

Caso o funcionário ainda tenha um contrato de experiencia, a unica diferença é a subtração da ultima data de avaliação que ao invés de 60 seria 30, pois a avaliação é realizada de mês em mês.


Desde já agradeço!!

Clever_Anjos
Employee
Employee

Bom e qual o nome do campo do funcionario?

Você precisa de três formulas, correto? vai colocar isso onde?

rodrigo_rocha
Creator
Creator
Author

Olá Thiago!!

Já tentei colocar esta condição diretamente no script, porém acusa um erro na hora de executar pelo fato de ter a função MAX() conforme abaixo:

if(Today()-admissao_data > '90',

    if(today()-max(avaliacao_gsd_data)-60 > 0, 'VENCIDO',

          if(today()-max(avaliacao_gsd_data)-60 > -15, 'ATENÇÂO', 'OK')),

    if(today()-max(avaliacao_gsd_data)-30 > 0, 'VENCIDO',

          if(today()-max(avaliacao_gsd_data)-30 > -15, 'ATENÇÂO', 'OK')))

Eu preciso dessa função, pois ai o qlik pegaria a ultima data de avaliação.

Teria outra maneira de pegar esta data com outra função??

Thiago_Justen_

Rodrigo,

Você cria a coluna "Dias Para Vencer" no script?

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
rodrigo_rocha
Creator
Creator
Author

Não entendi Clever. É preciso do nome do campo do Funcionario?

Irei utilizar essas formulas em um KPI para cada, mostrando a quantidade.

Clever_Anjos
Employee
Employee

Sim, o nome do campo do funcionario

Thiago_Justen_

Considerando que você tenha criado a coluna Dias Para Vencer no script...

Pode usar então direto no set analysis o seguinte:

ATENÇÃO:

COUNT({<DIAS_VENCER={"< 0 > -15"}>}distinct COD_PESSOA)

OK:

COUNT({<DIAS_VENCER={"<=-15"}>}distinct COD_PESSOA)

VENCIDOS:

COUNT({<DIAS_VENCER={">=0"}>}distinct COD_PESSOA)

Qualquer dúvida sobre Set Analysis:

Manual Set Analysis Completo em Português BR

Abs e Sucesso!

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago