4 Replies Latest reply: Mar 26, 2018 8:39 AM by Nildeir Alexandro Sene RSS

    Soma - Seleção 1

    Nildeir Alexandro Sene

      Pessoal,

       

       

      Estou precisando fazer um fechamento de comissão por vendedor cada cliente tem seu vendedor, mesmo que a venda seja feita por outro vendedor a soma tem que ser atribuída ao vendedor do cliente. Até a seleção do dos clientes do vendedor está dando correto,

      só a soma que não está dando centro; Help ??

       

      clienteXVendedor:

      //Inner Join (Faturamento)

      LOAD * INLINE [

          TKCodCliente, TKGrpVendedor

          100, K5

          200, K5

          300, K20

      ];

       

       

      cliente:

      Left Join (clienteXVendedor)33.jpg

      LOAD * INLINE [

          TKCodCliente, TK_NomeCliente

          100, Aluizio

          200, Tyna

          300, Daniel

      ];

       

      Faturamento:

      Left Join (clienteXVendedor)

      LOAD * INLINE [

         TKNumNota,TK_VlNota,TKCodCliente, TKGrpVendedor

         1,100,100, K5

         2,100,200, K10

         3,300,300, K20

      ];

        • Re: Soma - Seleção 1
          THIAGO TEIXEIRA

          Nildeir,

           

          Se quer somar agrupando por cliente:

          Sum (Aggr (Sum (TK_VlNota),TKCodCliente))


          Se quer somar agrupando por vendedor:


          Sum (Aggr (Sum (TK_VlNota),TKGrpVendedor))


          Abs e Sucesso!!

          • Re: Soma - Seleção 1
            Alessandro Furtado

            Nildeir,

             

            como voce esta usando o  "left join",  e os campos de ligaçoes entre as tabelas tem dados diferentes, voce esta "perdendo" dados.

             

            Veja o resultado da sua carga em uma tabela simples

             

            TKCodCliente TK_NomeCliente TKGrpVendedor TKNumNota TK_VlNota
            100AluizioK51100
            200TynaK5  
            300DanielK203300

             

             

            Tem duas possibilidades que eu recomendaria.

             

            A primeira, seria na carga da primeira tabela criar um campo do Vendedor do Cliente, diferente do vendedor da nota. Assim, podes ter quem é o Vendedor padrão, mas saber quem vendeu.

             


            clienteXVendedor:

            //Inner Join (Faturamento)

            LOAD TKCodCliente,TKGrpVendedor as TKGrpVendedor_Cliente

            INLINE [

                TKCodCliente, TKGrpVendedor

                100, K5

                200, K5

                300, K20

            ];



            cliente:

            Left Join (clienteXVendedor)

            LOAD * INLINE [

                TKCodCliente, TK_NomeCliente

                100, Aluizio

                200, Tyna

                300, Daniel

            ];


            Faturamento:

            Left Join (clienteXVendedor)

            LOAD * INLINE [

               TKNumNota,TK_VlNota,TKCodCliente, TKGrpVendedor

               1,100,100, K5

               2,100,200, K10

               3,300,300, K20

            ];

             

            Resultado:

             

            TKCodCliente TK_NomeCliente TKGrpVendedor_Cliente TKGrpVendedor TKNumNota TK_VlNota
            100AluizioK5K51100
            200TynaK5K102100
            300DanielK20K203300

             

            TKGrpVendedor_Cliente sum(TK_VlNota)
            500
            K5200
            K20300

             

             

             

            A outra forma seria não carregar o vendedor da nota, mas ai acho que perderias informação (quem vendeu).

            • Re: Soma - Seleção 1
              Alessandro Furtado

              Nildeir,

               

              somente reforçando que a linha que tomei é que os vendedores são diferentes.  Tem o da nota e tem o do cliente. Quando mudar a região de atuação ou mesmo o vendedor, desta forma você consegue saber quem atende e quem vendeu.