CEP 2006
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
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
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!!!
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!!!
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.
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.
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.
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.
A base de dados é otima só nao tem os de cidades com apenas um cep
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..
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..
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)
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)
cara isso e muito bom ..muito obrigado
Pessoal eu converti para o Sql Server 2000.
Coloquei no Rapidshare.
http://rapidshare.com/files/36420660/Base_Cep_2006.rar
Coloquei no Rapidshare.
http://rapidshare.com/files/36420660/Base_Cep_2006.rar
PROFESSOR...
Perfeito o código, aprendi muito !!
Claudiney
Perfeito o código, aprendi muito !!
Claudiney
Tópico encerrado , respostas não são mais permitidas