QlikView – Qualificadores de Funções

By Fábio Simões

Alguns dias atrás um amigo (Rogério Backes) me questionou a respeito de um problema de contabilidade que ele precisava resolver. Tratava-se da Análise Horizontal e Vertical, onde ele já havia resolvido o problema da Análise Horizontal, restava ainda demonstrar a Análise Vertical.

Para quem assim como eu, não entende nada de Contabilidade ai vai uma breve explicação do que significa cada uma dessas análises. Este resumo foi fornecido pelo próprio Rogério Backes, que ao contrário de mim conhece muito de contabilidade.

“Análise Horizontal estabelece um comparativo entre um determinado exercício em relação ao anterior”. Ou seja, se estivermos comparando ano com ano, a Análise Horizontal irá mostrar a variação de um dado ano para o anterior, isso irá mostrar se houve melhora ou piora de um ano para o outro.

“A Análise Vertical calcula quanto representa um valor em relação ao total da coluna, ou seja, em uma coluna existirão vários valores para o exercício, a Análise Vertical irá demonstrar quanto cada linha representa em relação ao total da coluna.”

Abaixo uma tabela fornecida pelo Rogério que exemplifica estas duas análises:

2005 2006
Valor A.V. Valor A.V. A.H.
TOTAL R$ 100,00 100% R$ 130,00 100% 30%
Despesas Financeiras R$ 80,00 80% R$ 100,00 76,92% 25%
Despesas Administrativas R$ 20,00 20% R$ 30,00 23,08% 50%

Como podemos ver na tabela acima as análises, Vertical e Horizontal, mostram uma evolução nos gastos de um ano para outro. E também quando representa cada linha em relação ao total do exercício.

Bem, o objetivo dessa introdução foi meramente para mostrar como resolver essa situação no QlikView.

São duas situações simples de resolver, mas que podem causar alguma dor de cabeça se não utilizamos as funções corretas, como o QlikView fornece diversas funções para resolver a mais variada gama de problemas, é sempre importante encontrar a função adequada para cada tipo de problema.

Para resolver a Análise Horizontal precisamos dividir o valor atual pelo valor do resultado anterior e deduzir 1, onde no QlikView teríamos a seguinte expressão:

Sum (Valor)/Before(Sum (Valor)) -1

Neste caso, a função Before() irá retornar o total do exercício imediatamente anterior ao que esta sendo analisado no momento, permitindo o calculo que irá resultar no valor da Análise Horizontal. Como podemos ver na tabela acima, no primeiro exercício a Análise Horizontal será nula, já que não existe um exercício anterior para comparação.

Já para resolver o problema da Análise Vertical fica um pouco mais complicado, porque precisamos do total da coluna, a função Sum() aceita algumas palavras conhecidas como “qualificador”, no nosso caso o qualificador total irá nos ajuda nesse problema. Quando a palavra total aparece antes de uma expressão, o cálculo é feito considerando todos os valores possíveis baseados nas seleções ativas, ignorando a interação com as dimensões do objeto.

O problema do Sum() aliado ao qualificador total no caso da Análise Vertical, é que se o objeto exibir mais do que um exercício será considerado o total de todos eles, isso irá distorcer o resultado.

Felizmente para esse caso o qualificador total aceita também uma lista de um ou mais campos dentro de sinais de maior e menor que (Sum( total <Mês> Vendas )). Esses campos devem ser um subconjunto das dimensões do objeto. Quando utilizamos o qualificador total dessa forma o calculo será feito ignorando todas as dimensões do objeto, exceto aquelas listadas entre os sinais de “<>”, isto fará com que seja retornado um valor para cada combinação dos valores de campos informados na lista. Isso pode é muito útil em situações onde o valor do campo de dimensão não é fixo, como nesse caso da Analise Vertical, onde o agrupador terá um valor para cada exercício, que podem ser anos ou meses por exemplo.

Descoberto qual função utilizar e como utilizá-la nossa expressão fica da seguinte forma:

Sum (Valor)/Sum (Total <MêsAno> Valor)

Nesse caso a expressão Sum (Total <MêsAno> Valor) irá retornar o total da coluna para cada valor do agrupador MêsAno. Dessa forma teremos a seguinte tabela:

Análise Vertical e Horizontal

Análise Vertical e Horizontal

Agradecimento especial: Rogerio R. Backes

Tags:

Deixe um comentário