3 Replies Latest reply: Aug 27, 2011 1:11 PM by Rodrigo Li RSS

    Problema com fórmula de soma.

      Gostaria apenas de trocar uma ideia  estou com o seguinte problema:


      Desenvolvi uma projeto para avaliar a situação financeira de cada representante, onde existe existe varios tipos de titulos exemplo: (Nota Fiscal  e Cheques).

       

      Então montei a formula para calcular dias médio de atraso no pagamento.

       

      Para calular cheques usei a formula  (sum((Cheques_ValorVencido)*(Cheques_DiasAtraso)))/sum(Cheques_ValorVencido)   => Beleza e formula funciona perfeitamente e tenho o resultado

       

      Para calular Notas ficais  usei a formula  (sum((Nota_ValorVencido)*(Nota_DiasAtraso)))/sum(Nota_ValorVencido)   => Beleza e formula funciona perfeitamente e tenho o resultado


      Após chegar ao calculo individual necessito somar o resultado dos  titulos de cheques e das notas, a formula é simples (formula dos cheques + formula das notas) porem agora vem o meu problema quando não existe um tipo de titulo exmeplo um determinado representante não possui atraso com cheques apenas notas, o resultado  da soma das formulas fica em branco. Gostaria de saber se ja passou por esta situação.

       

      At. Márcio

        • Re: Problema com fórmula de soma.

          Bom Dia,

           

          Interessante esta questão, nunca tinha me deparado com este problema mas é uma questão de entender o que acontece.

           

          Fiz um exemplo em que este problema ocorreu e percebi os seguintes fatos:

           

          Dentro da função "SUM" o qlikview deve realizar algum tratamento quando o valor é nulo (creio que assume este valor como zero).

           

          Se você tentar realizar um calculo da seguinte forma: X + NULL(), o valor retornado sempre vai ser nulo.

           

          No seu exemplo existem duas formas de solucionar este caso:

           

          1ª) utilizar uma verificação se o resultado é nulo e retornar o valor 0:

           

          IF(ISNULL((sum((Nota_ValorVencido)*(Nota_DiasAtraso)))/sum(Nota_ValorVencido)) = -1, 0,

                          (sum((Nota_ValorVencido)*(Nota_DiasAtraso)))/sum(Nota_ValorVencido) )

           

          E somar as colunas utilizando o próprio nome das colunas, exemplo: Cheque + Notas;

           

          2ª) Utilizando a função "RANGESUM" (internamente o qlikview deve realizar o mesmo tratamento de valores nulos como zero):

           

          RANGESUM( ( (sum((Cheques_ValorVencido)*(Cheques_DiasAtraso)))/sum(Cheques_ValorVencido) )

                             , ( (sum((Nota_ValorVencido)*(Nota_DiasAtraso)))/sum(Nota_ValorVencido) ) )

           

          Segue um arquivo com a aplicação deste exemplos.

           

          Abraços!