GPO ( Grupo de Profissionais Oracle )
A maior comunidade Oracle do Brasil !

Marcelino Saraiva Mota

Respostas no Fórum

Visualizando 1 post (de 1 do total)
  • Autor
    Posts
  • em resposta a: Utilizar WEBService no APEX 18 #131957

    Chiappa, boa noite!

    Muito obrigado pelas dicas!

    Utilizei o exemplo do site (https://universidadeapex.com.br/ua/2019/02/08/preenchimento-de-cep-automatico-via-cep/) que você indicou e fiz o seguinte:

    1 – Criei a tabela de cep, conforme indicado.

    2 – Criei a procedure abaixo para pegar os dados do cep e gravar na tabela. Fiz uma pequena correção para que ela gravasse todos os ceps pesquisados.

    create or replace PROCEDURE PR_PEGA_CEP
    (
    P_CEP IN NUMBER
    )
    AS
    v_count number;
    BEGIN
    select count(*) into v_count
    from cep
    where replace(extractValue(cep_xml,’/xmlcep/cep’),’-‘,”) = p_cep;
    if v_count = 0 then
    insert into cep(cep_id, cep_xml)
    select p_cep, utl_http.request(‘http://viacep.com.br/ws/’||p_cep||’/xml’) from dual;
    commit;
    end if;
    END PR_PEGA_CEP;

    3 – Atualizei a consulta aos dados do CEP conforme select gravando o retorno em variáveis globais:

    select
    upper(extractValue(cep_xml,’/xmlcep/logradouro’)) logradouro,
    upper(extractValue(cep_xml,’/xmlcep/complemento’)) complemento,
    upper(extractValue(cep_xml,’/xmlcep/bairro’)) bairro,
    upper(extractValue(cep_xml,’/xmlcep/localidade’)) cidade,
    upper(extractValue(cep_xml,’/xmlcep/uf’)) uf,
    upper(extractValue(cep_xml,’/xmlcep/unidade’)) unidade,
    upper(extractValue(cep_xml,’/xmlcep/ibge’)) ibge,
    upper(extractValue(cep_xml,’/xmlcep/gia’)) gia
    into :g_endereco, :g_COMPLEMENTO, :g_bairro, :g_cidade, :g_uf, :g_UNIDADE, :g_IBGE, :g_GIA
    from cep
    where replace(extractValue(cep_xml,’/xmlcep/cep’),’-‘,”) = :P38_cep;

    Dessa forma consigo recuperar o endereço a partir da digitação do CEP.

    Mas estou trabalhando para otimizar essa consulta e gerar direto as variaveis globais. Assim que terminar eu coloco aqui o resultado.

    []´s

    Marcelino

Visualizando 1 post (de 1 do total)