Usuário com melhor resposta
Melhor maneira de gravar e ler dados vb.net

Pergunta
-
Boa noite pessoal, estou fazendo um programa em vb.net para calcular estruturas (vigas e pórticos). Como sou leigo em programação estou com uma dúvida:
No programa, o usuário precisa digitar os dados em vários textbox (coordenadas, número da barra, força, área, etc) para o programa calcular a estrutura. Preciso que seja possível que ele salve o que digitou pra não ter que digitar novamente quando fechar o programa. Assim, quando abrir de novo o programa, ele poderá carregar os dados digitados anteriormente e não precisaria digitar tudo de novo.
Andei lendo por aí e vi que existem várias maneiras de fazer isso: por meio de banco de dados, arquivos txt, xml, ini e outros. Qual é o melhor jeito e mais fácil de fazer isso?
Obrigado
Respostas
-
Certo André, entendi!
Então sugiro que você utilize serialização. Serialização é quando queremos gravar o estado de um ou mais objetos em arquivos e depois recuperar este estado. Veja como utilizar serialização neste link:
http://www.macoratti.net/vbn_seri.htm
Desta forma você consegue serializar cada projeto "Casa" que seu usuário queria e depois recuperar o que já foi informado.
Att,
Fabio Rosa.
- Marcado como Resposta André00 quinta-feira, 27 de junho de 2013 01:53
-
Olá Claudio e obrigado pela ajuda.
O programa tem que rodar em qualquer máquina, então mesmo em um computador que não tenha o pacote Word, Excel, Access, etc, ele tem que ser capaz de salvar os dados para carregar depois. Isso é possível usando o banco de dados? Porque eu vi um exemplo em que o banco de dados é criado no access.
Por favor leia a minha resposta ao Fabio para entender o que preciso.
André,
Entendi o que você quer, e já que você quer montar um programa para isso te aconselho usar banco de dados SQL. A parte de salvar no banco é facil e simples, já a parte do calculo que é mais puxado.
Salvando pelo banco de dados vc pode determinar um numero padrão. EX: vc tem 5 clientes, e vai fazer um calculo diferente para cada um.No banco vc pode colocar assim:
CODIGO CLIENTE; CAMPO 1, CAMPO 2, CAMPO 3 .... e assim por diante, conforme sua necessidade.
Ao fazer isso voce vai poder fazer uma rotina dentro do VB para puxar todos os dados já salvos atraves do CODIGO DO CLIENTE.
- Marcado como Resposta André00 quinta-feira, 27 de junho de 2013 01:53
Todas as Respostas
-
Olá André,
Eu acredito que para esse cenário poderia gravar como Settings...
Aqui neste link tem um exemplo de utilização: http://www.codeproject.com/Articles/12252/Application-settings-in-VB-NET-2-0-and-Visual-Stud
Fabio Rosa.
-
André,
Você pode fazer por banco de dados, utilizando stored procedure's.
De inicio vai achar bastante complexo (como também achei), mais depois de fazer 2 3 vezes você verá que não tem segredos e que é bastante simples.
Caso tenha interesse nesse método me avisa que te explico com mais detalhes.
-
Obrigado pela resposta Fabio. Pelo que eu vi, esse método só grava um conjunto de dados e depois o carrega obrigatoriamente na próxima inicialização, não sei se é isso mesmo.
O que eu preciso é, por exemplo:
Dia 1: O usuário começa um projeto "Casa 1" e coloca os valores nos textbox que são guardados em variáveis. Depois decide terminar de colocar os dados em outro dia. Então salva esses dados em algum lugar com o nome que quiser (Clica no botão "Salvar como") e sai do programa.
Dia 2: Em seguida começa um novo projeto "Casa 2" do zero com outros valores totalmente diferentes e termina.
Dia 3: Decide continuar "Casa 1", então carrega os dados (clica no botão "Abrir", seleciona o arquivo com os dados salvos no dia 1, por exemplo um .txt) e já estarão guardados nas variáveis os valores que ele tinha colocado antes, assim, não precisaria escrever tudo de novo e continua o projeto.
Então ele pode gravar quantos arquivos (com dados digitados por ele) ele quiser e depois escolher qual arquivo quer continuar. Parece não ser possível com este método que você recomendou, ou é?
Um exemplo do que eu quero é o Word que grava documentos .doc para poder carregar depois.
- Editado André00 terça-feira, 18 de junho de 2013 01:57
-
Olá Claudio e obrigado pela ajuda.
O programa tem que rodar em qualquer máquina, então mesmo em um computador que não tenha o pacote Word, Excel, Access, etc, ele tem que ser capaz de salvar os dados para carregar depois. Isso é possível usando o banco de dados? Porque eu vi um exemplo em que o banco de dados é criado no access.
Por favor leia a minha resposta ao Fabio para entender o que preciso.
-
Certo André, entendi!
Então sugiro que você utilize serialização. Serialização é quando queremos gravar o estado de um ou mais objetos em arquivos e depois recuperar este estado. Veja como utilizar serialização neste link:
http://www.macoratti.net/vbn_seri.htm
Desta forma você consegue serializar cada projeto "Casa" que seu usuário queria e depois recuperar o que já foi informado.
Att,
Fabio Rosa.
- Marcado como Resposta André00 quinta-feira, 27 de junho de 2013 01:53
-
Olá Claudio e obrigado pela ajuda.
O programa tem que rodar em qualquer máquina, então mesmo em um computador que não tenha o pacote Word, Excel, Access, etc, ele tem que ser capaz de salvar os dados para carregar depois. Isso é possível usando o banco de dados? Porque eu vi um exemplo em que o banco de dados é criado no access.
Por favor leia a minha resposta ao Fabio para entender o que preciso.
André,
Entendi o que você quer, e já que você quer montar um programa para isso te aconselho usar banco de dados SQL. A parte de salvar no banco é facil e simples, já a parte do calculo que é mais puxado.
Salvando pelo banco de dados vc pode determinar um numero padrão. EX: vc tem 5 clientes, e vai fazer um calculo diferente para cada um.No banco vc pode colocar assim:
CODIGO CLIENTE; CAMPO 1, CAMPO 2, CAMPO 3 .... e assim por diante, conforme sua necessidade.
Ao fazer isso voce vai poder fazer uma rotina dentro do VB para puxar todos os dados já salvos atraves do CODIGO DO CLIENTE.
- Marcado como Resposta André00 quinta-feira, 27 de junho de 2013 01:53