6 Replies Latest reply: Jul 19, 2012 2:13 PM by Juliana Assis RSS

    Cálculo acumulado

      Pessoal, boa tarde.

       

      Preciso fazer  um cálculo acumulado por ano, quero que apareça o acumulado de 2010 até o mês selecionado deste. Ex.: Ano 2010 e seleciono o  Mês Março, então deve aparecer o acúmulo de Jan. daquele ano até Março. A princípio eu só tenho o resultado mensal sem o acumulado dos mêses anteriores.

       

      Alguém pode ajudar?

       

      Abs

        • Re: Cálculo acumulado
          Cesar Accardi

          Olá,

           

          segue um exemplo:

           

          <<script>>

           

          LOAD * INLINE

          [Mes, Ano, Valor

          1,2010,50

          2,2010,30

          3,2010,10

          ];

           

          <<expressão>>

           

          sum({$<Mes={'<=$(=Only(Mes))'}>} Valor)

           

          Para que a expressão funcione deverá ter um valor selecionado no campo mês, observe que estou usando a representação numérica do mês para fazer o set analysis com o intervalo <=Mes , se estivesse no formato texto (jan,fev,mar) teria que formatar o dado para ser interpretado como mês e fazer o <=Mes. Entendeu?

           

          Abraços,
          Cesar

          • Re: Cálculo acumulado
            Felipe Dutra

            Opa!

            Dois exemplos:

            Acumulado.JPG

            É um dos 2 acima que você quer fazer?

             

            Como o Cesar falou, você tem que usar o "Total" na soma.

            No meu caso, criei a dimensão "acumulado Ano".

            Se nenhum mês for selecionado, é adotado o último como referência.

             

            Abs,

            Felipe

            • Re: Cálculo acumulado

              Duh....

               

              Conseguimos fazer:

               

              Segue

               

              =


              RangeSum

              (Before(Total sum(


              aggr

              (sum(if(cdPrestador = '011412',


              nuValorNegociadoProporcionalDASAContratoVigenciaResumo

              ,


              nuValorFPOContratoVigenciaResumo

              )), cdRegiaoAdministrativaIAMSPE,


              cdMunicipio

              , cdPrestador, dsAnoMesReferenciaOrigemLink)


              )))


              -


              (

              RangeSum(Before(Total sum(


              if

              (cdIndicadorTipoConta = 'C', vrLiberadoPagamentoContaMedica)


              )))


              -


              RangeSum

              (Before(Total sum(


              vrRevisado


              )))


              +


              RangeSum

              (Before(Total sum(


              vrRecursado


              )))


              -


              RangeSum

              (Before(Total sum(


              if

              (cdPrestadorContratoVigenciaResumo = '011412', vrGlosaExtraTetoDebitoCalc


              ,

              vrGlosaExtraTetoDebito)


              )))


              +


              RangeSum

              (Before(Total sum(


              if

              (cdPrestadorContratoVigenciaResumo = '011412', vrGlosaExtraTetoCreditoCalc


              ,

              vrGlosaExtraTetoCredito)


              ))))


              +


              (

              sum(aggr(sum(if(cdPrestador = '011412',


              nuValorNegociadoProporcionalDASAContratoVigenciaResumo

              ,


              nuValorFPOContratoVigenciaResumo

              )), cdRegiaoAdministrativaIAMSPE,


              cdMunicipio

              , cdPrestador, dsAnoMesReferenciaOrigemLink))


              -


              (

              if(vrContasMedicasContaInformada > 0,


              sum

              (vrContasMedicasContaInformada),sum({$<cdIndicadorTipoConta={"C"}>}


              vrLiberadoPagamentoContaMedica

              )-sum(vrRevisado))


              +


              sum

              (vrRecursado)


              -


              sum

              (if(cdPrestadorContratoVigenciaResumo = '011412',


              vrGlosaExtraTetoDebitoCalc

              , vrGlosaExtraTetoDebito))


              +


              sum

              (if(cdPrestadorContratoVigenciaResumo = '011412',


              vrGlosaExtraTetoCreditoCalc

              , vrGlosaExtraTetoCredito))))

               

               

              Bjs !