6 Replies Latest reply: Aug 12, 2011 10:12 AM by Eduardo Correa da Silva RSS

    Problemas no Left Join!

      Hermanos, boa noite!

       

      Preciso urgentemente da ajuda de vocês!!

       

      Estou desenvolvendo um projeto para acompanhar a Rota de nossos vendedores. Temos 2 bases (apenas um exemplo):

       

      1° base: ROTEIRO

       

      - Data da Agenda

      - Empresa

      - Cod_Vendedor

      - Nome_Vendedor

      - Cod_Cliente

      - Nome_Cliente

      - Prioridade (em formato numero. Caso haja em um dia 15 clientes para visitar.)

      - Volume de Vendas

       

      2° base: BASE DE VENDAS

       

      - Cd_Operacao

      - Cd_Divisao

      - Cod_Vendedor

      - Nome_Vendedor

      - Cod_Cliente

      - Nome Cliente

      - Data_de_Lanc

       

       

      No relatorio final, quero apresentar Por Empresa e (ou) Vendedor e (ou) Agenda a quantidade de Clientes que este teria que atender no dia especifico, e apresentar todos os Resultados! Exemplo:

       

      1° Tabela:

       

      Mostra Todas os clientes da Agenda (em ordem de prioridade (ex; de 1 a 15) e quais destes foram atendidos e quais nao):

       

      =========================

      PRIOR. |  AGEND  | CLIENTE | VISITADO

      1          |   2245      |      AAA  | SIM

      2          |   5244      |      BBB  | SIM

      3          |   2448      |     CCC   | NAO

       

      E assim por diante (até o 15, por exemplo).

       

      2°Tabela: Quero apresentar as vendas que ocorreram somente fora da Rota.

       

      -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

       

      Para isso fiz diversos testes, mas nada que ficou 100% (sendo que todos foram cruzados por Cod_Vendedor e Data (agenda x Lanc).

       

      - NO Left Join aparece todos visitados fora da Rota e somente os que foram visitados na Rota (Sendo que quero ver tudo. Os visitados e nao visitados tanta da tabela Rota, como o da Base).

       

      Depois de muitos testes (Gerando QVD a parte, Criando tabelas temporárias...) acabei travando (devido a pouco tempo de experiência no QlikView).

       

      Alguem poderia me ajudar??

        • Problemas no Left Join!
          Fernando Suzuki

          Não entendi muito bem o problema, mas me parece que ao invés do Left Join você deveria usar um Outer Join...

           

          Será que te ajudar?

           

          Abraço

          Fernando

          • Problemas no Left Join!

            Se utilizar também apenas o relacionamento das tabelas através dos campos (com o mesmo nome) sem utilizar "Joins", não conseguea visão desejada?

             

            Teria como disponibilizar seu modelo para que conseguissemos visualizar melhor?

             

            Abraços

              • Re: Problemas no Left Join!

                Nao.

                 

                Ja tentamos aqui mas o Problema e que na tabela Rota o mesmo continua a travar.

                 

                Vou add. o Projeto para visualização.

                 

                Na ABA Relatorio, na Empresa (usada como Exemplo) RJN, especificamente na coluna PRIORIDADE são apresentadas os valores 13 / 19 / 21 / 22 / 23. Sendo que o correto teria que ser: 1 / 2 / 3 / 4 / ... (até o 23).

                 

                Ele apresenta somente o que cruza com o FollowUp (sendo que teria que apresentar tudo da Rota).

                 

                Grato e no Aguardo.

                  • Problemas no Left Join!

                    Bom Dia,

                     

                    O problema esta na montagem dos dados (script) para que consiga apresentar as informações da forma mencionada.

                     

                    Atualmente a tabela demonstra  os valores 13/19/12/22/23 pois existem somente estes registros para o filtro selecionado. Se desejar demonstrar os valores do 1 ao 23 por exemplo, deve ser realizado um tratamento no script para que estes valores existam.

                     

                    O problema é que não consigo dar executar o script para tentar te ajudar, pois temos os arquivos qvd para realizar a recarga.

                      • Problemas no Left Join!

                        Eduardo, bom dia!

                         

                        Desde já agradeço a resposta! Abaixo segue o Codigo apresentado no QVD (Que alteração você acharia necessário realizar)?:

                         

                        SET ThousandSep='.';
                        SET DecimalSep=',';
                        SET MoneyThousandSep='.';
                        SET MoneyDecimalSep=',';
                        SET MoneyFormat='R$ #.##0,00;(R$ #.##0,00)';
                        SET TimeFormat='hh:mm:ss';
                        SET DateFormat='D/M/YYYY';
                        SET TimestampFormat='D/M/YYYY hh:mm:ss[.fff]';
                        SET MonthNames='jan;fev;mar;abr;mai;jun;jul;ago;set;out;nov;dez';
                        SET DayNames='seg;ter;qua;qui;sex;sáb;dom';

                        //$(Include=..\..\qlikviewincludes-Dev\includes_comercial\comercial.txt);

                        DivisoesComerciais:
                        LOAD * INLINE [
                           nCdDivisaoComercial
                           18
                           29
                           37
                           22
                           42
                           43
                           36
                           39];

                        OperacoesComerciais:
                        LOAD * INLINE [
                           nCdOperacaoComercial
                           9
                           281
                           76
                           92
                           258
                           259
                           271
                           272
                           264];
                          
                        FollowUp:
                        LOAD
                             nCdOperacaoComercial,
                             nCdTerceiro,
                             nCdRepresentante,
                             nCdRepresentante & '|' & nCdTerceiro & '|' & date (dLancamento) as Chave_Terceiro,
                             nCdEmpresa,
                             nCdDivisaoComercial,
                             nCdProduto,
                             DATE (dLancamento) AS dLancamento,
                             nCdPedidoComercial,
                             nPesoLiquidoEstimado,
                             nPesoEmbarcado,
                             nQtdePedida
                                
                        FROM
                        [\\10.255.0.94\QlikViewDataFiles-Dev\Follow_UP_Completo.qvd](qvd)
                        WHERE dLancamento >= '01/06/2011'
                        AND Exists(nCdDivisaoComercial)
                        AND Exists(nCdOperacaoComercial);

                        left join

                        LOAD //nCdTerceiroRepresentante as nCdRepresentante,
                             //nCdTerceiroCliente as nCdTerceiro,
                             //date (dDataAgenda) as dLancamento,
                             nCdTerceiroRepresentante & '|' & nCdTerceiroCliente & '|' & date (dDataAgenda) as Chave_Terceiro,
                             nCdAgendaVendedor,
                          cNmMotivoNaoVenda,
                             nCdMotivoNaoVisita,
                             cNmMotivoNaoVisita,
                             cObservacao,
                             dCancelamentoVisita,
                          'SIM' as Rota,
                          iPrioridade
                                
                        FROM
                        [\\10.255.0.94\QlikViewDataFiles-Dev\RotaVendedores.qvd]
                        (qvd)
                         
                          WHERE dDataAgenda >= '01/06/2011';

                        Base_Geral_TMP:
                        load
                             nCdOperacaoComercial,
                             nCdTerceiro,
                             nCdRepresentante,
                             //Chave_Terceiro,
                             nCdEmpresa,
                             nCdDivisaoComercial,
                             nCdProduto,
                             DATE (dLancamento) AS dLancamento,
                             nCdPedidoComercial,
                             nPesoLiquidoEstimado,
                             nPesoEmbarcado,
                             nQtdePedida,
                             iPrioridade,
                             nCdAgendaVendedor,
                             cNmMotivoNaoVenda,
                             nCdMotivoNaoVisita,
                             cNmMotivoNaoVisita,
                             cObservacao,
                             dCancelamentoVisita, 
                             if (Rota = 'SIM', 'SIM','NÃO') as Rota
                                 
                             resident FollowUp;
                         
                            drop table FollowUp;
                          
                          
                           FollowUp:
                        LOAD
                             nCdOperacaoComercial,
                             nCdTerceiro,
                             nCdRepresentante,
                             nCdRepresentante & '|' & nCdTerceiro & '|' & date (dLancamento) as Chave_Terceiro,
                             nCdEmpresa,
                             nCdDivisaoComercial,
                             nCdProduto,
                             DATE (dLancamento) AS dLancamento,
                             nCdPedidoComercial,
                             nPesoLiquidoEstimado,
                             nPesoEmbarcado,
                             nQtdePedida
                                
                        FROM
                        [\\10.255.0.94\QlikViewDataFiles-Dev\Follow_UP_Completo.qvd](qvd)
                        WHERE dLancamento >= '01/06/2011'
                        AND Exists(nCdDivisaoComercial)
                        AND Exists(nCdOperacaoComercial);


                        Empresa:
                        LOAD nCdEmpresa,
                          cNmEmpresa,
                             Empresa,
                             nCdGrupoempresa,
                             cNmGrupoEmpresa
                        FROM
                        [\\10.255.0.94\QlikViewDataFiles-Dev\DIMEmpresa.qvd]
                        (qvd);

                        CD_FABRICA:
                        LOAD nCdEmpresa,
                             //Empresa,
                             DIVISAO
                        FROM
                        [\\10.255.0.94\QlikViewDocumentos\Adm Vendas Varejo\Dados\Metas_Performance\CD.xls]
                        (biff, embedded labels, table is DIC_EMPRESA$);

                         

                         

                        //QUALIFY *;
                        //UNQUALIFY;
                        //LOAD nCdTerceiroRepresentante as nCdRepresentante,
                        //     nCdTerceiroCliente as nCdTerceiro,
                        //     date (dDataAgenda) as dLancamento,
                        //     //'SIM' as Rota,
                        //  nCdAgendaVendedor,
                        //  cNmMotivoNaoVenda,
                        //     nCdMotivoNaoVisita,
                        //     cNmMotivoNaoVisita,
                        //     cObservacao,
                        //     dCancelamentoVisita,
                        //  'SIM' as Rota,
                        //  iPrioridade
                        //        
                        // FROM
                        // [\\10.255.0.94\QlikViewDataFiles-Dev\RotaVendedores.qvd]
                        // (qvd)
                        // 
                        //  WHERE dDataAgenda >= '01/06/2011';
                        //
                        //UNQUALIFY *;

                         

                         

                         

                          • Problemas no Left Join!

                            Bom Dia,

                             

                            Os arquivos que menciono são os:

                             

                            [\\10.255.0.94\QlikViewDataFiles-Dev\Follow_UP_Completo.qvd]

                             

                            [\\10.255.0.94\QlikViewDataFiles-Dev\RotaVendedores.qvd]

                             

                            [\\10.255.0.94\QlikViewDocumentos\Adm Vendas Varejo\Dados\Metas_Performance\CD.xls]

                             

                            Para que possamos verificar como as informações estão armazenadas e assim trata-las de forma a satisfazer os indicadores.

                             

                            Abraços