CEP 2006

USUARIO.EXCLUIDOS 08/06/2007 06:08:50
#220269
6:00h da matina, mais um dia de briga depois de um feriado.

Ontem eu dei uma olhada por alto no site, no pouco tempo livre e vi esse tópico.

Bom, baixei e mostreio texto dos CEPs aqui pro pessoal, que aliás chegam daqui há pouco. O pessoal gostou da notícia (quem não gostou muito, no fim, fui eu mesmo, que agora tenho de adaptar várias rotinas para usar essa tabela de CEPs, mas isso é outra história).

Acho que dá para contribuir aqui com uma rotina para converter o texto em questão para o Access.

A rotina utiliza a DAO 2.8 (ADODB e ADOX) e a Scripting Runtime e os controles Windows Common Controls ProgressBar, Common Dialog e Hierarchical Flexgrid. Desse modo, não esqueçam de conferir as referências.

O arquivo descompactado "pesa" mais de 160 Megabytes e demora um pouco para processar, mas se você tiver paciência, a conversão funciona bem. E pode melhorar bem o desempenho, se removerem as atualizações de tela. Só deixei mesmo para acompanhar o processo.

O que eu fiz?

Primeiro, tratei o texto de forma para delimitar os campos e remover linhas inúteis.

Depois gero um banco de dados.

Em seguida, analiso as informações do arquivo de texto e gero uma estrutura de tabela com base no resultado.

Depois crio os arquivos de índices.

Finalmente, importo o texto para a tabela e de quebra, exporto para um arquivo no formato XML, que pode ser aberto pelo navegador.

Simples, fácil e até rápido, considerando o porte do texto.

Segue então o fonte para diversão de vocês.

Eu, por aqui, "comprei" trabalho com a novidade



USUARIO.EXCLUIDOS 08/06/2007 06:26:26
#220270
Saco...

Eu fiz no VB6 e acho que perdi o costume de usar ele... Minha desculpa esfarrapada é a de que o DotNET vicia!

é o seguinte:

O meu primeiro "furo" foi não usar o Option Explicit ao desenvolver a rotininha. Desse modo, depois que eu inseri, apareceu o erro da ausência da declaração de uma variável. E também, meu, o pessoal aqui na firma não gosta do Option Explicit... Eu marco, eles desmarcam, é uma sacanagem só.

O segundo problema é que eu juntei duas rotinas em uma só para encurtar o código. Até aí, normal, mas eu "colei" uma instância de recordset DEPOIS de fechar a conexão, vão vendo á quantas eu ando...

é isso aí, véio tem dessas, esquece o que comeu, não lembra prá onde tá indo, fica gagá mesmo.

E vou me já, não sem vontade de ficar mais um pouco.

é que apesar de eu não estar com a menor vontade de trabalhar, se eu não aproveitar hoje para adiantar as coisas por aqui, vou ter de "me virar" no fim de semana, ou o que é pior, extender mais dias no prazo do trabalho. E eu quero é terminar o mais rápido que puder.

Mas sobre a rotina, tÃÂ' mandando de novo, corrigido.

Espero que, se não atrapalhar, ajude...

FUI!!!
USUARIO.EXCLUIDOS 08/06/2007 06:46:04
#220273
Gente, acho que estou de mau-humor, não tÃÂ' dando uma dentro...

Acertei o código, testei, compactei com o WinRAR, postei, apaguei daqui, baixei e descobri que o que mandei foi o anterior, zipado, sem alteração nenhuma.

Sem xingar, por favor, que eu mesmo já fiz isso por vocês.

Falow, até mais.
USUARIO.EXCLUIDOS 08/06/2007 06:59:18
#220274
Edita os Posts professor, sua colaboração foi de grande ajuda (eu ia fazer justamente isto) mas não precisa deixar versões defeituosas no tópico.
Outra dica é normalizarem a tabela de forma que o mdb ficaria bem menor !
Lamento mas vou fazer isto diretamente no BD (SQL Server) e portanto não terei código para disponibilizar.
RICATOM 08/06/2007 08:24:44
#220281
A base de dados é otima só nao tem os de cidades com apenas um cep
USUARIO.EXCLUIDOS 08/06/2007 11:59:57
#220347
Vai ai uma dica mais facil para converter para o MS ACCESS..

Basta abrir o access depois de aberto na tela onde exibe a relação de tabelas vc clica em alguma parte onde não tenha nenhuma tabela e seleciona a opção "Importar". Ira abrir uma nova janela nesta basta navegar ate o diretorio onde esta o txt caso não esteja vendo o arquivo txt basta alterar a opção "Arquivo do Tipo" na parte inferior da janela para txt e seleciona-lo e clicar em importar.

Apos feito isso deixe a opção que ja vem marcada "Largura Fixa" e so seguir clicando em avançar, avançar, etc....

Não coloquei em access pq aumenta muito o tamanho do ZIP..

valew
qlq coisa so chamar..
LCSD 08/06/2007 12:04:53
#220349
bem...pessoal...eu vou meter o meu bedelho aki....e deixar uma contribuição....tbem....


Uma verificação de cep on line...seria tudo de bom.......(desde q o servidor fique on.....)...

Entaum eu desenvolvi......um Verificador de CEP on line ( ah tambem fiz o de CPF, em um outra oportunidade passo o CÓDIGO)


MASTER2020 10/06/2007 20:59:39
#220590
cara isso e muito bom ..muito obrigado
USUARIO.EXCLUIDOS 10/06/2007 21:04:00
#220591
Pessoal eu converti para o Sql Server 2000.

Coloquei no Rapidshare.

http://rapidshare.com/files/36420660/Base_Cep_2006.rar
USUARIO.EXCLUIDOS 11/06/2007 09:21:22
#220614
PROFESSOR...

Perfeito o código, aprendi muito !!

Claudiney
Página 2 de 2 [20 registro(s)]
Tópico encerrado , respostas não são mais permitidas