Example #1
0
        /// <summary>
        /// Crea una instancia de un documento Excel usando una instancia de configuración
        /// para su diseño.
        /// </summary>
        /// <param name="datos">datos para crear el archivo</param>
        /// <param name="tituloPagina">Nombre de la página que contendrá la tabla</param>
        /// <param name="configuracionTablaManual">Configuración del diseño de la página</param>
        /// <returns>Array de bytes con el contenido del archivo ya creado</returns>
        public XLWorkbook CrearDocumento <T>(IEnumerable <T> datos, string tituloPagina,
                                             ConfiguracionTablaManual configuracionTablaManual = null)
        {
            var dataTable = datos.ToDataTable();

            return(CrearDocumento(dataTable, tituloPagina, configuracionTablaManual));
        }
Example #2
0
        /// <summary>
        /// Comprueba que los datos del parámetro configuracionTablaTheme
        /// son correctos y les añade a cada pie y cabecera el ancho
        /// que tendrán basándose en el ancho de la propia tabla
        /// </summary>
        /// <param name="datos"></param>
        /// <param name="configuracionTablaManual"></param>
        /// <returns></returns>
        private ConfiguracionTablaManual NormalizarConfiguracion(DataTable datos,
                                                                 ConfiguracionTablaManual configuracionTablaManual)
        {
            configuracionTablaManual = (configuracionTablaManual == null)
                ? new ConfiguracionTablaManual()
                : configuracionTablaManual;

            CalcularAnchosNotas(datos, configuracionTablaManual);

            return(configuracionTablaManual);
        }
Example #3
0
        /// <summary>
        /// Crea una instancia de un documento Excel usando una instancia de configuración
        /// para su diseño.
        /// </summary>
        /// <param name="datos">datos para crear el archivo</param>
        /// <param name="tituloPagina">Nombre de la página que contendrá la tabla</param>
        /// <param name="configuracionTablaManual">Configuración del diseño de la página</param>
        /// <returns>Array de bytes con el contenido del archivo ya creado</returns>
        public XLWorkbook CrearDocumento(DataTable datos, string tituloPagina,
                                         ConfiguracionTablaManual configuracionTablaManual = null)
        {
            configuracionTablaManual = NormalizarConfiguracion(datos, configuracionTablaManual);

            tituloPagina = (string.IsNullOrEmpty(tituloPagina)) ? "Tabla" : tituloPagina;

            var wb = new XLWorkbook();
            var ws = wb.Worksheets.Add(tituloPagina);

            IntroducirNotas(ws, configuracionTablaManual.PosicionInicial, configuracionTablaManual.Cabeceras);

            IntroducirTabla(ws, datos, configuracionTablaManual);

            IntroducirNotas(ws, configuracionTablaManual.PosicionInicial, configuracionTablaManual.Pies);

            return(wb);
        }