[size=12pt]Tenho um blank para teste onde no evento onExecute coloquei o código:[/size]
$clientpuro = new SoapClient(“https://apps.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl”);
$cep=array(‘cep’ => “81750270”);
$resultado=$clientpuro->consultaCEP($cep);
echo “Consulta por CEP no webservice sigep dos correios.
Retorno usando php puro:
”;
echo "Endereço: ".$resultado->return->end;
echo "
Complemento: ".$resultado->return->complemento;
echo "
Complemento2: ".$resultado->return->complemento2;
echo "
Bairro: ".$resultado->return->bairro;
echo "
Estado: ".$resultado->return->uf;
echo "
CEP: ".$resultado->return->cep;
echo "
ID: ".$resultado->return->id;
echo “
Retorno usando sc_webservice:
”;
$clientsc=sc_webservice(“soap”, “https://apps.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl”, “80”, “”, “”, array(‘connection_timeout’ => 1000),“30”,“false”);
$cepsc=array(‘cep’ => “81750270”);
$resultadosc=$clientsc->consultaCEP($cepsc);
echo “
”;
echo "Endereço: ".$resultadosc->return->end;
echo "
Complemento: ".$resultadosc->return->complemento;
echo "
Complemento2: ".$resultadosc->return->complemento2;
echo "
Bairro: ".$resultadosc->return->bairro;
echo "
Estado: ".$resultadosc->return->uf;
echo "
CEP: ".$resultadosc->return->cep;
echo "
ID: ".$resultadosc->return->id;
E me veio 3 perguntas:
1) Por que a a macro sc_webservice é tão mal documentada?
Veja o caso:
Array de Configuração(opcional) Array de parâmetros para configuração do método de acesso utilizado.
sc_webservice(“Método”, “URL”, “Porta”, “Método de Envio”, “Array de Parâmetros”, “Array de Configuração”, “Timeout”, “Retorno”)
Se eu tirar array(‘connection_timeout’ => 1000) que é opcional de $clientsc=sc_webservice(“soap”, “https://apps.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl”, “80”, “”, “”, array(‘connection_timeout’ => 1000),“30”,“false”);
O objeto $clientsc não me trás mais o resultado da consulta.
Se uso php puro nem preciso informar isto.
Bug? Algo que falta na documentação dizendo que preciso usar este valor no Array de parâmetros para configuração?
2) Em comparação com a consulta em PHP puro o sc_webservice me faz digitar mais, não era para facilitar?
Comparação:
$clientpuro = new SoapClient(“https://apps.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl”);
$clientsc=sc_webservice(“soap”, “https://apps.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl”, “80”, “”, “”, array(‘connection_timeout’ => 1000),“30”,“false”);
3) A Netmake poderia liberar mais exemplos de uso da macro sc_webservice e do uso dos parâmetros?
Porque ao meu ver ou você faz a conexão e trás os dados em menos de 2 minutos em php puro.
Ou fica 1 hora tentando descobrir que parâmetros colocar no sc_webservice para fazer a macro funcionar.
Observação:
https://www.correios.com.br/para-sua-empresa/encomendas/sigep-web
Público a que se destina
Pessoas jurídicas com contrato firmado com os Correios para prestação de serviços qualificados: Registrados, SEDEX, Encomenda PAC, etc.
No caso de sua empresa ou órgão público efetuar postagens de objetos qualificados, porém sem ser por meio de de contrato e tem interesse em utilizar o SIGEP WEB, procure a Gerência comercial dos Correios mais próxima para viabilizar a assinatura de um contrato.
A utilização dos sitema é gratuita. Se sua empresa já usa o SIGEP, migre para o SIGEP WEB e otimize a sua logística. Se a sua empresa ainda não baixou o aplicativo, não perca mais tempo.