VFormDataView
Hereda de: VAbstractDataView.
Esta clase representa a un objeto formulario.
Indice de funciones
De atributos
Boolean getRegister( VRegister reg )
Boolean isHardLocked()
Boolean isRegisterModified()
Boolean isSubForm()
Boolean setRegister( VRegister reg )
De widgets
Widget control( Number index )
Widget control( String szIdPrimarioControl )
Number controlCount()
VAbstractDataView dataViewActive()
VFormDataView mainForm()
void setCalendarStyle(String colorFondo, String colorTexto, String DíasSemana, String CadenaDiaMeses, Array fechas)
De foco
void setFocusToFirst()
void setFocusToNext()
void setFocusToPrev()
De comandos
void accept()
void acceptConfirm()
void acceptNoClose()
void cancel()
void cancelConfirm()
void closeForm()
void eliminate()
void eliminateConfirm()
Boolean saveRegister()
void undo()
void undoConfirm()
void updateControls()
void updateRegister()
De maestros
void execEditMaster( String szIdCampoMaes, String szIdRefForm )
void execFindMaster( String szIdCampoMaes, String szIdRefLocaliz )
void execNewMaster( String szIdCampoMaes, String szIdRefForm )
Señales
Item: cambio de seleccionado
Documentación de funciones
Funciones de atributos
Boolean getRegister( VRegister reg )
Devuelve el registro del formulario y se lo pasa la objeto de la clase VRegister especificado.
Parámetros:
reg: objeto de la clase VRegister donde se almacenará la ficha del formulario.
Boolean isHardLocked()
Devuelve true si la ficha del formulario está bloqueada.
Boolean isRegisterModified()
Devuelve true si algún dato del registro ha sido modificado.
Boolean isSubForm()
Devuelve true si el formulario está incrustado dentro de otro y se comporta como un subformulario.
Boolean setRegister( VRegister reg )
Asigna un nuevo registro al formulario. Esto permite cambiar de ficha o incluso pasarle una ficha vacía para que el formulario permita dar altas.
Parámetros:
reg: objeto de la clase VRegister con el registro de la tabla a asignar al formulario.
Funciones de widgets
Widget control( Number index )
Devuelve un objeto de la clase Widget correspondiente al control especificado.
Parámetros:
index: número que corresponde con el índice o posición del control en la lista de controles del formulario.
Widget control( String szIdPrimarioControl )
Devuelve un objeto de la clase Widget correspondiente al control especificado.
Parámetros:
szIdPrimarioControl: identificador del control.
Number controlCount()
Devuelve el número de controles que contiene el formulario.
VAbstractDataView dataViewActive()
Devuelve un objeto de la clase VAbstractDataView correspondiente al objeto contenido en un control contenedor como pueden ser el separador, caja o pila de formularios, spliter o vista de datos.
VFormDataView mainForm()
Devuelve un objeto de la clase VFormDataView correspondiente al formulario principal donde está contenido el formulario. Esta función es útil cuando un formulario está siendo usado como subformulario de otro y deseamos conocer el formulario principal. Independiente del número de niveles de amalgama en los que se encuentre un subformulario esta función siempre devuelve el objeto formulario principal que contiene a todo el resto.
void setCalendarStyle(String colorFondo, String colorTexto, String DíasSemana, String CadenaDiaMeses, Array fechas)
Permite configurar la interfaz de los días de los calendarios del formulario en curso. Se aplicará a todos los controles de tipo calendario, edición fecha con calendario y edición fecha/hora con calendario. Equivale al comando de instrucción de proceso Interfaz: Establecer estilo de los días de calendarios.
Parámetros:
colorFondo: cadena con el color de fondo a aplicar a los calendarios. Podemos especificar, o bien su valor hexadecimal (ejemplo:
"#FFFFFF"
), o bien su nombre (ejemplo:"white"
). Este parámetro es opcional. Si no se especifica, no se aplicará ningún color de fondo al día o días que se configuren en el resto de los parámetros de la función.String colorTexto: cadena con el color de texto a aplicar a los calendarios. Podemos especificar, o bien su valor hexadecimal (ejemplo:
"#FFFFFF"
), o bien su nombre (ejemplo:"white"
). Este parámetro es opcional. Si no se especifica, no se aplicará ningún color de texto al día o días que se configuren en el resto de los parámetros de la función.String DíasSemana: cadena con los números de día de 1 a 7 o letras para los días a los que se aplicará el estilo separados por comas:
De 1 a 7, día de la semana de lunes a domingo.
"H"
o"T"
para aplicar estilo al día de hoy (admitir mayúsculas y minúsculas). Ejemplo:"1,2,3,4,5"
."S"
para aplicar estilo al día seleccionado en el calendario (admitir mayúsculas y minúsculas).Este parámetro es opcional, si no se especifica, no se aplicará a ningún día.
String CadenaDiaMeses: cadena con los días y meses del año a los que se aplicará el estilo en todos los años, separados por comas y con el formato (d/M), ejemplo:
"1/1,02/02,10/10"
. Este parámetro es opcional, si no se especifica nada, no se aplicará a ningún día/mes en concreto.Array fechas: En este parámetro podremos especificar, o bien un dato de tipo fecha o bien un array con las fechas a las que aplicar el estilo. Este parámetro es opcional, si no lo aplicamos, no se aplicarán los colores configurados a ninguna fecha concreta.
Funciones de foco
void setFocusToFirst()
Sitúa el foco en el primer control del formulario.
void setFocusToNext()
Sitúa el foco en el siguiente control del formulario según el orden de tabulación establecido.
void setFocusToPrev()
Sitúa el foco en el anterior control del formulario según el orden de tabulación establecido.
Funciones de comandos
void accept()
Equivale al comando de botón Aceptar que graba el registro y cierra el formulario.
void acceptConfirm()
Equivale al comando de botón Aceptar controlado que graba el registro y cierra el formulario previa confirmación por parte del usuario.
void acceptNoClose()
Equivale al comando de botón Aceptar que graba el registro y no cierra el formulario. Esta función está pensada para dar altas continuas sin cerrar el formulario.
Esta función sólo es válida para formulario en cuadro de diálogo.
void cancel()
Equivale al comando de botón Cancelar que cierra el formulario sin guardar los cambios.
void cancelConfirm()
Equivale al comando de botón Cancelar controlado que cierra el formulario sin guardar los cambios previa confirmación por parte del usuario.
void closeForm()
Esta función sólo cierra el formulario. No guarda la información del registro. Si deseamos almacenar la información del registro antes de cerrar el formulario debemos usar la función saveRegister().
void eliminate()
Equivale al comando de botón Eliminar que borra el registro y cierra el formulario.
void eliminateConfirm()
Equivale al comando de botón Eliminar que borra el registro y cierra el formulario previa confirmación por parte del usuario.
Boolean saveRegister()
Guarda todos los cambios del registro. Esta función no cierra el formulario por lo que equivale a aplicar los cambios y seguir editando.
void undo()
Equivale al comando de botón Deshacer que retrocede todas las operaciones de la transacción en curso y cierra el formulario.
void undoConfirm()
Equivale al comando de botón Deshacer controlado que retrocede todas las operaciones de la transacción en curso y cierra el formulario previa confirmación por parte del usuario.
void updateControls()
Mueve los datos existentes en los campos del registro a los controles y refresca la información en el formulario. Es muy útil para refrescar los controles del formulario tras haber realizado cambios en la información de los registros que se están visualizando. Esta función no cierra el formulario.
void updateRegister()
Mueve los datos de los controles a los campos del registro y realiza la actualización del mismo. Esta función no cierra el formulario.
Funciones de maestros
void execEditMaster( String szIdCampoMaes, String szIdRefForm )
Ejecuta el comando de botón Edición de maestro asociado a un control.
Parámetros:
szIdCampoMaes: identificador del campo maestro.
szIdRefForm: identificador del formulario que se mostrará para la edición del registro.
void execFindMaster( String szIdCampoMaes, String szIdRefLocaliz )
Ejecuta el comando de botón Localizar maestro asociado a un control.
Parámetros:
szIdCampoMaes: identificador del campo maestro.
szIdRefForm: identificador del localizar que se mostrará para la selección del registro.
void execNewMaster( String szIdCampoMaes, String szIdRefForm )
Ejecuta el comando de botón Alta de maestro asociado a un control.
Parámetros:
szIdCampoMaes: identificador del campo maestro.
szIdRefForm: identificador del formulario que se mostrará para la edición del registro.
Ejemplos
1. Habilita todos los controles de un formulario
2. Deshabilita todos los controles de un formulario
3. Cargar una ficha existente en un formulario de altas
Se trata de hacer que, en un formulario de altas de una tabla, el usuario introduzca un ID y ejecutar un manejador de evento que comprueba si existe la ficha. Si existe, editarla en el mismo formulario.
Podemos crear un único script en el inspector de scripts y en el formulario simplemente crear un manejador de evento JavaScript que lo incluya. Ejemplo:
De este modo, un único script valdrá para cualquier formulario de cualquier tabla.
4. Comprobar si el formulario está incrustado como subformulario en otro formulario
5. Desde un subformulario, ejecutar un manejado de evento que añade otro subformulario al el separador donde está incrustado
6. Aceptar el formulario principal desde un subformulario del mismo
7. Personalizar los días de calendarios de un formulario
Tenemos un formulario con variables locales definidas para establecer colores de fondo y texto de:
Días laborables (de lunes a viernes).
Fines de semana y festivos (sábados, domingos y festivos del año).
Para destacar los días 1 de cada mes.
Para destacar el día actual.
Para destacar el día seleccionado en el calendario.
Además, disponemos de una variable local array con las fechas de los días festivos del año.
Y el proceso ejecuta el script siguiente para personalizar los calendarios: