[Opcional] Um das Abhängigkeitsmanagement zu erleichtern, empfehle ich den Chef. boss install github.com/viniciussanchez/viacep
Fügen Sie Ihrem Projekt den folgenden Ordner in Projekt> Optionen> Ressourcencompiler> Regie und Condiçonals> Fügen Sie den Dateisuchpfad ein
../viacep/src
Sie müssen die folgenden Einheiten verwenden: ViaCEP.Intf , ViaCEP.Core , ViaCEP.Model
uses ViaCEP.Intf, ViaCEP.Core, ViaCEP.Model; Bei der Konsultation einer ungültigen Format -Postleitzahl, beispielsweise: 950100100 (9 Ziffern), 95010A10 (alphanumerisch), 95 01010 (Raum), ist die Rückgabe nil .
Die Methode zur Überprüfung, ob es sich um eine gültige Postleitzahl handelt oder nicht, stellen Sie einfach sicher, dass die informierte Postleitzahl 8 Ziffern enthält und dass alle numerisch sind und vor der Konsultation des Webservice über die IViaCEP -Schnittstelle mithilfe der Validate zugegriffen werden können.
Bei der Konsultation einer gültigen, aber nicht vorhandenen Format -Postleitzahl, zum Beispiel: 99999999 , ist die Rückgabe auch nil . Dies bedeutet, dass die konsultierte Postleitzahl in der Datenbank nicht gefunden wurde.
Beispiel:
var
ViaCEP: IViaCEP;
begin
ViaCEP := TViaCEP.Create;
if ViaCEP.Validate( ' 01001000 ' ) then
ShowMessage( ' CEP válido ' )
else
ShowMessage( ' CEP inválido ' );
end ; Denken Sie daran, dass es in der obigen Methode nicht notwendig ist, die erstellte Instanz der TViaCEP -Klasse zu zerstören, da sie eine Interface verwendet.
var
ViaCEP: IViaCEP;
CEP: TViaCEPClass;
begin
ViaCEP := TViaCEP.Create;
// Aqui você pode chamar a rotina para validar se é um CEP válido.
CEP := ViaCEP.Get(edtCEPConsultar.Text);
if not Assigned(CEP) then
Exit; // Aqui você pode exibir uma mensagem para o usuário falando que o CEP não foi encontrado.
try
edtJSON.Lines.Text := CEP.ToJSONString;
edtCEP.Text := CEP.CEP;
edtLogradouro.Text := CEP.Logradouro;
edtComplemento.Text := CEP.Complemento;
edtBairro.Text := CEP.Bairro;
edtLocalidade.Text := CEP.Localidade;
edtUF.Text := CEP.UF;
edtDDD.Text := CEP.DDD;
edtIBGE.Text := CEP.IBGE;
edtGIA.Text := CEP.GIA;
finally
CEP.Free;
end ;
end ; Sobald Sie die Zip -Code -Beratung vorgenommen haben, können Sie den zurückgegebenen Inhalt im JSON -Format mit der in der TViaCEPClass -Klasse verfügbaren .tojonstring -Methode erhalten. Siehe das Beispiel unten, wobei ein TMemo mit dem Inhalt der Abfrage besiedelt ist:
var
CEP: TViaCEPClass;
begin
Memo.Lines.Text := CEP.ToJSONString;
end ; {
"cep": "01001-000",
"logradouro": "Praça da Sé",
"complemento": "lado ímpar",
"bairro": "Sé",
"localidade": "São Paulo",
"uf": "SP",
"ddd": "",
"ibge": "3550308",
"gia": "1004"
}
Greifen Sie online auf das Formular zu und aktualisieren Sie die Postleitzahl aktualisieren
Origin Ibge Code of Gemeinden: Zugriff auf Site
Ursprung GIA/ICMS -Code (SP nur verfügbar): PDF anzeigen (S. 137)
Viacep - kostenloser Webservice CEP und IBGE: Zugriff auf Site
