6 Replies Latest reply: Mar 21, 2018 9:42 AM by Pamela Silva RSS

    Igornar TOTAIS em tabela dinâmica

    Pamela Silva

      Pessoal, boa tarde!

       

      Minha app calcula quantidade de itens e seus respectivos valores em excesso ou falta, por loja.

      Para exibir estes valores em gráfico tabela simples eu utilizo a opção SOMAR LINHAS.

       

      Mas preciso que seja exibido em tabela dinâmica para o usuário expandir a nível de produto apenas caso queira.

       

      Porém, quando mudo para dinâmica ele deixa de SOMAR LINHAS e exibe o TOTAIS, conforme imagem abaixo.

       

       

      Simples.PNG

       

      Dinâmica.PNG

       

      É possível ignorar esse totais e forçar um SOMATÓRIO DE LINHAS? Quando ele faz por TOTAIS, o valor é errado.

       

      Ou então, é possível na tabela simples eu trazer somente os valores sem eu precisar incluir a dimensão de produto?

       

      Poderiam me ajudar, por favor?

      Segue qvw em anexo.

       

      Obrigada!

        • Re: Igornar TOTAIS em tabela dinâmica
          Thiago Justen Teixeira

          Pamela, por uma limitação minha não consigo abrir seu qvw. Mas talvez isso seja útil:

           

          Na sua expressão de OTB Excesso coloque o seguinte:

           

          If(Dimensionality()=0,SUA_EXPRESSAO_PARA_OTB_EXCESSO

          )

            • Re: Igornar TOTAIS em tabela dinâmica
              Pamela Silva

              Thiago,

               

              não funcionou, ficou nulo.

               

              Só precisaria que na tabela dinâmica exibisse o valor que tá na tabela simples.

              Ou que mesmo na tabela simples exibisse esse valor mesmo quando eu retirasse as dimensões ID_PRODUTO e PRODUTO_NOME

                • Re: Igornar TOTAIS em tabela dinâmica
                  Thiago Justen Teixeira

                  Qual a expressão usada para cálculo de OTB Excesso?

                    • Re: Igornar TOTAIS em tabela dinâmica
                      Pamela Silva

                      OTB Excesso

                      =fabs(if([Estoque Plan.] - [Estoque Loja] < 0,

                      [Estoque Plan.] - [Estoque Loja]

                      ))

                       

                      [ESTOQUE PLANEJADO]

                      Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, %ID_TEMPO={">=$(=Addmonths(max(%ID_TEMPO),-3))"}>}VENDA_NUM_ITENS) / Count({<%ID_TEMPO={">=$(=Addmonths(max(%ID_TEMPO),-3))"}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura)


                      [ESTOQUE LOJA]

                      (Sum( {<TEMPO_ANO= , TEMPO_DIA=, TEMPO_SEMANA=, TEMPO_MES= >} ESTOQUE_QUANTIDADE))



                      A expressão completa fica como:

                      =if(

                      ((((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, %ID_TEMPO={">=$(=Addmonths(max(%ID_TEMPO),-3))"}>}VENDA_NUM_ITENS) / Count({<%ID_TEMPO={">=$(=Addmonths(max(%ID_TEMPO),-3))"}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura)

                      -

                      (Sum( {<TEMPO_ANO= , TEMPO_DIA=, TEMPO_SEMANA=, TEMPO_MES= >} ESTOQUE_QUANTIDADE))) <= 0,

                       

                      (((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, %ID_TEMPO={">=$(=Addmonths(max(%ID_TEMPO),-3))"}>}VENDA_NUM_ITENS) / Count({<%ID_TEMPO={">=$(=Addmonths(max(%ID_TEMPO),-3))"}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura)

                      -

                      (Sum( {<TEMPO_ANO= , TEMPO_DIA=, TEMPO_SEMANA=, TEMPO_MES= >} ESTOQUE_QUANTIDADE)) , 0

                       

                      )

                      • Re: Igornar TOTAIS em tabela dinâmica
                        Pamela Silva

                        Na tabela Simples, temos todos os produtos naquela loja.

                        Cada produto tem um valor CUE. Em VALOR OTB EXCESSO, por exemplo, pego a quantidade em OTB EXCESSO e multiplico pelo seu CUE. Assim, o total está ok (lembrando que utilizei o SOMATÓRIO DE LINHAS).

                         

                        Porém, outro jeito de exibir esse gráfico sem ser a tabela dinâmica, seria trazer a tabela simples sem as dimensões de produto mas trazendo o mesmo somatório, então tentei um AGGR, pra ele agregar e somar indivualmente por produto e me trazer o total, mas não deu certo.

                        SUM ( AGGR ( [OTB excesso] *  max({<VENDA_NUM_ITENS={1}>}VENDA_VALOR_CUSTO_VENDA_CUE), SEGMENTO, REPRESENTANTE))

                  • Re: Igornar TOTAIS em tabela dinâmica
                    Pamela Silva

                    Acho que a princípio consegui resolver usando AGGR.

                     

                    if(

                    (SUM(AGGR(fabs(if((((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}>}VENDA_NUM_ITENS) / Count({<TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}, VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura) - (Sum(ESTOQUE_QUANTIDADE) ) <= 0,

                    (((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}>}VENDA_NUM_ITENS) / Count({<TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}, VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura) - (Sum(ESTOQUE_QUANTIDADE) ),0

                    )),FILIAL_NOME, %ID_PRODUTO, PRODUTO_NOME))) < 0,

                     

                    0,

                     

                    (SUM(AGGR(fabs(if((((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}>}VENDA_NUM_ITENS) / Count({<TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}, VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura) - (Sum(ESTOQUE_QUANTIDADE) ) <= 0,

                    (((Sum ({<VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}, TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}>}VENDA_NUM_ITENS) / Count({<TEMPO_MES_ANO={">=$(=Addmonths(max(TEMPO_MES_ANO),-3))"}, VENDA_STCAPA={'Finalizado'}, TIPO_OPERACAO_NOME-={'Dev.NF'}>}distinct %ID_TEMPO))*(1+vQtde/100)) *vCobertura) - (Sum(ESTOQUE_QUANTIDADE) ),0

                    )),FILIAL_NOME, %ID_PRODUTO, PRODUTO_NOME)))

                     

                    )

                     

                    Obrigada pela atenção, Thiago!!