Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Prezados,
Preciso de ajuda com uma tabela, onde necessito criar um campo que calcula a diferença entre registros de uma tabela,
no meu exemplo calcular a "diferença de kilometragem" no odometro,
verificando o mesmo veículo,
calculando o odometro desta linha, com a diferença, de um registro imediatamente anterior classificado pela data,
e retornar na linha a dimensão da diferença entre os dois registros,
fazendo isso para cada linha da tabela, e preenchendo um novo campo
conforme a imagem:
Olá,
Existem várias formas de fazer isso.
1) Via Script de carga, onde podemos fazer a ordenação das linhas pelo Veículo e Data, depois verificar se a linha atual é igual a anterior usando a função Previous(expr).
Previous - função de script | Qlik Sense no Windows Help
Algo assim:
LOAD Data, Veiculo, Odometro,
If(Veiculo = Previus(Veiculo), Previus(Odometro) - Odometro, Null()) as Diferença
Resident Carros
Order By Veiculo, Data;
2) Utilizando a função Above([TOTAL] expr [ , offset [,count]]) diretamente na tabela.
Above - função de gráfico | Qlik Sense no Windows Help
Particularmente recomendo a primeira opção, pois caso o usuário faça nova ordenação na tabela, o cálculo pode ser equivocado.
Don't worry, be Qlik.
Tonial
Olá,
Existem várias formas de fazer isso.
1) Via Script de carga, onde podemos fazer a ordenação das linhas pelo Veículo e Data, depois verificar se a linha atual é igual a anterior usando a função Previous(expr).
Previous - função de script | Qlik Sense no Windows Help
Algo assim:
LOAD Data, Veiculo, Odometro,
If(Veiculo = Previus(Veiculo), Previus(Odometro) - Odometro, Null()) as Diferença
Resident Carros
Order By Veiculo, Data;
2) Utilizando a função Above([TOTAL] expr [ , offset [,count]]) diretamente na tabela.
Above - função de gráfico | Qlik Sense no Windows Help
Particularmente recomendo a primeira opção, pois caso o usuário faça nova ordenação na tabela, o cálculo pode ser equivocado.
Don't worry, be Qlik.
Tonial
Deu certo!
Obrigado Fernando Tonial.