Una de las funcionalidades más habituales en las aplicaciones de gestión es la grabación de datos, y en muchos casos el usuario necesita que la aplicación le permita máxima agilidad para realizar una grabación continua de datos, de tal forma que cuando aceptar un formulario la aplicación le proponga el mismo formulario vacío para seguir grabando. Un formulario se puede mostrar en ventana (cuadro de diálogo) o a pantalla completa (vista). Esta vitamina presenta una solución universal que permite poner el botón aceptar y seguir en formularios en vista y cuadro de diálogo con Velneo.
En formularios a vista completa y en cuadro de diálogo
Para conseguir esto en formularios de Velneo en cuadro de diálogo habíamos visto la vitamina 1 Aceptar y seguir en cuadros de diálogo con Velneo, que como su nombre indica se aplica para cuadros de diálogo, y ¿Cómo puedo conseguirlo en formularios en vista a pantalla completa?
A continuación veremos en esta vitamina lo fácil que será conseguirlo utilizando el API de Velneo con JavaScript una solución universal válida tanto para formularios en cuadro de diálogo como para formularios en vista a pantalla completa.
1º El manejador de evento
Lo más habitual es que el botón aceptar y seguir una vez pulsado se encargue de realizar la verificaciones pertinentes, si todo está correcto se guarde el registro y a continuación muestre el formulario vacío para seguir grabando. Para conseguirlo haremos que el botón Aceptar y seguir ejecute un manejador de evento, como el que podemos ver en la siguiente imagen.
Si analizamos el código vemos 3 partes claramente diferenciadas: 1º verificación, 2º guardar registro, 3º mostrar nuevo registro vacío para seguir grabando.
2º El manejador de evento JavaScript
El encargado de mostrar un nuevo registro vacío es el manejador de evento NUEVO_ALTA. Se trata de un manejador de evento JavaScript que contiene el siguiente código.
Este código es válido para cualquier formulario, por lo que puedes copiar el manejador de evento NUEVO_ALTA a cualquier formulario donde desees aplicar la funcionalidad de aceptar y seguir.
// Se crea un registro nuevo de la tabla origen del formulario var nuevoRegistro = new VRegister(theRoot); nuevoRegistro.setTable(theRegisterIn.tableInfo().idRef()); // Se asigna el registro vacío al formulario var formulario = theRoot.dataView(); formulario.setRegister( nuevoRegistro ); // Situamos el cursor en el primer campo editable formulario.setFocusToFirst();
Universal
Recuerda que esta vitamina es válida tanto para formulario en cuadro de diálogo como para formulario en vista a pantalla completa.