GeneXus - HugaoOffice External Object - HugaoExcelDocument

Hugao Office - HugaoExcelDocument


Permite trabajar con documentos de Excel (xls, xlsx), usando la librería POI, ofreciendo más funciones que las que actualmente ofrece el tipo de dato nativo ExcelDocument, como: combinación de celdas y creación de bordes.

Está disponible para generadores Java y .Net

Métodos Disponibles



setFileName: Este método permite especificar a ruta y nombre donde se abrirá/guardar el archivo a trabajar.

Recibe como parámetro de tipo Varchar el nombre completo con path del archivo.

Si el archivo existe, el método lo abrirá y permitirá trabajarlo y/o Leerlo, antes de trabajar no olvide seleccionar la hoja de trabajo. Si el archivo no existe, el método inicializará el proceso para trabajarlo como libro nuevo, antes de trabajar no olvide crear una hoja nueva.

setExcelType: Este método permite especificar el tipo de excel que se va a trabajar, los valores disponibles son xls y xlsx, para asignarlo puede usar el dominio que se importa con el External Object llamado HugaoExcelType.

Recibe como parámetro de tipo Varchar el tipo de excel.

Es importante que llame a este método antes de empezar a crear hojas y escribir el contenido.

getContentType: Este método retorna un String equivalente al ContentType adecuado para generar una descarga HTTP del archivo.

getErrCode: Este método entrega un código del mensaje de error generado por alguno de los métodos de función.

Este código puede ir acompañado de una descripción, la cual es posible obtener llamando al método getErrDesc.

getErrDesc: Este método entrega un String con el mensaje de error generado por alguno de los métodos de función.

Este mensaje puede ir acompañado de un código, el cual es posible obtener llamando al método getErrCode.

getCurrentSheetName: Este método retorna un datos String para conocer el nombre de la hoja activa del Libro donde se está trabajando.

OpenDocument: Método que intenta abrir un archivo de excel de la manera correcta si es xls o xlsx, si existe abre el archivo, sino existe lo crea y lo abre. Para asignar la ruta del archivo use el método setFileName.

RenameCurrentSheet: Método que permite cambiar el nombre de la hoja activa.

ReadTextCellData: Método que permite leer un dato en formato texto en una celda. Tenga en cuenta que la primera fila y la primera columna es 0,0 (A1).

ReadNumberCellData: Método que permite leer un dato en formato numérico en una celda. Tenga en cuenta que la primera fila y la primera columna es 0,0 (A1).

ReadDateCellData: Método que permite leer un dato en formato date en una celda. Tenga en cuenta que la primera fila y la primera columna es 0,0 (A1).

WriteTextOnCell: Método que permite escribir un dato de tipo texto en una celda. Tenga en cuenta que la primera fila y la primera columna es 0,0 (A1).

WriteNumberOnCell: Método que permite escribir un dato de tipo numérico en una celda. Tenga en cuenta que la primera fila y la primera columna es 0,0 (A1).

WriteDateOnCell: Método que permite escribir un dato de tipo Date en una celda especificando el formato date a escribir. Tenga en cuenta que la primera fila y la primera columna es 0,0 (A1).

MergeCells: Método para combinar celdas, recibe como parámetros la fila inicial, la fila final, la columna inicial y la columna final.

SelectSheetByIndex: Método que selecciona una hoja basada en su index y la deja como hoja activa para trabajar sobre ella. Tenga en cuenta que la primera hoja tiene como index 0 (cero).

SelectSheetByName: Método que selecciona una hoja basada en su nombre y la deja como hoja activa para trabajar sobre ella.

CreateSheet: Método para crear una nueva hoja en el Libro, si el libro ya tiene una hoja con el nombre indicado, se colocará un número consecutivo al nombre para garantizar que este nombre sea único.

Consideraciones:
  • El máximo largo permitido para el nombre es de 31, este método truncará el texto a o menos si requiere de algún consecutivo.
  • Si requiere conocer el nombre final con el que quedó puede llamar al método getCurrentSheetName
PaintCellBorderThin: Este método permite pintar bordes a una celda, para esto recibe como parámetros:
  • row -> Fila
  • column -> Columna
  • top -> True o False para pintar el borde de arriba
  • bottom -> True o False para pintar el borde de abajo
  • right -> True o False para pintar el borde de la derecha
  • left -> True o False para pintar el borde de la izquierda
ApplyStyleOnCell: Método que permite aplicar estilo a una celda.

Consideraciones:
  • Alineación Horizontal
    • C -> Center
    • J -> Justify
    • L -> Left
    • R -> Right
  • Alineación Vertical
    • T -> Top
    • C -> Center
    • B -> Bottom
Para esto recibe como parámetros los siguientes, también puede usar los dominios importados HugaoExcelHorizontalAlign y HugaoExcelVerticalAlign:

  • row -> Fila contenedora
  • column -> Columna contenedora
  • fontName -> Nombre valido de una fuente
  • fontSize -> Tamaño de la letra
  • bold -> ¿Negrita?
  • italic -> ¿Cursiva?
  • underline -> ¿Subrayado?
  • HAlign -> Alineación Horizontal
  • VAlign -> Alineación Vertical
AutoSizeColumn: Método que permite ajustar el ancho de una columna con respecto al texto más largo.

ColumnWidth: Método que permite definir el ancho de una columna. Tenga en cuenta que el valor mínimo del ancho es 0 y el máximo es 255.

WrapTextOnCell: Método que permite ajustar el texto largo al ancho de la celda, para verlo en múltiples lineas.

RowHeight: Método que permite definir el alto de la fila. Tenga en cuenta que el valor mínimo del ancho es 0 y el máximo es 255.

FitActiveSheetToOnePage: Método que permite ajustar el contenido de la hoja activa a 1 página.

SaveDocument: Método que guarda en disco en el path definido el archivo excel trabajado.

Comentarios

  1. Saludos, donde lo puedo bajar?. Muchas gracias.

    ResponderEliminar
    Respuestas
    1. Hola

      lo puedes descargar desde la marketplace de GeneXus

      https://marketplace.genexus.com/viewproduct.aspx?754

      Eliminar
  2. Buenos Dias Hugo Una consulta, que necesito subir un archivo con un formato definido y llenarlo con datos, se podrá hacer con esta librerías

    ResponderEliminar
  3. Buenos días Hugo, una consulta si tengo un archivo ubicado en D:\GX16\CCP\CSharpModel\web\Reporte _Area_Interes_Curso.xlsx como hago para que por medio de un botón, se pueda abrir el archivo y se descargue en la maquina del usuario ? Gracias

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

GeneXus - Zip Tools External Object

GeneXus - HugaoBulkActionsManager - User Control/Module-Extension

GeneXus - HugaoMessages - User Control