Endereços e CEPs de maneira simplificada – Parte 2

Tempo de Leitura: 8 Minutos

Nesta segunda parte do artigo, vamos tratar dos endereços e lugares que não são atendidos totalmente pelo endereçamento do CEP, ou seja, são lugares como CEPs Especiais, ou CEPs únicos para determinada região, estes lugares são onde o DNE e o CEP não se sobrepõem, e o CEP só pode ser usado para identificar a cidade e/ou bairro e não o logradouro. Nesta categoria, é possivel também identificar se uma determinada faixa de CEP está dentro de uma região válida, como um bairro ou região física, já que os CEPs não seguem uma numeração sequencial, e sim tentam validar o endereçamento físico.

O primeiro ponto neste tipo de endereçamento, é a criação da tabela em nossa base de dados responsável pelo armazenamento dos CEPS, conforme o esquema abaixo:

CREATE TABLE `ceps` (
  `cep_id` varchar(9) NOT NULL,
  `bairro` varchar(100) NOT NULL,
  `cidade` varchar(50) NOT NULL DEFAULT '',
  `uf_id` char(2) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

A estrutura determina, o CEP como chave primária, o bairro para atender as novas tabelas dos correios, de 2018 em diante, onde podem existir cidades médias, que tenham mais de 1 cep único, ou seja, o cep é para um bairro todo. cidade que é o campo que determina a cidade, ATENÇÃO: quem acompanhou a parte 1 deve ter reparado que usamos a cidade de maneira TEXTUAL, e não pelo ID da tabela cidades, isso se deve ao fato de que a tabela ceps não usa ainda a estrutura do IBGE, ou seja, algumas regiões principalmente onde os correios atendem de maneira resumida, ou seja, sem os serviços expressos, a nomenclatura de cidade se confunde com bairro e com distrito. Segundo a informação que tive é que a base do e-DNE de nov/2019 e mais atuais já corrige isso, se alguém tem acesso a esses dados, e quiser mandar faço a filtragem e disponibilizo a atualização do sistema pelo Google Drive. Por fim, a ultima coluna é a informação de qual o UF a que este CEP pertence, e demais dados podem ser obtidos desse mesmo processo.

Quem tiver interesse, a base que tenho de CEPS únicos esta um pouco defasada, com informações de novembro/2017 mais conta com mais de 9000 outros ceps além dos da base principal. pode fazer o download: TABELA_CEPS_MYSQL.SQL diretamente do Google Drive.

A ESTRUTURA DO CEP

A estrutura do CEP, foi criada em 1971 como um código de 5 dígitos numéricos, que é mantida até hoje, e determina uma forma de separação e classificação das encomendas e cartas dentro do fluxo postal, inicialmente era para ser usada somente pela ECT, porém, pela abrangência e organização, logo passou a ser usada por praticamente qualquer empresa de transporte no Brasil.

Em 1992, o CEP passou por uma atualização, afim de não codificar somente a região e incluir também a codificação de logradouros, e foi adicionado um sufixo de 3 dígitos numéricos que correspondem aos logradouros e outros CEPS especiais, criados pelos correios de maneira permanente ou não. Desde 1992 os correios vem codificando todas as cidades do Brasil pelo novo padrão, porém, ainda não estamos totalmente codificados, até porque existem muitas áreas remotas e que a própria ECT não atende diretamente e não tem informações sobre essa região.

O CEP vem sendo composto seguindo a estrutura de Região, Sub-região, Setor, Subsetor, Divisor de Subsetor e Identificadores de Distribuição, onde este ultimo sufixo representa também os logradouros onde o sistema ja é codificado, veja graficamente, como essa divisão funciona: (imagem pública do site dos correios)

CEP_1.jpg

Quem quiser, pode ler mais sobre a estrutura do CEP no site dos correios em: http://www.correios.com.br/enviar-e-receber/ferramentas/cep/estrutura-do-cep onde é exemplificado passo a passo da codificação deste CEP da cidade de campinas. O ponto que se torna novamente útil para a nossa situação, é:
1 REGIÃO – Interior de São Paulo
3 SUB-REGIÃO – Campinas (que não tem nada a ver com a cidade, pois poderia abranger mais de 1 cidade, onde a distribuição não é feita porta a porta)
1 SETOR – Campinas (em nível de setor, a cidade, se for área urbana, também coincide com a divisão de cidade, em áreas mistas e rurais pode não ser exatamente 1 só cidade)
6 SUBSETOR – Arthur Nogueira (em algumas regiões são determinados pelos bairros, outras, pelas distritais dos correios ou mesmo subprefeituras como em são paulo)
5 DIVISOR DE SUBSETOR – Engenheiro Coelho e Reserva Técnica (veja, o cep de exemplo dos correios pertence a um subsetor e a uma reserva, determinada em 1971 para crescimento)

000 – SUFIXO ele é quem determina o logradouro, ou um CEP Especial ou UNIDADES DOS CORREIOS e sua estrutura determina uma sequencia de faixas de valor, como segue:
000 a 899 – CEPS que identificam logradouros, praças, ruas, entre outros endereços físicos
900 a 959 – CEPS Especiais, como delegacias, escolas, centros comerciais, corpo de bombeiros, e outras unidades onde os correios possam determinar uma necessidade técnica. Ou seja, podem existir o mesmo cep com outro sufixo determinando o mesmo endereço físico.
960 a 969 – Faixa de CEP PROMOCIONAL determinada para necessidades de recebimento de grandes volumes de correspondências (promoções) e não podem ser salvas na base de logradouros nem de cep único devido a seu caráter dinâmico, e de não existir um elo com o endereço físico, já que o endereço físico possui um outro sufixo que o representa.
970 a 989 – Representa as unidades dos correios, como agências, agencias franqueadas, centros de distribuição, centros de triagem entre outros, podem ser salvos na base de CEP-UNICO já que representam especificamente um endereço inclusive com o numeral na rua determinado. E não se alteram exceto se a unidade fechar ou for mudada de endereço físico.
990 a 999 – São destinadas a CAIXAS POSTAIS COMUNITÁRIAS, como as caixas postais dentro de agencias dos correios, ou de endereçamento virtual, não devem ser salvas, pois também são dinamicamente alocados e o endereço físico é determinado por outro cep.

Problemas e Soluções

Mantivemos as estruturas de dados na base suportando o sufixo e o caractere de – como um campo literal, assim como determina o manual técnico dos correios, o que facilita em muito algumas operações de reimportação das atualizações dos correios, e também mantém as características dos dados vindos dos correios, mesmo sabendo-se que poderíamos ganhar um pouco de performance e a economia de alguns mb na base de dados esse ganho não justifica sair dos padrões já que na atualidade, o impacto não é tão significativo assim, mesmo em sistemas com grande fluxo de consultas e atualizações.

Outro grande problema, que a maioria dos sistemas comerciais acaba por pecar, é na realimentação de dados, como a própria ECT indica, não é válido criar vínculos entre as suas bases de dados e as bases de dados importadas dos sistemas e-DNE e outros sistemas da empresa ou de terceiros, por este motivo, essa estrutura composta pelas tabelas de CEPS, LOGRADOUROS e BAIRROS não pode ser referenciada e os endereços provenientes delas devem ser salvos de maneira textual em suas bases de dados.

Trocando em miúdos, vamos supor que você tenha no seu sistema um cadastro de endereços, e quer usar esta nossa base, ou a base dos correios ou qualquer outra para consultar o cep e pre-preencher os dados, estaria errado importar para a sua base as referências (chaves estrangeiras) para uso e atualização, pois, os dados do endereço físico devem ser salvos de maneira TEXTUAL, isso inclui o CEP, o TIPO DE LOGRADOURO, NOME DO LOGRADOURO, BAIRRO e para os CEPS ÚNICOS também a informação de CIDADE pode ser alterada sem aviso prévio.

O motivo dos CEPS ÚNICOS terem a informação de CIDADE sem vínculo com as cidades físicas, é que onde a ECT ainda não concluiu o registro da codificação por logradouro, essa informação pode estar anexada a denominação de 1971 que é referenciando um distrito ou a área de atendimento de uma unidade dos correios. Quem quiser ver o andamento da codificação dos correios, pode consultar o estados das faixas de cep em: http://www.buscacep.correios.com.br/sistemas/buscacep/buscaFaixaCep.cfm e verificar o andamento da região, dai, quando essa informação é proveniente dessa base, podemos verificar se a cidade existe de maneira textual na base de dados do IBGE que representa geograficamente e fisicamente uma região.

Conclusão

A informação da base de dados de CEP mesmo fazendo parte da consulta pública e do direito a informação, é de propriedade da ECT, e os dados atualizados trimestralmente ou mensalmente pela empresa, podem ser consultados pelo site oficial dos correios, porém, não distribuídos para terceiros, e são comercializados de maneira nacional em forma de um serviço de software e os dados e atualizações baixados diretamente pelo site para quem adquire a informação.

Como os valores são altos, para a maioria dos pequenos comércios, e empresas que querem simplesmente garantir uma maior integridade dos dados inseridos, além do mais, os dados comercializados pela ECT não possuem um mecanismo de consulta eficiente, ou que possa ser integrado a outros sistemas, faz com que soluções sejam desenvolvidas de maneira individual e não padronizada, e muitas vezes, sem o devido tratamento este motivo é que fez com que eu esteja apresentando o sistema que mantenho em funcionamento, e que pode ser facilmente atualizado pelas bases da ECT.

A ultima atualização dos dados disponibilizados, representa a base a ECT de novembro/2017 e se alguém que possui contrato de algum serviço tiver acesso (que é gratuito para os clientes com contrato de sedex ou encomendas) e quiser disponibilizar os arquivos TXT dos correios publico aqui as atualizações dessa base, e se for do interesse forneco o sistema de acesso e consulta dos dados, em forma de API ou da maneira que ficar melhor, basta entrar em contato pelos comentários que passo os dados de contato pessoais.

CONHEÇA NOSSA API PÚBLICA DE CONSULTA DE CEP

 

ADQUIRA O BANCO DE DADOS DE CEP NACIONAL (DNE)
PARA USO NOS SEUS SISTEMAS E APLICATIVOS