La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Exportar DataTable a diferentes formatos Javier Suárez Ruiz Índice: - Introducción. - Response. - ¿Qué es? - Métodos Principales. - ¿Cómo exportar?. -

Presentaciones similares


Presentación del tema: "Exportar DataTable a diferentes formatos Javier Suárez Ruiz Índice: - Introducción. - Response. - ¿Qué es? - Métodos Principales. - ¿Cómo exportar?. -"— Transcripción de la presentación:

1 Exportar DataTable a diferentes formatos Javier Suárez Ruiz Índice: - Introducción. - Response. - ¿Qué es? - Métodos Principales. - ¿Cómo exportar?. - Exportar a documentos MS Office ( Word,Excel,PowerPoint) - Exportar a pdf ( Adobe Reader). - Bibliografía.

2 Introducción Microsoft Office (MSO) es una suite ofimática, compuesta básicamente por aplicaciones de procesamiento de textos ( Word ), plantilla de cálculo ( Excel ) y programa para presentaciones ( PowerPoint).suite ofimática PDF ( Portable Document Format ) es un formato de almacenamiento de documentos, desarrollado por la empresa Adobe Systems. Este formato es de tipo compuesto (imágenes y texto).Adobe Systems

3 Response. ¿ Qué es ?. Este objeto ASP es del tipo integrado, es decir no tenemos que crear una instancia del mismo para poder utilizarlo, su función es enviar información al cliente (navegador).

4 Response. Métodos Principales. Response.Write (cadena). Envía la cadena de caracteres al cliente. Response.Redirect (Url). Redirige la página ASP a la URL especificada. Response.Flush. Envía de inmediato los datos del buffer. Response.Clear. Borra los datos del buffer. Response.AddHeader. Se pueden mandar más tipos de encabezamientos del http como la fecha de modificación del documento (LAST-MODIFIED) o el tiempo en el que se tiene que realizar un refresco de la página (REFRESH). Response.Cache.SetCacheability. Nos van a permitir definir si queremos que no se traiga las páginas de caché y en vez de ello se vuelven a traer desde el servidor ( refrescando las variables y sessiones ) o si nos decidimos a usar la cache.

5 Response. Métodos Principales. Response.ContentType("String").Es una propiedad que especifica el tipo de contenido del request HTTP, que puede incluir un tipo/subtipo en la cabecera de la respuesta. El tipo siempre es de contenido general y el subtipo es específico. El valor por defecto es text/HTML. Response.End. Método que detiene la ejecución de la página, la termina. Response.Buffer. Es una propiedad que si está a true (la opción por defecto en ASP 3.0) indica al servidor que debe utilizar el buffer. Si está a false (opción por defecto para versiones anteriores de ASP) no lo utiliza.

6 Exportar a MS Excel //Se carga el contenido del archivo en memoria antes de enviarlo al cliente Response.Clear(); //Damos la salida como attachment. Response.AddHeader("content-disposition", "attachment;filename=archivo.xls"); Response.Charset = ""; Response.Cache.SetCacheability(HttpCacheability.NoCache); //Especificamos el tipo de salida. Response.ContentType = "application/vnd.xls"; /** Para obtener el contenido HTML de un control ( en este caso un gridview) se utiliza el método RenderControl, el cual acepta un HtmlTextWriter como parámetro, y sobre el cual se realiza el reenderezado. Para obtener el HtmlTextWriter lo que hago es crear primero un StringBuilder, un StringWriter sobre éste, y finalmente un HtmlTextWriter que trabaje sobre el StringWriter. */ //StringWriter Nos permite escribir información en una cadena. System.IO.StringWriter stringWrite = new System.IO.StringWriter(); //HtmlTextWriter Escribe caracteres de marcado y texto en una secuencia de salida de un control de servidor ASP.NET. Esta clase proporciona funciones de aplicación de formato. System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite); ContenidoGridView().RenderControl(htmlWrite); //Escribimos el HTML en el Explorador Response.Write(stringWrite.ToString()); //Terminamos el Response. Response.End();

7 P.I.A ( Primary Interop Assemblies ) Los ensamblados de interoperabilidad COM permiten que el código no administrado (COM) se llame desde código administrado (.NET) mediante Microsoft.NET Framework y el módulo de tiempo de ejecución de lenguaje común. Los ensamblados de interoperabilidad los puedes descargar en : A983A-AC BA0-D36D67E0F4AD&displaylang=en Los ensamblados de interoperabilidad proporcionar un montón de opciones para trabajar con datos de Excel, tanto de lectura y escritura, permitiéndonos exportar ó crear archivos Excel con facilidad.

8 Exportar a MS Excel ( 2 formas ) Ejemplo 1

9 Exportar a MS Word //Se carga el contenido del archivo en memoria antes de enviarlo al cliente Response.Clear(); //Damos la salida como attachment. Response.AddHeader("content-disposition", "attachment;filename=archivo.doc"); Response.Charset = ""; Response.Cache.SetCacheability(HttpCacheability.NoCache); //Especificamos el tipo de salida. Response.ContentType = "application/vnd.doc"; System.IO.StringWriter stringWrite = new System.IO.StringWriter(); System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite); ContenidoGridView().RenderControl(htmlWrite); //Escribimos el HTML en el Explorador Response.Write(stringWrite.ToString()); //Terminamos el Response. Response.End();

10 Exportar a MS PowerPoint //Se carga el contenido del archivo en memoria antes de enviarlo al cliente Response.Clear(); //Damos la salida como attachment. Response.AddHeader("content-disposition", "attachment;filename=archivo.ppt"); Response.Charset = ""; Response.Cache.SetCacheability(HttpCacheability.NoCache); //Especificamos el tipo de salida. Response.ContentType = "application/vnd.ppt"; System.IO.StringWriter stringWrite = new System.IO.StringWriter(); System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite); ContenidoGridView().RenderControl(htmlWrite); //Escribimos el HTML en el Explorador Response.Write(stringWrite.ToString()); //Terminamos el Response. Response.End();

11 Exportar a MS Word y MS PowerPoint Ejemplo 2

12 Exportar a pdf ( Adobe Reader). ¿Que es iTextSharp? iTextSharp, es una *.dll que nos brinda ciertas funcionalidades que nos ayudarán en la creación de documentos txt, rtf, doc, pdf, html y xml, como también poder agregar algunas propiedades con valores como fuente, márgenes, tamaño de página, estilo de página, presentación inicial... iTextSharp No menos importante destacar que se trata de un proyecto de código abierto, es decir, esta librería es totalmente gratuita.

13 Exportar a pdf ( Adobe Reader). ¿ Cómo crear un documento PDF ? Document document = new Document(); PdfWriter.GetInstance(document, new FileStream(archivo.pdf", FileMode.OpenOrCreate)); document.Open(); document.Add(new Paragraph("Este es mi primer PDF al vuelo")); document.Close();

14 Exportar a pdf ( Adobe Reader). Con esto ya tenemos nuestro primer PDF. Creamos un objeto de tipo Document. Es nuestro PDF. Invocamos al método estático GetInstance de la clase PdfWriter - como argumentos recibe el documento que acabamos de crear y un Stream. En este caso utilizamos un FileStream pero podríamos haber usado cualquier Stream que admita escritura como por ejemplo MemoryStream. Abrimos el documento con el método Open. Le añadimos un párrafo con Add. Debemos darnos cuenta que el método Add recibe como parámetro una interface -IElement. Esto nos va a simplificar enormemente el trabajo. Cerramos el documento con Close. ¡Que difícil! Con esto ya tenemos creado el archivo en la ruta indicada al FileStream (en mi caso la misma ruta que el ejecutable).

15 Exportar a Adobe Reader Ejemplo 3

16 Bibliografía En Español: Tutorial que nos explica como exportar un datagrid a un archivo excel utlizando el objeto response. Buen ejemplo, aunque teoricamente escaso. 08/27/habia-una-ves.aspx Tutorial que nos explica como exportar un dataTable a excel basandose en los ensamblados de interoperabilidad. Buen ejemplo, aunque teoricamente escaso. En Inglés: asp200309so_l.asp Genial tutorial que nos explica muy detalladamente como exportar un dataTable a Excel. Completo teóricamente y buenos ejemplos.


Descargar ppt "Exportar DataTable a diferentes formatos Javier Suárez Ruiz Índice: - Introducción. - Response. - ¿Qué es? - Métodos Principales. - ¿Cómo exportar?. -"

Presentaciones similares


Anuncios Google