www.juliobattisti.com.br
Windows Vista - Curso Completo - 1476 páginas Windows Server 2003 - Curso Completo SQL Server 2005 - Curso Completo 1500 Tutoriais de Informática Windows Vista - Curso Completo - 1476 páginas Curso Completo de Access Certificações Microsoft
Cursos de Informática Cursos Disponíveis Cursos Online Com Certificado Como Comprar?
 Você está aqui: Principal > Artigos > Windows
  :: Autor: Rodrigo Crespi   :: Site:     www.crespi.pro.br/
  :: Data:  25/01/2008   :: e-mail: rodrigo@crespi.pro.br
Mais Artigos e Tutoriais Cursos de Informática Cursos Indicados Livros Relacionados
Extraindo dados para arquivo texto

Introdução

Extrair informações de um banco de dados é a missão da maior parte dos softwares existentes no mercado, alguns programadores utilizam componentes de terceiros ou geradores de relatórios como o Crystal Reports. Neste artigo, a intenção é mostrar como extrair os dados de uma tabela e gravar em um arquivo texto.

Claro que utilizar componentes de terceiros otimiza muito o desenvolvimento, porém em algumas circunstâncias o mesmo torna-se inviável, em consideração budget do projeto ou por ser alguma aplicação simplificada de extração de dados.

Um bom exemplo para este tipo de projeto, seria um software de apontamento de produção de chão de fábrica que gera um arquivo texto, para que um software gerencial ou ERP possa fazer a importação dos dados.

Para desenvolver o raciocínio do nosso artigo vou apresentar um passo a passo de como gerar um aplicativo que extrai dados de uma tabela de contatos e inclui em um arquivo texto, isso poderá ser utilizado como relatório ou como fonte de dados para outros aplicativos.

Criando o banco e a tabela

Não irei deter-me a explicações básicas de conexão a banco e criação de tabelas, para quaisquer dúvidas vejam meus artigos anteriores ou entrem em contato.

Neste artigo, vou utilizar o SQL Server 2000 como banco de dados para nossa aplicação de exemplo. Veja abaixo a tabela de contatos e o script para criá-la.

Criando o Aplicativo

Para criar o nosso aplicativo no Visual Studio 2005 selecione o Windows Application e crie um formulário, conforme a imagem abaixo.

Este formulário contém um frame, um botão e um SaveFileDialog.

Altere a propriedade name do botão para btnGerarArquivo e o SaveFileDialog para dlgArquivo.

Codificando a classe

Agora que temos o nosso layout pronto, vamos codificar o aplicativo. Para preencher o nosso arquivo utilizaremos um DataReader, vamos criar um classe nomeada clsContato, onde iremos fazer a conexão a banco e extrair um DataReader.

Para criar a classe clique com o botão direito sobre o projeto na janela Solution Explorer e selecione Add - New Item e na janela que irá abrir selecione Class, insira o nome clsContato e clique em salvar.


Abaixo segue o código da nossa classe.

Vamos às considerações sobre o código acima, não vou explicar os conceitos básicos apenas o suficiente para o bom entendimento e execução do nosso exemplo.

No início do código nós criamos uma string com os dados de conexão ao banco, para ter resultado no seu projeto altere esta linha conforme a sua realidade, na linha 10 eu criei um SqlConnection, ou seja, um objeto de conexão ao SQL Server.

A função funContatos retornará uma SQLDataReader com todos os registros cadastrados na tabela contato, veja o select ele não tem cláusula de filtro, apenas seleciona todos os itens da tabela.

Codificando o formulário

Para facilitar o entendimento do código, vou quebrá-lo em diversas partes, sendo functions e procedures, mas tudo poderia estar no procedimento do evento clique do botão gerar.

O nosso primeiro código será uma função que retornará uma caixa de diálogo para salvar o arquivo, esta função retornará o local e o nome do arquivo a ser gerado.

O próximo código é uma função que retornará o cabeçalho do nosso arquivo, para diminuir o código vou incluir apenas o nome e o telefone do contato, mas na hora de exercitar você pode incluir os demais campos.

Para quem não vem de muito tempo utilizando o Visual Basic, as expressões vbTab e vbCrLf são expressões antigas que indicam o caractere de tab e nova linha e retorno do carro, respectivamente.


Agora a função que concatena os itens da listagem, recomendo que em um aplicativo real, ou seja, não de teste utilizem a função StringBuilder, ela permitirá uma otimização na concatenação de uma string.

Outra recomendação é a criação de funções que gerem a contagem de caracteres certos para fazer o alinhamento das colunas e assim deixar o arquivo texto com uma apresentação melhorada.


Os dados que eu estou apresentando são apenas ilustrativos, na hora de criar um aplicativo use da forma mais criativa possível. Abaixo segue o rodapé e a última parte das strings que irão compor o nosso arquivo.


Agora que já temos as funções e procedimentos necessários para o nosso projeto, vamos codificar o botão gerar. O código abaixo é a primeira parte do evento clique do botão btnGerar.


Nas declarações das variáveis lStrArquivo chamaremos a função que receberá através de uma DialogBox o local e o nome do arquivo a ser criado, nas demais declarações seguem a mesma lógica, ou seja, vamos chamar cada uma das funções criadas anteriormente para que elas preencham as nossas variáveis.

A variável lStrTexto receberá o conteúdo de todas as demais variáveis e entre elas um caractere de nova linha.

Abaixo instanciaremos a FileStream que esta em System.IO, passando a variável lStrArquivo que contém o caminho e o nome do arquivo e o selecionaremos o FileMode para OpenOrCreate, ou seja, para abrir ou criar um arquivo.

Logo após, vamos criar um StremWriter que terá o objStream criado anteriormente, após isso, é só se valer do método Write do StreamWriter e fechar o arquivo através do método Close.

Teste

Para executar um teste teremos que ter algumas informações na nossa tabela de contato, para isso vamos utilizar o Query Analyzer e executar um script de inserção de dados. Vide a figura abaixo.


Após ter feito o insert na tabela, vamos rodar o programa, pressione F5.

Quando executar o programa, clique em gerar ele abrirá a DialogBox – Salvar Como, escolha um diretório e um nome, com isso feito basta apenas clicar em salvar.

Conclusão

Muitos foram os projetos que eu trabalhei que incluíam transferência de dados entre o aplicativo em desenvolvimento e o aplicativo gerencial ou ERP do cliente, e a “grande jogada” aqui não era criar somente um arquivo de texto, mas ter uma idéia de como podemos criar arquivos de texto para extração de dados.

Mais uma vez reforço a afirmação que o .NET Framework simplifica muito a vida do desenvolvedor, afinal vimos que com apenas quatro linhas podemos criar um arquivo de texto em disco. Para quem é programador de longa data, gosto de lembrar como era trabalhoso algumas operações em versões antigas do Visual Basic.

Agora solte a imaginação e aproveite o enorme leque de possibilidades e recursos do .NET Framework.

Web site: www.crespi.pro.br

email: rodrigo@crespi.pro.br



CURSO EM FORMATO DE VÍDEO-AULA
EXEMPLOS PRÁTICOS PASSO A PASSO COM SOM E IMAGEM
Clique no curso para informações detalhadas
Curso Duração Mais informações
DVD - Conversão de Formatos Digitais: Áudio e Vídeo 1 h 26 min Clique aqui
DVD - Curso de Oratória - Falando em Público sem Medo 33 min Clique aqui
Vídeo-Aula - Access 2007 Básico 2 h 1 min Clique aqui
Vídeo-Aula - Aprenda a Criar uma Agenda Telefônica no Excel 40 min Clique aqui
Vídeo-aula - Concursos: Inglês ESAF - Simulados e Provas Comentadas 2 h Clique aqui
Vídeo-Aula - Criação de Sites - Curso Básico 2 h 53 min Clique aqui
Vídeo-Aula - Curso Autocad 2D 4 h Clique aqui
Vídeo-Aula - Curso Autocad 3D 3 h 45 min Clique aqui
Vídeo-Aula - Curso Avançado de Access 2003 2 h 48 min Clique aqui
Vídeo-Aula - Curso Avançado de Excel 2003 3 h 41 min Clique aqui
Vídeo-Aula - Curso Avançado de Word 2003 1 h 34 min Clique aqui
Vídeo-Aula - Curso Básico de Access 2003 2 h 49 min Clique aqui
Vídeo-Aula - Curso Básico de Excel 2003 3 h 3 min Clique aqui
Vídeo-Aula - Curso Básico de PowerPoint 2003 2 h 22 min Clique aqui
Vídeo-Aula - Curso Básico de Windows XP 2 h 36 min Clique aqui
Vídeo-Aula - Curso Básico de Word 2003 2 h 14 min Clique aqui
Vídeo-Aula - Curso de Microinformática Prática 4 h 35 min Clique aqui
Vídeo-Aula - Curso de Teoria Musical 2 h 50 min Clique aqui
Vídeo-Aula - Curso Prático de Internet 40 min Clique aqui
Vídeo-Aula - Curso Profissional Photoshop 4 h 20 min Clique aqui
Vídeo-Aula - Excel 2007 - Curso Avançado 2 h 30 min Clique aqui
Vídeo-Aula - Excel 2007 - Curso Básico 2 h 35 min Clique aqui
Vídeo-Aula - Excel Para Concursos - Simulados e Provas Comentadas 2 h Clique aqui
Vídeo-Aula - Flash CS3 - Básico e Prático 4 h 45 min Clique aqui
Vídeo-Aula - Flash MX - Curso Básico 2 h 26 min Clique aqui
Vídeo-Aula - Fórmulas e Funções Matriciais no Excel 2 h 30 min Clique aqui
Vídeo-Aula - HTML - Curso Prático 2 h 40 min Clique aqui
Vídeo-Aula - Lógica de Programação - Curso Completo 22 h 15 min Clique aqui
Vídeo-Aula - Matemática Financeira - Teoria e Prática 9 h 10 min Clique aqui
Vídeo-Aula - Outlook Express – Curso Prático 55 min Clique aqui
Vídeo-Aula - PHP + HTML + CSS - Curso Completo 27 h 35 min Clique aqui
Vídeo-Aula - Programação VBA no Excel 2 h 54 min Clique aqui
Vídeo-Aula - Tudo Sobre Gráficos no Excel 9 h Clique aqui
Vídeo-Aula - Windows XP Básico + Intermediário + Dicas Práticas 8 h Clique aqui
Vídeo-Aula - Word 2007 - Curso Básico 2 h 23 min Clique aqui
Vídeo-Aula interativa: Tudo Sobre Tabelas Dinâmicas no Excel 2003 2 h 30 min Clique aqui
LIVROS CAMPEÕES DE VENDA NO SITE
Dossiê Hacker
Universidade Project
Loja de Livros