6 Replies Latest reply: Sep 2, 2014 4:19 PM by agnaldo neves RSS

    QlikView Google Maps x Coordenadas (Excel)

    agnaldo neves

      QlikView Google Maps x Coordenadas

       

      Sobre o Script acima,

      Estou com dificuldade de inserir o exemplo abaixo.

       

      Gostaria se possível colocar meu exemplo(Anexo no excel) neste script e para ficar mais fácil.

      Se possível enviar o código exemplo.qvw

      Junto com o arquivo que salvar no QVD.´

      Conforme o exemplo do abaixo.

      Sou novato.

      Obrigado

       

      Agnaldo

       

      ************************************************************************************************************************************************

      SCRIPT DO Kaauan Matzenbacher

       

      /BUSCA DE COORDENAS ATRAVÉS DA API DO GOOGLE.

      set ErrorMode=0;

       

       

      [Tabela_endereços]:

      LOAD distinct

      ChavePrincipal,

      rowno() as chaveunica,

      rua&'+'&numero&'+'&cidade&'+'&pais as    EndereçoTratado ;

      from....;

      //faz um tratamento caso seja preciso;

       

       

      [Maior Linha]:

      load max(chaveunica) as maxLinhas

      Resident [Tabela_endereços];

       

       

      let vMaxLinhas = Peek('maxLinhas');

       

       

        for  i = 1  to   $(vMaxLinhas)

       

      //'ou'  for = i = 1 to 1249  'assim por diante.'

       

       

                [t]:

                load

          EndereçoTratado          as logradouro

                resident [Tabela_endereços] where  chaveunica = $(i) ;

       

                let vRegistro = Peek('logradouro');

       

       

      GeocodeResponse:

      LOAD $(i) as chaveunica,

          [result/geometry/location/lat] as Latitude,

          [result/geometry/location/lng] as Longitude,

          %Key_GeocodeResponse_62C7A0A69859D655,

         [result/geometry/location_type] as location_type,

          status

      FROM [http://maps.googleapis.com/maps/api/geocode/xml?address=$(vRegistro)&sensor=false] (XmlSimple, Table is [GeocodeResponse]);

       

       

      address_component:

      LOAD

                $(i) as chaveunica,

           long_name as  Itens,

          %Key_address_component_3D78D9B402C68EA5 as codigo,

           %Key_GeocodeResponse_62C7A0A69859D655 as key

      FROM [http://maps.googleapis.com/maps/api/geocode/xml?address=$(vRegistro)&sensor=false] (XmlSimple, Table is [GeocodeResponse/result/address_component]);

       

       

      drop Table [t];

      SLEEP(700);

       

      next;

       

       

       

       

      left join (Tabela_endereços)

       

                Status:

                load

                chaveunica,

                status

                Resident GeocodeResponse;

                          left join

       

                Location:

                load

                chaveunica,

                location_type

                Resident GeocodeResponse;

                          left join

       

                Latitude:

                load

                chaveunica,

                Latitude

                Resident GeocodeResponse;

                          left join

       

                Longitude:

                load

                chaveunica,

                Longitude

                Resident GeocodeResponse;

                          left join

       

                Rua:

                load

                chaveunica,

                if(codigo= 9,Itens) as Rua

                resident address_component

                where isnull(if(codigo= 9,Itens)) = false();

                          left join

       

                Bairro:

                load

                chaveunica,

                if(codigo= 13,Itens) as Bairro

                resident address_component

                where isnull(if(codigo= 13,Itens)) = false();

                     left join

       

                Número:

                load

                chaveunica,

                if(codigo =5,Itens) as Número

                resident address_component

                where isnull(if(codigo =5,Itens)) = false();

                     left join

       

                Cidade:

                load

                chaveunica,

                if(codigo = 18,Itens) as Cidade

                resident address_component

                where isnull(if(codigo =18,Itens)) = false();

                     left join

       

                Estado:

                load

                chaveunica,

                if(codigo = 23,Itens) as Estado

                resident address_component

                where isnull(if(codigo =23,Itens)) = false();

                     left join

       

                cep:

                load

                chaveunica,

                if(codigo = 33,Itens) as cep

                resident address_component

                where isnull(if(codigo =33,Itens)) = false();

       

       

          [Final]:

          NoConcatenate Load

          ChavePrincipal,

          cep,

          chaveunica,

          EndereçoTratado,

          status,

          location_type,

          Latitude,

          Longitude,

          Rua,

          Bairro,

          Número,

          Cidade,

          Estado

       

                Resident Tabela_endereços

                where IsNull(Latitude) = false() and  Latitude <> '' ;

       

      drop table GeocodeResponse;

      drop table [Maior Linha];

      drop Table address_component;

      drop Table Tabela_endereços;

       

       

      STORE Final into [C:\Coordendas_01.qvd];