lui_zito 0 Denunciar post Postado Julho 5, 2005 SrsPreciso desenvolver uma aplicação capaz de importar dados de um arquivo (txt ou csv ou xls ou mdb) para o SQL Server , sendo que o layout é variavel e a massa de dados é grande.Pode ocorrer de vir Hum milhão de registros em um arquivo texto. (exemplo).Após migrado , terei que manipular esses registros , pois pode ter vindo alguns registros inconsistentes (data fora de range, etc).Antes de tudo , preciso que estes dados estejam dentro do SQL ...Lembrando que o usuário que irá manipular , não seria propriamente um técnico.Creio que terei aque fazer alguma coisa (tipo wizard).A idéia é fazer em ASP.NET , C#.Se tiverem uma idéia melhor.... , estou aberto a sugestõesSe puderem me ajudarGde abraço Compartilhar este post Link para o post Compartilhar em outros sites
Thiago_FPereira 0 Denunciar post Postado Julho 5, 2005 Zito, Eu já tive um problema parecido com esse. Nosso cliente enviava semanalmente no Excel várias informações, mas sempre com os formatos errados. PAra resolver isso criei uma macro no Excel e sempre rodava essa rotina ao chegar o arquivo. Depois que tudo estivesse correto, exportava para o SQLServer sem problemas. Qualquer coisa avisa Thiago F. Pereira http://br.thespoke.net/MyBlog/ThiagoFPereira/MyBlog.aspx Compartilhar este post Link para o post Compartilhar em outros sites
rOcKLoCo 0 Denunciar post Postado Julho 5, 2005 acho que o grande problema mesmo será o tamanho do arquivo a ser importado... se for diretamente na internet... vai dar problemas, ai você teria q quebrar em partes os arquivos...minha idéia inicial seria como você disse, criar um Wizar igual ao do Excel qdo você importa um arquivo TXT... Att,Carlos Compartilhar este post Link para o post Compartilhar em outros sites
lui_zito 0 Denunciar post Postado Julho 6, 2005 Então Srs.Vou explicar melhorA aplicação será executada em uma Intranet.Posso receber tanto arquivo TXT,CSV,MDB,XLS .... com formatos totalmente diferentes de várias empresas.Ou seja , cada vez vem campos diferentes ... , então a macro não resolveria , mesmo pq recebo outros tipos de arquivo.EM primeira instancia , tenho que jogar o conteudo para uma tabela no SQL (com o mesmo formato que recebi)Estava pensando em fazer isso com o DTS . Mas será que consigo programar o DTS pelo C# . Será que é viavél ?? ME falaram que se fizer um programinha ..lendo linha a linha , fica mais rápido. Será ? Depois terei que manipular estes dados de uma tabela pra outra (dentro do SQL) , aplicando regras de negócio , etc.Essa segunda parte creio que terá que ser feito com uma lógica de programação mesmo .Mas a duvida neste momento é a imoprtação dos arquivos...Abraço ! Compartilhar este post Link para o post Compartilhar em outros sites
rOcKLoCo 0 Denunciar post Postado Julho 6, 2005 se for Intranet.. você conseguira enviar arquivos maiores... por ser em rede..ai eu faria um Wizard para ler o arquivo e dizer para onde vai cada coluna do arquivo enviado...+ou- igual ao do Excel... mas você teria q fazer alguma coisa para identicar o tipo do arquivo para manipular da melhor maneira...falows Compartilhar este post Link para o post Compartilhar em outros sites
lui_zito 0 Denunciar post Postado Julho 6, 2005 Como seria feito esse wizard ?Utilizarei qual ferramenta para carregar os dados de um TXT (por exemplo) e depois fazer o insert em massa no SQL ? Compartilhar este post Link para o post Compartilhar em outros sites
rOcKLoCo 0 Denunciar post Postado Julho 6, 2005 Passos:- Upload do arquivo- Solicitar para o usuário qual a formatação(se está separado por virgula ou ponto e virgula por exemplo)- E perguntar ao usuário o que é cada coluna, onde deverá ser cadastrado...ai você determinaria por padrão as tabelas e campos para onde podem ser cadastrados os dados... e o usuário somente indicaria: campo1 do TXT vai pra tabela1 campo3...entendeu?Falows Compartilhar este post Link para o post Compartilhar em outros sites
lui_zito 0 Denunciar post Postado Julho 6, 2005 Isso tá claro.O Problema é usar qual componente para essa carga.Pois o volume é grande. Pode vir Hum milhão de linhas em um TXT.Se eu for ler linha a linha... o servidor afunda.Ouvi dizer que o ideal é fazer um Wizard para cada tipo de arquivo ..., e após isso gerar um pacote DTS ...e enviar para o servidor executar.Como fazer isso ? Compartilhar este post Link para o post Compartilhar em outros sites
rOcKLoCo 0 Denunciar post Postado Julho 6, 2005 dá uma olhada nisso: http://www.c-sharpcorner.com/Code/2004/June/BulkCopy.asp veja se te ajuda... é o bulkcopy do ADO.NET 2.0... para fazer cópia em massa de dados para um server... Att, Carlos Compartilhar este post Link para o post Compartilhar em outros sites