Wednesday, June 6, 2007

GrialCombo, RefreshIfQueryChanged

ford_shelby_gr-1_concept_left_side.jpgEste método se utiliza para cargar datos en un combo o combo full-grid solo cuando son requeridos, mejorando asi la performance del módulo. Se utiliza por ejemplo en los modulos que muestran varios tabs con combos full-grid. 

Con este método es posible cargar los datos de cada tab solo si el usuario selecciona dicho tab.  Para utilizarlo se debe llamar al método RefreshIfQueryChanged del combo correspondiente en el evento Tab_Click.

RefreshIfQueryChanged realizará un "LoadData" del combo:
a) Si no se han cargado datos en al combo aún.
b) Si se ha modificado "ExtraFilterCondition" o "WhereConditionValues" desde la última carga de datos.

Los datos sólo se cargan si se dan estas condiciones. Si el usuario pasea entre los tabs o cierra y abre la transaccion nuevamente pero sin cambiar de institucion o periodo por ejemplo, sólo se cargarán los datos una única vez.

Wednesday, May 23, 2007

GrialPrint, Propiedad PanelsEnabled As Boolean

variacionreflejosdelinea.jpgPropiedad PanelsEnabled As Boolean

Esta propiedad es por default FALSE.

Si se coloca en TRUE la propiedad PanelsEnabled, se habilitan los "paneles" automáticos.

Al estar habilitados los Paneles, en caso que las columnas definidas mediante "DefineCol" excedan el acho actual de la impresión, automáticamente se moverá la columna al panel siguiente que se imprimirá en una hoja separada.

No es necesario hacer ningun manejo especial en el evento PrintDocument.

Si se imprime con paneles, el número de página se compone de página más panel,
como se muestra en el ejemplo:

 Ejemplo Paneles

Nota: El GrialPrint disparará automáticamente el evento PrintDocument una vez por cada columna de paneles que deba imprimir, descartando la impresión que caiga fuera del panel.
GrialPrint, FitToPage Preview (Zoom)leafcloseup.jpg

En la pantalla de Preview, se ha agregado un nuevo botón que permite reducir la imagen para ver la página completa. Haciendo click en la imagen se cambia entre el modo normal y el modo de página completa.

Tuesday, May 22, 2007

GrialPrint, Propiedad PanelsEnabled As Boolean

Propiedad PanelsEnabled As Boolean

Esta propiedad es por deafult FALSE.

Si se coloca en TRUE la propiedad PanelsEnabled, se habilitan los "paneles" automáticos.

Al estar habilitados los Paneles, en caso que las columnas definidas mediante "DefineCol"
excedan el acho actual de la impresión, automáticamente se moverá la columna
al panel siguiente que se imprimirá en una hoja separada.

No es necesario hacer ningun manejo especial en el evento PrintDocument.

Si se imprime con paneles, el número de página se compone de página más panel, como se muestra en el ejemplo.

Nota: El GrialPrint disparará automáticamente el evento PrintDocument una vez por cada columna de paneles que deba imprimir, descartando la impresión que caiga fuera del panel.

Grial Print, Evento PreDocumentPrint


Event PreDocumentPrint ( Cancel as Boolean)

Este evento se dispara una única vez antes de comenzar la impresión o preview.
El evento se dispara una única vez sin importar el número de copias que el usuario solicite.
Se dispara luego de: seleccionar impresora, determinar el tipo de papel y calcular el ancho de la hoja (PrintPos_PageWidth) y las posiciones de los márgenes (PrintPos_LeftMargin, PrintPos_RightMargin).

PreDocumentPrint sirve para:

  • Cargar queries y datos necesarios para la impresión
  • Establecer Title, Subtitle y ReportSecondaryTitle
  • Calcular columnas (DefineCol, si se van a usar las mismas columnas en todo el documento)
Este evento no sirve para establecer el tipo de impresión en Portrait o Landscape.
Si se desa establecer el tipo de impresión en Portrait o Landscape, debe usarse la propiedad PageOrientation en modo diseño, en el evento GrialPrint_ButtonClicked o en el evento UserDocument_Show.

Salida:
Si se setea el parametro "Cancel" en true, se cancela la impresión.

Grial Print, Evento PreDocumentPrint








Event PreDocumentPrint ( Cancel as Boolean)
zion_angels_landing_view.jpg
Este evento se dispara una única vez antes de comenzar la impresión o preview.

El evento se dispara una única vez sin importar el número de copias que el usuario solicite.

Se dispara luego de: seleccionar impresora, determinar el tipo de papel y calcular el ancho de la hoja (PrintPos_PageWidth) y las posiciones de los márgenes (PrintPos_LeftMargin, PrintPos_RightMargin).

PreDocumentPrint sirve para:

  • Cargar queries y datos necesarios para la impresión

  • Establecer Title, Subtitle y ReportSecondaryTitle

  • Definir columnas (DefineCol)


Salida:  Si se setea el parametro "Cancel" en true, se cancela la impresión.

Nota: Este evento no sirve para establecer la orientación de la página en Portrait o Landscape.
Si se quiere establecer la orientación de la página, debe usarse la propiedad PageOrientation en modo diseño, o setearla en el evento GrialPrint_ButtonClicked o en el evento UserDocument_Show.