Rejilla avanzada
La rejilla avanzada es un objeto que sirve para presentar listas de registros de las tablas. La rejilla avanzada siempre va asociada a una tabla de un proyecto de datos heredado. El flujo es Lista de la tabla asociada tanto para la entrada como para la salida.
La rejilla está compuesta por una serie de celdas distribuidas en forma de filas y columnas. Una fila se corresponde con un registro de una tabla y una columna con un campo de la tabla. Una celda, por tanto, permitirá mostrar un dato concreto de un registro concreto de la tabla.
Dispone de las siguientes funcionalidades:
Agrupamientos múltiples
Agrupar por una columna consiste en formar grupos con las fichas de la lista que tengan el mismo valor en esa columna. La rejilla se convierte entonces en un árbol con los distintos valores de la columna en los nodos primarios que, al abrirlos, despliegan las fichas de su grupo.
Se podrá agrupar por más de una columna, pasando a tener el árbol más niveles.
Totales y Subtotales
Es posible tanto declarar pies con totales globales a la rejilla como pies de los agrupamientos con subtotales; pudiendo realizarse en las columnas cálculos tales como sumas, máximo, mínimo, número de elementos y porcentaje.
Bandas
Permiten agrupar varias columnas con distintas dimensiones.
Menú de columnas
Permite al usuario mostrar u ocultar columnas de la rejilla en tiempo de ejecución.
Fijar columnas a izquierda/derecha
Esta funcionalidad permite fijar columnas de modo que no se vean afectadas por el scroll horizontal, permaneciendo fijas a izquierda y/o derecha mientras movemos el resto de columnas a la izquierda o a la derecha.
Creación
Podemos crear una rejilla avanzada de dos modos:
1) Hacer doble clic sobre el icono correspondiente a la rejilla avanzada de la galería de objetos (Tecla Insert) de Velneo vDevelop.
2) A partir de una rejilla: seleccionar la rejilla deseada en el panel central de vDevelop y hacer doble clic sobre el icono correspondiente a la rejilla avanzada de la galería de objetos (Tecla Insert) de Velneo vDevelop. Esto hará que se cree una rejilla avanzada con las mismas columnas que la rejilla original.
Sus propiedades son:
Identificador
Etiqueta alfanumérica que identifica al objeto. Este identificador será el que se usa para referenciarlo en los inspectores y en las propiedades de otros objetos.
Nombre
Etiqueta alfanumérica que servirá como descriptor de la rejilla avanzada. Es el texto que se presentará al usuario final de la aplicación para referenciarla.
Podemos definir una etiqueta por cada idioma presente en el proyecto.
Estilos
Podemos definir los estilos siguientes:
Privado
Limita el acceso del usuario final al objeto desde puntos donde no se haya programado el acceso al mismo.
Arrastrable para copiar
Cuando la rejilla avanzada va a ser el origen en un evento de drag and drop, si está activado este estilo, en ejecución los items arrastrados no serán quitados de la misma tras ejecutar el evento de drop.
Arrastrable para mover
No está activa esta funcionalidad en la rejilla avanzada.
Simple-click dispara
Si la rejilla avanzada tiene asociado un formulario de modificación si este estilo está activado al hacer un clic sobre un ítem de la misma éste será editado en el formulario correspondiente. Si este estilo está desactivado el usuario tendrá que hacer doble clic para editar la ficha.
Sin barra de título (Sólo diálogos)
Permite omitir la barra de título de la ventana. Solamente funcional en cuadros de diálogo.
Sin menú de sistema
Permite omitir el menú de sistema de la ventana.
Sin botón maximizar
Permite ocultar el botón maximizar de la ventana.
Sin botón minimizar
Permite ocultar el botón minimizar de la ventana.
Sin botón cerrar
Permite ocultar el botón de cierre de la ventana.
Optimizado
Si activamos esta opción, el sistema reducirá el número de conexiones con el servidor que requieren determinados tipos de campo (singular, indirecto virtual, indirecto real y hermano contiguo) y fórmulas con campos de maestros o funciones de proceso.
Si el estilo está activado, primero se presentará la rejilla y luego se harán los cálculos de dichas columnas. En caso contrario, hará ambas cosas al mismo tiempo.
Personalizable
Si activamos este estilo, el objeto podrá ser reemplazado por otro del mismo tipo en tiempo de ejecución mediante un objeto reemplazo.
Comentarios
Esta propiedad nos permite documentar el uso de la avanzada.
Tabla asociada
Tabla de un proyecto de datos heredado cuyos registros van a ser visualizados en la rejilla avanzada.
Cabecera de grupos
Si activamos esta propiedad, en la rejilla se incluirá una cabecera en la que el usuario, en tiempo de ejecución, podrá crear agrupamientos por la columna o columnas que desee.
Los valores posibles son verdadero o falso.
Cabecera de columnas
Si activamos esta propiedad, en la rejilla se incluirá una columna desde la cual el usuario podrá activar/desactivar la visualización de columnas de la rejilla.
Los valores posibles son verdadero o falso.
Auto anchura
Si activamos esta propiedad, la anchura de la rejilla cambiará para adaptarse al Tamaño de la ventana que la contenga.
Los valores posibles son verdadero o falso.
Cuando se activa esta propiedad la última columna no admite redimensionamiento, hay que cambiar el tamaño de las demás para que ésta se ajuste a su vez.
Alto de celdas
En esta propiedad especificaremos el tamaño en píxels que tendrán las celdas del encabezado de la rejilla.
Fast scroll
Método de refresco que permite desplazarse por la rejilla más rápidamente, difiriendo la actualización de los datos. Los valores posibles son verdadero o falso.
Estilo de grupos
En esta propiedad especificaremos el estilo visual que se aplicará a los grupos que se generen en la rejilla.
Los valores posibles son estándar u office 11.
Alto de grupos
En esta propiedad podremos especificar la altura en píxels de cada encabezado de grupo que se muestre en la rejilla. Si establecemos un tamaño menor a la altura del texto que deba contener, el encabezado de grupo automáticamente se redimensionará a la altura mínima necesaria.
Pie de rejilla visible
En esta propiedad indicaremos si queremos mostrar o no pies para calcular totales globales en la rejilla avanzada.
Los valores posibles son verdadero o falso.
Pie de grupo visible
En esta propiedad indicaremos si queremos mostrar o no pies para calcular totales de agrupamientos que se generen en la rejilla avanzada.
Los valores posibles son verdadero o falso.
Estilo líneas de rejilla
En esta propiedad podemos configurar el modo en el que se mostrarán las líneas que dividen las celdas de la rejilla avanzada. Los valores posibles son:
Ninguna: no se mostrará ninguna línea.
Ambas: se mostrarán tanto las líneas horizontales como las verticales de las celdas.
Ambas 2D: otro estilo que muestra tanto las líneas horizontales y verticales.
Horizontal: se mostrarán solamente las líneas horizontales de las celdas.
Vertical: se mostrarán solamente las líneas verticales de las celdas.
Vertical 2D: otro estilo que mostrará solamente las líneas verticales de las celdas.
Cómo se verá cada estilo dependerá directamente el estilo visual con el que estemos ejecutando la aplicación (sistema, fusión, etc.).
Grosor líneas de rejilla
En esta propiedad se configura el grosor que tendrán las líneas de la rejilla. El valor se especifica en píxels. El valor por defecto es 1.
Color líneas de rejilla
En esta propiedad seleccionaremos el color de las líneas de la rejilla avanzada. Junto al nombre del color se presenta una muestra del mismo, pulsar sobre ella para editarlo y o seleccionar otro color.
Alternar colores líneas de datos
Esta propiedad permite configurar si queremos que el color de fondo de todas las líneas sea el mismo o si, por el contrario, queremos que se use un color diferente para las líneas pares e impares.
Los valores posibles son verdadero o falso.
Los colores se configuran en otras propiedades que veremos más adelante.
Formulario de alta
Formulario del proyecto en curso o de un proyecto heredado que será usado para dar de alta una ficha desde la rejilla avanzada. Para que el formulario esté accesible para el usuario final será necesario que, o bien la rejilla tenga asociado el menú de contexto por defecto, por defecto extendido, o tenga asociada un menú personalizado o una toolbar que incluya una acción que use el comando ficha: formulario de alta.
Formulario de modificación
Formulario del proyecto en curso o de un proyecto heredado que será para editar una ficha desde la rejilla avanzada. Para que el formulario esté accesible para el usuario final será necesario que, o bien la rejilla tenga asociado el menú de contexto por defecto, por defecto extendido, o tenga asociada un menú personalizado o una toolbar que incluya una acción que use el comando ficha: formulario de modificación.
Formulario de baja
Formulario del proyecto en curso o de un proyecto heredado que será para eliminar una ficha desde la rejilla avanzada. Para que el formulario esté accesible para el usuario final será necesario que, o bien la rejilla tenga asociado el menú de contexto por defecto, por defecto extendido, o tenga asociada un menú personalizado o una toolbar que incluya una acción que use el comando ficha: formulario de baja.
Tipo de menú de contexto
El menú de contexto es el que aparece cuando el usuario final hace clic con el botón derecho del ratón. Los valores posibles son:
Ninguno: la rejilla avanzada carecerá de menú de contexto.
Por defecto: la rejilla avanzada dispondrá de un menú de contexto creado automáticamente por el sistema, que contendrá las opciones siguientes:
Alta de ficha: si la rejilla avanzada tiene asociado un formulario de altas, lo abrirá para que el usuario pueda añadir una ficha.
Modificación de ficha: editará la ficha seleccionada en el formulario de modificación asociado a la rejilla avanzada.
Baja de ficha: abrirá el formulario de bajas asociado a la rejilla avanzada.
Invertir: invierte el orden de la lista, usando para ello el campo por el que se encuentra ordenada.
Filtrar: permite al usuario establecer y aplicar un filtro a la rejilla avanzada.
Ordenar: permite al usuario ordenar la lista por el campo que elija.
Quitar de la lista el seleccionado: quita de la rejilla avanzada el registro que el usuario tenga seleccionado. No lo borra físicamente, sino que simplemente lo quita de la lista.
Por defecto extendido: la rejilla avanzada dispondrá de un menú de contexto creado automáticamente por el sistema que, además de las opciones del menú por defecto, incluye las siguientes:
Modificar campo…: permitirá al usuario modificar un campo de todos los registro de la lista.
Modificar campo si…: permitirá al usuario modificar un campo de todos los registro de la lista que cumplan una determinada condición.
Exportar a XML: permitirá al usuario exportar los registros de la lista a un fichero XML.
Personalizado: el menú de contexto de la rejilla avanzada será un objeto menú contenido en el proyecto.
Menú de contexto
Esta propiedad solamente estará disponible cuando el valor de la propiedad Tipo de menú de contexto sea personalizado. Nos permitirá seleccionar el objeto menú que queramos usar como menú de contexto de la rejilla avanzada.
Toolbar
Si seleccionamos una toolbar en este parámetro, cada vez que usemos esta rejilla, ésta llevará embebida la toolbar seleccionada, que podrá situarse, o bien encima o bien debajo de la rejilla.
Timer (Milisegundos)
Es un reloj que permitirá ejecutar automáticamente uno o varios manejadores de evento declarados en la rejilla avanzada de forma periódica. En este parámetro se indicará el tiempo, en milisegundos, para cada iteración del timer. Si el valor es 0, querrá decir que no se activará el timer.
Si queremos añadir una banda a la rejilla avanzada, pulsaremos (Control +N) de la barra de herramientas del panel de sub-objetos y, en el menú que se despliega, seleccionaremos la opción Banda.
Multiselección
Esta propiedad tiene dos valores posibles: falso y verdadero. Permitirá que en tiempo de ejecución se pueda realizar una selección múltiple de registros en la rejilla avanzada.
Alto de cabecera
Altura, en píxels, que tendrá la sección de la cabecera de la rejilla. Si aplicamos un valor 0, hará que tanto en edición como ejecución se calcule su tamaño automáticamente en función del tipo de letra y aplicándose los márgenes por defecto del estilo visual usado.
Color de cara de cabecera
La cabecera de una rejilla es creada a modo de botón tridimensional. En esta propiedad seleccionaremos el color de la cara de la cabecera. Por defecto, se tomará el color para ventana de la paleta asociada a la rejilla. Junto al nombre del color se presenta una muestra del mismo, pulsar sobre ella para editarlo y o seleccionar otro color.
Esta propiedad no es funcional en todos los estilos visuales.
Color de fondo de cuerpo
En esta propiedad seleccionaremos el color de fondo del cuerpo. Por defecto, se tomará el color base de la paleta asociada a la rejilla. Junto al nombre del color se presenta una muestra del mismo, pulsar sobre ella para editarlo y o seleccionar otro color.
Color de fondo par de cuerpo
En esta propiedad seleccionaremos el color de fondo para las líneas pares del cuerpo. El color seleccionado en la propiedad anterior será el que se use para las líneas impares. Por defecto, se tomará el color base alternativo de la paleta asociada a la rejilla. Junto al nombre del color se presenta una muestra del mismo, pulsar sobre ella para editarlo y o seleccionar otro color.
Esta propiedad no será funcional si la propiedad de la rejilla alternar colores líneas de datos está a falso.
Banda
Sub-objeto de la rejilla avanzada que permite agrupar varias columnas con distintas dimensiones.
Sus propiedades son las siguientes:
Identificador
Etiqueta alfanumérica que identifica la banda. Este identificador será el que se usa para referenciarla en los inspectores y en las propiedades de otros objetos.
Nombre
Etiqueta alfanumérica que servirá como descriptor de la columna. Es el texto que se presentará al usuario final de la aplicación como título de la columna en el caso de que no se haya establecido valor alguno en la propiedad contenido cabecera. Podemos definir una etiqueta por cada idioma presente en el proyecto.
Estilos
Podemos definir el estilo privado que limita el acceso del usuario final al objeto desde puntos donde no se haya programado el acceso al mismo.
Comentarios
Esta propiedad nos permite documentar el uso de la columna de la rejilla.
Título
Permite establecer un texto dinámico como título de la banda. Para ello podremos usar el asistente para edición de fórmulas. Pulsar el botón que aparece al editar esta propiedad para abrirlo.
Banda madre
Mediante esta opción podremos agrupar la banda actual dentro de otra banda definida con anterioridad.
Las bandas no se previsualizan en el editor de rejillas avanzadas de Velneo vDevelop.
Una vez creada una banda, debemos editar las propiedades de cada columna de la rejilla avanzada que queramos incluir en ella y seleccionar la banda en la propiedad del mismo nombre.
Editor de rejillas avanzadas
Velneo vDevelop incorpora un editor para facilitar la modificación de las propiedades de una rejilla. Para abrirlo bastará con hacer doble clic sobre un objeto de tipo rejilla y será mostrado en el panel central de Velneo vDevelop. Se muestra una previsualización de la rejilla avanzada en el dock central y sus propiedades en el panel de propiedades de Velneo vDevelop.
Para editar las propiedades de una columna, simplemente bastará con hacer un clic sobre la cabecera de la misma en el editor de rejillas.
Podremos cambiar el ancho de una columna haciendo clic con el puntero del ratón sobre el margen derecho de una celda y, sin soltar el botón del ratón, desplazándolo a izquierda o derecha:
Además, el editor de rejillas avanzadas incluye una toolbar que incluye los comandos siguientes:
En edición, podemos crear agrupamientos en una rejilla avanzada, para ello haremos clic en la cabecea de la columna por la que deseamos crear un agrupamiento, y la arrastraremos hacia la banda superior:
Al soltar, se previsualizará el agrupamiento:
Agrupar por una columna consiste en formar grupos con las fichas de la lista que tengan el mismo valor en esa columna. La rejilla se convierte entonces en un árbol con los distintos valores de la columna en los nodos primarios que, al abrirlos, despliegan las fichas de su grupo.
Se podrá agrupar por más de una columna, pasando a tener el árbol más niveles.
Desde el panel de sub-objetos también podemos crear bandas, ver el capítulo dedicado a las bandas para conocer cómo se han de configurar.
Añadir campos a la rejilla
Esta funcionalidad nos ahorrará mucho tiempo a la hora de añadir campos a una rejilla que ya existe, ya que permite añadir varios campos a la misma de una sola vez haciendo drag & drop.
Para ello no tenemos más que seleccionar en el árbol de campos los campos a incluir en la rejilla, arrastrarlos y soltarlos en el punto dela rejilla donde queremos añadirlos.
Si soltamos sobre una columna, se añadirán los campos a la izquierda de esta.
Si soltamos sobre el área vacía a la derecha de la rejilla, se añadirán a la derecha de la última columna.
Por cada campo se creará una columna.
Para facilitar la maquetación de la rejilla al desarrollador, se aplicarán siempre unos valores por defecto para las propiedades de las columnas en función del tipo de campo, como ancho, alineamiento horizontal y vertical y formato numérico.
Para seleccionar los campos en el árbol de campos:
Si queremos seleccionar un bloque continuo de campos lo que haremos será situar el foco en el primero de ellos y, con la tecla Shift pulsada, con las teclas de cursor arriba y abajo avanzar hasta el último campo que se quiere seleccionar.
Lo anterior también podemos hacerlo si hacemos clic con el ratón sobre el primer campo a seleccionar, pulsamos la techa Shift y, sin soltarla, hacemos clic con el ratón sobre el último campo a seleccionar.
Si queremos seleccionar campos alternos, entonces lo haremos manteniendo pulsada la tecla Control y haciendo clic con el ratón sobre cada campo a seleccionar.
Si tenemos seleccionado uno o varios campos y queremos seleccionar otro bloque, pulsar la tecla Control y la techa Shift de forma simultanea y, sin soltarlas, hacer clic sobre el primer campo a seleccionar y luego sobre el último. De este modo, el bloque seleccionado se añadirá a la selección.
Si quieres conocer las propiedades de columna de una rejilla avanzada, haz clic aquí.
La rejilla avanzada no es funcional en iOS y en Android está en fase beta, ya que en la versión actual carece de gestión táctil.
Última actualización