Com Visual
Studio.Net 2005
Olá pessoal meu
nome é Mauricio Junior, estou a desenvolver esse artigo para mostrar como gerar
relatório e exportar para o Excel. Espero que possa estar aprendendo muito com
o artigo. É de simples entendimento e rápida produtividade para gerar o mesmo.
O mesmo será desenvolvimento em C#.NET.
Referência: 1-1
Na
tela de referência 1-1 mostro apenas a tela que gerei com o visual studio.net
2005. Cliquei com o botão direito no produto e adicionei um novo item ADD
NEW ITEM... O nome do novo item é gerandoExcel.aspx.
O código abaixo
mostra o que tem na parte HTML da página:
|
<%@ Page
Language="C#" AutoEventWireup="true"
CodeFile="gerandoExcel.aspx.cs" Inherits="gerandoExcel"
%>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml" >
<head
runat="server">
<title>Gerar
Excel</title>
</head>
<body>
<form
id="form1" runat="server">
<div>
<asp:Label
ID="lblExcel" runat=server></asp:Label>
</div>
</form>
</body>
</html>
|
A única coisa que
acrescentei na página foi um label com o nome lblExcel. O mesmo
está com a cor alaranjada para que note o que foi acrescentado.
A figura 1-2
mostra a parte de design da tela.
Dentro da classe,
já dentro do código C#.NET, criarei um método para gerar em arquivo excel. Será
chamada depois do objeto label for preenchido. Note que é bem simples, dessa
forma poderei fazer qualquer relatório ser mostrado no excel.
Referência:
1-3
Segue o código:
|
protected void
Page_Load(object sender, EventArgs e)
{
lblExcel.Text = "Teste <br> teste <br>
gerando excel <br>";
geraExcel();
}
protected void
geraExcel()
{
Response.Clear();
Response.Buffer =
true;
Response.ContentType
= "application/vnd.ms-excel";
Response.Charset
= "";
this.EnableViewState
= false;
System.IO.StringWriter
oStringWriter = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter oHtmlTextWriter = new
System.Web.UI.HtmlTextWriter(oStringWriter);
Response.Write(oStringWriter.ToString());
}
|
Explicando o código:
Na entrada da
página, preencho o label com um texto aleatório como "Teste <br> teste <br> gerando excel
<br>"; . A linha debaixo, chamo o método criado para gerar o
arquivo excel. O método chama-se geraExcel() que já faz o mesmo
virar um arquivo excel. O segredo do método é a linha Response.ContentType = "application/vnd.ms-excel"; . Note que a
assinatura do método é, protected protegido e void,
não retorna valor algum.
Não esqueça de
colocar a página como página inicial do projeto e inicie o projeto.
Referência:
1-4
Clique em OPEN
e espere alguns segundos.
Referência: 1-5
A figura 1-5
mostra resultado acima do código criado. Pode ser feito qualquer relatório com
qualquer objeto na tela, depois é só chamar o método para gerar o relatório.
Espero que este
artigo tenha sido de grande valia.