|
Accueil → WINDEV 25 → WX - Estrutura de diretórios dos Correios -BR (CEP, localidades, logradouros, bairros...) |
WX - Estrutura de diretórios dos Correios -BR (CEP, localidades, logradouros, bairros...) |
Débuté par BOLLER, 01 nov. 2016 18:33 - 1 réponse |
| |
| | | |
|
| |
Membre enregistré 3 655 messages Popularité : +175 (223 votes) |
|
Posté le 01 novembre 2016 - 18:33 |
Prezados,
Segue estrutura de diretórios dos Correios -BR (CEP, localidades, logradouros, bairros...)
CREATE TABLE [dbo.t0010_enderecoscorreiosbairro] ( [bai_nu_sequencial] NUMERIC(19,0) NOT NULL UNIQUE DEFAULT 0, [ufe_sg] NVARCHAR(2) NOT NULL , [bai_no] NVARCHAR(72) NOT NULL , [bai_no_abrev] NVARCHAR(36) DEFAULT NULL, [loc_nu_sequencial] NUMERIC(19,0) DEFAULT 0); CREATE INDEX [WDIDX_t0010_enderecoscorreiosbairro_loc_nu_sequencial] ON [dbo.t0010_enderecoscorreiosbairro] ([loc_nu_sequencial]);
CREATE TABLE [dbo.t0010_enderecoscorreioscontrole] ( [versao] NVARCHAR(4) DEFAULT NULL, [data] DATETIME DEFAULT NULL, [compl1] NVARCHAR(50) DEFAULT NULL);
CREATE TABLE [dbo.t0010_enderecoscorreioscpc] ( [cpc_nu_sequencial] NUMERIC(19,0) NOT NULL UNIQUE DEFAULT NULL, [ufe_sg] NVARCHAR(255) DEFAULT NULL, [loc_nu_sequencial] FLOAT DEFAULT NULL, [cep] NVARCHAR(255) DEFAULT NULL, [cpc_no] NVARCHAR(255) DEFAULT NULL, [cpc_endereco] NVARCHAR(255) DEFAULT NULL, [cpc_tipo] NVARCHAR(255) DEFAULT NULL, [cpc_abrangencia] NVARCHAR(255) DEFAULT NULL, [cpc_key_dne] NVARCHAR(255) DEFAULT NULL, [temp] NVARCHAR(255) DEFAULT NULL); CREATE INDEX [WDIDX_t0010_enderecoscorreioscpc_loc_nu_sequencial] ON [dbo.t0010_enderecoscorreioscpc] ([loc_nu_sequencial]);
CREATE TABLE [dbo.t0010_enderecoscorreiosfaixabairro] ( [bai_nu_sequencial] NUMERIC(19,0) NOT NULL DEFAULT 0, [fcb_nu_ordem] NUMERIC(19,0) NOT NULL DEFAULT 0, [fcb_rad_ini] NVARCHAR(5) NOT NULL , [fcb_suf_ini] NVARCHAR(3) NOT NULL , [fcb_rad_fim] NVARCHAR(5) NOT NULL , [fcb_suf_fim] NVARCHAR(3) NOT NULL ); CREATE INDEX [WDIDX_t0010_enderecoscorreiosfaixabairro_bai_nu_sequencial] ON [dbo.t0010_enderecoscorreiosfaixabairro] ([bai_nu_sequencial]);
CREATE TABLE [dbo.t0010_enderecoscorreiosfaixacpc] ( [cpc_nu_inicial] NUMERIC(19,0) NOT NULL DEFAULT 0, [cpc_nu_final] NUMERIC(19,0) NOT NULL DEFAULT 0, [cpc_nu_sequencial] NUMERIC(19,0) DEFAULT 0); CREATE INDEX [WDIDX_t0010_enderecoscorreiosfaixacpc_cpc_nu_sequencial] ON [dbo.t0010_enderecoscorreiosfaixacpc] ([cpc_nu_sequencial]);
CREATE TABLE [dbo.t0010_enderecoscorreiosfaixalocalidade] ( [loc_rad1_ini] NVARCHAR(5) NOT NULL , [loc_suf1_ini] NVARCHAR(3) NOT NULL , [loc_rad1_fim] NVARCHAR(5) NOT NULL , [loc_suf1_fim] NVARCHAR(3) NOT NULL , [loc_rad2_ini] NVARCHAR(5) DEFAULT NULL, [loc_suf2_ini] NVARCHAR(3) DEFAULT NULL, [loc_rad2_fim] NVARCHAR(5) DEFAULT NULL, [loc_suf2_fim] NVARCHAR(3) DEFAULT NULL, [loc_nu_sequencial] NUMERIC(19,0) DEFAULT 0); CREATE INDEX [WDIDX_t0010_enderecoscorreiosfaixalocalidade_loc_nu_sequencial] ON [dbo.t0010_enderecoscorreiosfaixalocalidade] ([loc_nu_sequencial]);
CREATE TABLE [dbo.t0010_enderecoscorreiosfaixauf] ( [ufe_sg] NVARCHAR(2) NOT NULL UNIQUE , [ufe_no] NVARCHAR(72) NOT NULL , [ufe_rad1_ini] NVARCHAR(5) NOT NULL , [ufe_suf1_ini] NVARCHAR(3) NOT NULL , [ufe_rad1_fim] NVARCHAR(5) NOT NULL , [ufe_suf1_fim] NVARCHAR(3) NOT NULL , [ufe_rad2_ini] NVARCHAR(5) DEFAULT NULL, [ufe_suf2_ini] NVARCHAR(3) DEFAULT NULL, [ufe_rad2_fim] NVARCHAR(5) DEFAULT NULL, [ufe_suf2_fim] NVARCHAR(3) DEFAULT NULL);
CREATE TABLE [dbo.t0010_enderecoscorreiosfaixauop] ( [uop_nu_sequencial] NUMERIC(19,0) DEFAULT NULL, [fnc_nu_inicial] INTEGER DEFAULT NULL, [fnc_nu_final] INTEGER DEFAULT NULL, [fnc_in_tipo] NVARCHAR(255) DEFAULT NULL); CREATE INDEX [WDIDX_t0010_enderecoscorreiosfaixauop_uop_nu_sequencial] ON [dbo.t0010_enderecoscorreiosfaixauop] ([uop_nu_sequencial]);
CREATE TABLE [dbo.t0010_enderecoscorreiosgrandeusuario] ( [gru_nu_sequencial] NUMERIC(19,0) UNIQUE DEFAULT NULL, [ufe_sg] NVARCHAR(255) DEFAULT NULL, [loc_nu_sequencial] NUMERIC(19,0) DEFAULT NULL, [gru_no] NVARCHAR(255) DEFAULT NULL, [cep] FLOAT DEFAULT NULL, [gru_endereco] NVARCHAR(255) DEFAULT NULL, [gru_key_dne] NVARCHAR(255) DEFAULT NULL, [temp] NVARCHAR(255) DEFAULT NULL, [Log_nu_sequencial] NUMERIC(19,0) DEFAULT 0, [bai_nu_sequencial] NUMERIC(19,0) DEFAULT 0); CREATE INDEX [WDIDX_t0010_enderecoscorreiosgrandeusuario_loc_nu_sequencial] ON [dbo.t0010_enderecoscorreiosgrandeusuario] ([loc_nu_sequencial]); CREATE INDEX [WDIDX_t0010_enderecoscorreiosgrandeusuario_Log_nu_sequencial] ON [dbo.t0010_enderecoscorreiosgrandeusuario] ([Log_nu_sequencial]); CREATE INDEX [WDIDX_t0010_enderecoscorreiosgrandeusuario_bai_nu_sequencial] ON [dbo.t0010_enderecoscorreiosgrandeusuario] ([bai_nu_sequencial]);
CREATE TABLE [dbo.t0010_enderecoscorreioslocalidade] ( [loc_nu_sequencial] NUMERIC(19,0) NOT NULL UNIQUE DEFAULT NULL, [loc_nosub] NVARCHAR(255) DEFAULT NULL, [loc_no] NVARCHAR(255) DEFAULT NULL, [cep] FLOAT DEFAULT NULL, [loc_in_situacao] FLOAT DEFAULT NULL, [loc_in_tipo_localidade] NVARCHAR(255) DEFAULT NULL, [loc_nu_sequencial_sub] FLOAT DEFAULT NULL, [loc_key_dne] NVARCHAR(255) DEFAULT NULL, [temp] NVARCHAR(255) DEFAULT NULL, [ufe_sg] NVARCHAR(2) ); CREATE INDEX [WDIDX_t0010_enderecoscorreioslocalidade_ufe_sg] ON [dbo.t0010_enderecoscorreioslocalidade] ([ufe_sg]);
CREATE TABLE [dbo.t0010_enderecoscorreioslogradouro] ( [log_nu_sequencial] NUMERIC(19,0) NOT NULL UNIQUE DEFAULT NULL, [ufe_sg] VARCHAR(2) DEFAULT NULL, [loc_nu_sequencial] NUMERIC(19,0) DEFAULT 0, [log_no] VARCHAR(70) DEFAULT NULL, [log_nome] VARCHAR(125) DEFAULT NULL, [bai_nu_sequencial_fim] NUMERIC(19,0) DEFAULT NULL, [cep] VARCHAR(16) DEFAULT NULL, [log_complemento] VARCHAR(100) DEFAULT NULL, [log_tipo_logradouro] VARCHAR(72) DEFAULT NULL, [log_status_tipo_log] VARCHAR(1) DEFAULT NULL, [log_no_sem_acento] VARCHAR(70) DEFAULT NULL, [log_key_dne] VARCHAR(16) DEFAULT NULL, [ind_uop] VARCHAR(1) DEFAULT NULL, [ind_gru] VARCHAR(1) DEFAULT NULL, [temp] VARCHAR(8) DEFAULT NULL, [bai_nu_sequencial_ini] NUMERIC(19,0) DEFAULT 0); CREATE INDEX [WDIDX_t0010_enderecoscorreioslogradouro_loc_nu_sequencial] ON [dbo.t0010_enderecoscorreioslogradouro] ([loc_nu_sequencial]); CREATE INDEX [WDIDX_t0010_enderecoscorreioslogradouro_bai_nu_sequencial_ini] ON [dbo.t0010_enderecoscorreioslogradouro] ([bai_nu_sequencial_ini]);
CREATE TABLE [dbo.t0010_enderecoscorreiostipologradouro] ( [tipologradouro] NVARCHAR(10) DEFAULT NULL);
CREATE TABLE [dbo.t0010_enderecoscorreiosunidoper] ( [uop_nu_sequencial] NUMERIC(19,0) NOT NULL UNIQUE DEFAULT NULL, [ufe_sg] VARCHAR(2) DEFAULT NULL, [log_nu_sequencial] INTEGER DEFAULT NULL, [bai_nu_sequencial] NUMERIC(19,0) DEFAULT NULL, [uop_no] VARCHAR(100) DEFAULT NULL, [cep] VARCHAR(16) DEFAULT NULL, [uop_endereco] VARCHAR(200) DEFAULT NULL, [uop_in_cp] VARCHAR(1) DEFAULT NULL, [uop_key_dne] VARCHAR(16) DEFAULT NULL, [temp] VARCHAR(8) DEFAULT NULL, [loc_nu_sequencial] NUMERIC(19,0) DEFAULT 0); CREATE INDEX [WDIDX_t0010_enderecoscorreiosunidoper_bai_nu_sequencial] ON [dbo.t0010_enderecoscorreiosunidoper] ([bai_nu_sequencial]); CREATE INDEX [WDIDX_t0010_enderecoscorreiosunidoper_loc_nu_sequencial] ON [dbo.t0010_enderecoscorreiosunidoper] ([loc_nu_sequencial]);
ALTER TABLE [dbo.t0010_enderecoscorreiosfaixauop] ADD FOREIGN KEY ([uop_nu_sequencial]) REFERENCES [dbo.t0010_enderecoscorreiosunidoper] ([uop_nu_sequencial]); ALTER TABLE [dbo.t0010_enderecoscorreioslogradouro] ADD FOREIGN KEY ([log_nu_sequencial]) REFERENCES [dbo.t0010_enderecoscorreiosunidoper] ([uop_nu_sequencial]); ALTER TABLE [dbo.t0010_enderecoscorreiosgrandeusuario] ADD FOREIGN KEY ([Log_nu_sequencial]) REFERENCES [dbo.t0010_enderecoscorreioslogradouro] ([log_nu_sequencial]); ALTER TABLE [dbo.t0010_enderecoscorreiosunidoper] ADD FOREIGN KEY ([bai_nu_sequencial]) REFERENCES [dbo.t0010_enderecoscorreiosbairro] ([bai_nu_sequencial]); ALTER TABLE [dbo.t0010_enderecoscorreiosbairro] ADD FOREIGN KEY ([loc_nu_sequencial]) REFERENCES [dbo.t0010_enderecoscorreioslocalidade] ([loc_nu_sequencial]); ALTER TABLE [dbo.t0010_enderecoscorreiosgrandeusuario] ADD FOREIGN KEY ([loc_nu_sequencial]) REFERENCES [dbo.t0010_enderecoscorreioslocalidade] ([loc_nu_sequencial]); ALTER TABLE [dbo.t0010_enderecoscorreiosgrandeusuario] ADD FOREIGN KEY ([bai_nu_sequencial]) REFERENCES [dbo.t0010_enderecoscorreiosbairro] ([bai_nu_sequencial]); ALTER TABLE [dbo.t0010_enderecoscorreiosfaixabairro] ADD FOREIGN KEY ([bai_nu_sequencial]) REFERENCES [dbo.t0010_enderecoscorreiosbairro] ([bai_nu_sequencial]); ALTER TABLE [dbo.t0010_enderecoscorreioscpc] ADD FOREIGN KEY ([loc_nu_sequencial]) REFERENCES [dbo.t0010_enderecoscorreioslocalidade] ([loc_nu_sequencial]); ALTER TABLE [dbo.t0010_enderecoscorreiosfaixacpc] ADD FOREIGN KEY ([cpc_nu_sequencial]) REFERENCES [dbo.t0010_enderecoscorreioscpc] ([cpc_nu_sequencial]); ALTER TABLE [dbo.t0010_enderecoscorreioslocalidade] ADD FOREIGN KEY ([ufe_sg]) REFERENCES [dbo.t0010_enderecoscorreiosfaixauf] ([ufe_sg]); ALTER TABLE [dbo.t0010_enderecoscorreiosfaixalocalidade] ADD FOREIGN KEY ([loc_nu_sequencial]) REFERENCES [dbo.t0010_enderecoscorreioslocalidade] ([loc_nu_sequencial]); ALTER TABLE [dbo.t0010_enderecoscorreiosunidoper] ADD FOREIGN KEY ([loc_nu_sequencial]) REFERENCES [dbo.t0010_enderecoscorreioslocalidade] ([loc_nu_sequencial]); ALTER TABLE [dbo.t0010_enderecoscorreioslogradouro] ADD FOREIGN KEY ([loc_nu_sequencial]) REFERENCES [dbo.t0010_enderecoscorreioslocalidade] ([loc_nu_sequencial]); ALTER TABLE [dbo.t0010_enderecoscorreioslogradouro] ADD FOREIGN KEY ([bai_nu_sequencial_ini]) REFERENCES [dbo.t0010_enderecoscorreiosbairro] ([bai_nu_sequencial]);
Bases de CEP dos Correios:
https://www.correios.com.br/para-voce/precisa-de-ajuda/o-que-e-cep-e-por-que-usa-lo/bases-de-cep
http://www.shopping.correios.com.br/correiosonline
Bons estudos!
-- Adriano José Boller ______________________________________________ Consultor e Representante Oficial da PcSoft no Brasil +55 (41) 9949 1800 adrianoboller@gmail.com skype: adrianoboller http://wxinformatica.com.br/Message modifié, 01 novembre 2016 - 18:57 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 655 messages Popularité : +175 (223 votes) |
|
Posté le 30 août 2017 - 05:11 |
arr_Resultados is array of string
gsValorMemorizado is string = 1
DeclareWebserviceContext(gsValorMemorizado)
DeclareWebserviceContext(arr_Resultados)
Procedure Ws_BuscaEndereco(Token, Endereco)
arrResultado is array of string ok is boolean = False X is int = 0 nTokenOk is int = 0 sTabela is string = "Enderecos" Resultado is string = "" sErro is string = "" GloToken is string = ""
OkConn is boolean = False
OkConn = HConnectionOpen(MyHfsql)
ok = HExecuteQuery(QRY_Select_Cliente,hQueryWithoutHFCorrection,Token)
IF ok = True THEN FOR EACH QRY_Select_Cliente IF HFound(QRY_Select_Cliente) = True AND Token = QRY_Select_Cliente.Token THEN GloToken = QRY_Select_Cliente.Token ELSE GloToken = "" END END END
IF Token <> "" AND Token = GloToken IF OkConn = True THEN ok = HExecuteQuery(QRY_Select_Cliente,MyHfsql,hQueryWithoutHFCorrection,Token) IF ok = True THEN FOR EACH QRY_Select_Cliente IF HFound(QRY_Select_Cliente) = True THEN ok = HExecuteQuery(QRY_Select_CEP,MyHfsql,hQueryWithoutCorrection,Endereco) IF ok =True THEN Resultado = "<Xml><Retorno>" FOR EACH QRY_Select_CEP IF HFound(QRY_Select_CEP) = True AND X = 0 X += 1 Resultado += ws_xml_registro_comeco(X) Resultado += ws_xml_registro_corpo(QRY_Select_CEP.Sequencial,"Sequencial") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.LogradouroUpper,"LogradouroUpper") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.LogradouroAbrev,"LogradouroAbrev") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.Logradouro,"Logradouro") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.LogradouroCompl,"LogradouroCompl") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.Fonetica,"Fonetica") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.LogradouroTipo,"LogradouroTipo") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.CEP,"CEP") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.Bairro,"Bairro") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.BairroAbrev,"BairroAbrev") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.IDCidade,"IDCidade") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.Cidade,"Cidade") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.SubCidadeAbrev,"SubCidadeAbrev") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.SubCidade,"SubCidade") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.CodIBGECid,"CodIBGECid") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.CodIBGEUF,"CodIBGEUF") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.UF,"UF") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.Pais,"Pais") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.LogradouroIniciais,"LogradouroIniciais") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.NumeroInicial,"NumeroInicial") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.NumeroFinal,"NumeroFinal") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.DMSLatitude,"DMSLatitude") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.DMSLongitude,"DMSLongitude") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.GDLatitude,"GDLatitude") Resultado += ws_xml_registro_corpo(QRY_Select_CEP.GDLongitude,"GDLongitude") Resultado += ws_xml_registro_final() END END IF X = 0 THEN Resultado = ws_zero_registros(sTabela) END Resultado += "<TOTAL>"+X+"</TOTAL>" Resultado += "</Retorno></Xml>" ELSE Resultado += "<Error>Erro 002 tabela<Error>" END ELSE Resultado += "<Error>Erro 003 tabela<Error>" END END ELSE Resultado += "<Error>Erro 004 tabela<Error>" END ELSE Resultado += "<Error>Erro 005 Conexao<Error>" END ip is string = WebserviceClientIPAddress(False) ok = HExecuteQuery(QRY_Insert_Log,hQueryWithoutHFCorrection,DateSys()+TimeSys(),ip,Token,Endereco) HReset(QRY_Select_CEP)
HReset(QRY_Select_Cliente) HConnectionClose(ConnNativa) ELSE Resultado += "<Error>Token invalido<Error>" END
nTamanho is int = Length(Resultado)
Add(arrResultado,Resultado)
RESULT (arrResultado)
SELECT enderecoscorreios.Sequencial AS Sequencial, enderecoscorreios.LogradouroUpper AS LogradouroUpper, enderecoscorreios.LogradouroAbrev AS LogradouroAbrev, enderecoscorreios.Logradouro AS Logradouro, enderecoscorreios.LogradouroCompl AS LogradouroCompl, enderecoscorreios.Fonetica AS Fonetica, enderecoscorreios.LogradouroTipo AS LogradouroTipo, enderecoscorreios.CEP AS CEP, enderecoscorreios.Bairro AS Bairro, enderecoscorreios.BairroAbrev AS BairroAbrev, enderecoscorreios.IDCidade AS IDCidade, enderecoscorreios.Cidade AS Cidade, enderecoscorreios.SubCidadeAbrev AS SubCidadeAbrev, enderecoscorreios.SubCidade AS SubCidade, enderecoscorreios.CodIBGECid AS CodIBGECid, enderecoscorreios.CodIBGEUF AS CodIBGEUF, enderecoscorreios.UF AS UF, enderecoscorreios.Pais AS Pais, enderecoscorreios.LogradouroIniciais AS LogradouroIniciais, enderecoscorreios.NumeroInicial AS NumeroInicial, enderecoscorreios.NumeroFinal AS NumeroFinal, enderecoscorreios.DMSLatitude AS DMSLatitude, enderecoscorreios.DMSLongitude AS DMSLongitude, enderecoscorreios.GDLatitude AS GDLatitude, enderecoscorreios.GDLongitude AS GDLongitude, MATCH(enderecoscorreios.LogradouroUpper, enderecoscorreios.LogradouroAbrev, enderecoscorreios.Logradouro, enderecoscorreios.LogradouroCompl, enderecoscorreios.Fonetica, enderecoscorreios.LogradouroTipo, enderecoscorreios.CEP, enderecoscorreios.Bairro, enderecoscorreios.BairroAbrev, enderecoscorreios.Cidade, enderecoscorreios.SubCidadeAbrev, enderecoscorreios.SubCidade, enderecoscorreios.UF, enderecoscorreios.Pais, enderecoscorreios.LogradouroIniciais) AGAINST({ParamKFulltext}) AS FullTextPertinence FROM enderecoscorreios WHERE FullTextPertinence > {ParamFullTextPertinence} ORDER BY FullTextPertinence DESC
SELECT clientes.id AS id, clientes.Nome AS Nome, clientes.Email AS Email, clientes.Celular AS Celular, clientes.Token AS Token FROM clientes WHERE clientes.Token = {ParamToken}
INSERT INTO wslog ( datahora, ip, Token, acao ) VALUES ( {Paramdatahora}, {Paramip}, {ParamToken}, {Paramacao} )
-- Adriano José Boller ______________________________________________ Consultor e Representante Oficial da PcSoft no Brasil +55 (41) 99949 1800 adrianoboller@gmail.com skype: adrianoboller http://wxinformatica.com.br/ |
| |
| |
| | | |
|
| | | | |
| | |
|