Melhor forma de exportar dados

Delphi

26/03/2013

Oi, gente.
Supondo que eu tenho uma aplicação onde eu faço uma exportação e importação de dados, tipo pra sincronizar em dois computadores.
Como vocês me sugerem fazer isso? Usando arquivos TXT mesmo?
Seria a forma mais rápida, mais fácil, mais adequada?
Grata.
Carla Batista

Carla Batista

Curtidas 0

Respostas

Bruno Leandro

Bruno Leandro

26/03/2013

Mais facil e mais rapida provavelmente sim, mas quanto a mais adequado cada situação pede uma solução e nem sempre gerar arquivo txt é o mais adequado, no entanto em muitos casos é. São varios itens que deve ser levado em consideração, como segurança, desempenho, necessidade do cliente.
GOSTEI 0
Carla Batista

Carla Batista

26/03/2013

Obrigada pela resposta, Bruno.
No meu caso, sou eu quem vai exportar e também importar. É pra fazer uma transferência de dados entre clientes.
Por exemplo, um cadastra um produto e quer compartilhar com outro de outro lugar. Aí ele exporta e manda o arquivo pro outro importar. Geralmente são poucos registros, mas pode acontecer de mandar uma tabela inteira, que deve ir crescendo ao longo do tempo.
Qual seria outra forma? Vi algo sobre XML, mas ainda não domino essa linguagem, então não quis arriscar.
GOSTEI 0
Wasley Portes

Wasley Portes

26/03/2013

Carlinha, eu trabalho com XML e fica muito mais fácil.
Você cria uma estrutura para o arquivo por meios das TAGs e exporta, depois faz a leitura do XML.
GOSTEI 0
Carla Batista

Carla Batista

26/03/2013

Oi, Wasley.
Obrigada pela resposta e desculpa a demora.
Mas o XML não vai ficar mais pesado que o TXT? E se forem, como eu disse, muitos registros? Não vai perder desempenho?
Grata.
GOSTEI 0
Wasley Portes

Wasley Portes

26/03/2013

Vai depender da quantidade de registros que trabalha, fica maior devido as TAGs que precisa gerar.
O certo é analisar a sua rotina e avaliar a melhor solução.
GOSTEI 0
William

William

26/03/2013

Olá Carla complementando a resposta do Wasley, você pode usar uma thread para fazer esse processo de importação / exportação.

Essa prática é muito comum em aplicações PDV vs Retaguarda, onde o PDV exporta as vendas para banco do Retaguarda, mas tudo transparente para o usuário pois é excutado como thread (processo a parte), não paralisando o sistema enquanto essa tarefa é executada.

Acredito que desse modo não seja tão aparente possíveis perda de performance.
GOSTEI 0
Bruno Leandro

Bruno Leandro

26/03/2013

Quanto a desempenho não cheguei a testar se existe diferença, acredito eu que não. A diferença principal é o tamanho do arquivo pois seu arquivo irá conter as tag de inicio e fim do conteudo Ex

<TagInicio>Conteudo<TagFim>


isso para cada campo e cada registro do seu arquivo ou seja suponde que voce possua no arquivo somente o código de alguma coisa

1
2
3
4

no xml ficaria
<Tag>1<Tag>
<Tag>2<Tag>
<Tag>3<Tag>
<Tag>4<Tag>


nao incluindo o cabeçalho ou seja ficaria umas 10 vezes maior, logico que quanto mais registro voce tiver essa proporção tende a diminuir um pouco

caso opte por usar xml antes de uma pesquisada sobre JSON e CSV
GOSTEI 0
Joel Rodrigues

Joel Rodrigues

26/03/2013

Um ponto importante de utilizar XML (ou JSON mais recentemente) é a facilidade de integração com outras aplicações e maior facilidade na leitura de seus arquivos por outras pessoas que possam precisar fazê-lo. Tudo bem que no momento você está exportando e importando "internamente", mas acho que vale a pena considerar usar XML.
GOSTEI 0
Carla Batista

Carla Batista

26/03/2013

Nossa gente, obrigada mesmo.
Já estou dando uma olhada pra ver se pego fácil a estrutura do XML, mas me parece muito mais bem organizado que um TXT, onde eu defino o formato.
GOSTEI 0
Carla Batista

Carla Batista

26/03/2013

Olá Carla complementando a resposta do Wasley, você pode usar uma thread para fazer esse processo de importação / exportação.

Essa prática é muito comum em aplicações PDV vs Retaguarda, onde o PDV exporta as vendas para banco do Retaguarda, mas tudo transparente para o usuário pois é excutado como thread (processo a parte), não paralisando o sistema enquanto essa tarefa é executada.

Acredito que desse modo não seja tão aparente possíveis perda de performance.

wllfl, vou ver essa parte que você falou também. Ma parece bastante útil. Seria legal se o processo pudesse ser feito sem interferir no funcionamento principal do projeto.
GOSTEI 0
Carla Batista

Carla Batista

26/03/2013

Olá, gente. Sugeri essa forma que o wlfl sugeriu para o responsável pelo projeto e ele achou bem legal, utilizando XML mesmo. Mas de todo jeito sobrou pra mim rsrs
Agora vou estudar para fazer isso. Obrigada a todos.
Poderiam fechar o tópico, please?
GOSTEI 0
José

José

26/03/2013

Obrigado Marcinha por seu retorno.
boa sorte, e estou concluindo este tópico.
GOSTEI 0
POSTAR