ei_formulario_ml
Un formulario multilínea (ei_formulario_ml) presenta una grilla de campos repetidos una cantidad dada de filas permitiendo recrear la carga de distintos registros con la misma estructura.
La definición y uso de la grilla de campos es similar al formulario simple con el agregado de lógica para manejar un número arbitrario de filas.
Contiene una serie de ca campos se los denomina Elementos de Formulario (efs).
See:
Object
|
+--ei
|
+--ei_formulario
|
+--ei_formulario_ml
Ubicada en ei_formulario_ml.js
|
ef, efs, puede_submit, cascadas_maestros_preparados, cascadas_preparar_esclavo, get_valores_maestros, cascadas_comunicar, cascadas_respuesta, evt__cascadas_inicio, evt__cascadas_fin, set_procesar_cambios, set_ef_valido, cambiar_expansion
ini, set_eventos_condicionados_por_datos, set_evento, set_evento_implicito, reset_evento, invocar_vinculo, invocar_vinculo_confirmado, cuerpo, raiz, cambiar_colapsado, colapsar, descolapsar, boton_colapsar, ocultar, mostrar, desactivar_boton, activar_boton, ocultar_boton, mostrar_boton, get_boton, exportar_pdf, exportar_excel, agregar_notificacion, limpiar_notificaciones, filtrado_ef_ce_comunicar, filtrado_ef_ce_respuesta, filtrado_ef_ce_validar, filtrado_ef_ce_respuesta_validacion
Métodos
void
|
activar_boton_fila(fila, evento)
|
|
void
|
agregar_total(<string> id_ef)
|
Indica que un ef totalize los valores en todas sus filas colocandolo en la última fila |
void
|
bajar_seleccionada()
|
Toma la fila actualmente seleccionada y la intercambia en orden con la fila posterior en orden |
Object
|
boton_agregar()
|
Referencia al tag html del boton agregar |
Object
|
boton_bajar()
|
Referencia al tag html que contiene el boton de bajar la fila actual |
Object
|
boton_deshacer()
|
Referencia al tag html del boton deshacer |
Object
|
boton_deshacer_cant()
|
Referencia al tag html que contiene la cantidad de eliminaciones a deshacer |
Object
|
boton_eliminar()
|
Referencia al tag html del boton eliminar |
Object
|
boton_subir()
|
Referencia al tag html que contiene el boton de subir la fila actual |
Object
|
cambiar_total(<string> id_ef, <string> total)
|
Cambia el contenido de la fila destinada a contener el valor totalizado de un ef especifico |
void
|
cascadas_cambio_maestro(<string> id_ef)
|
Esquema de Cascadas:
Un ef indica que su valor cambio y por lo tanto sus esclavos deben refrescarse |
Object
|
crear_fila()
|
Agrega una nueva fila a la grilla. |
Object
|
debe_disparar_evento()
|
|
void
|
desactivar_boton_fila(fila, evento)
|
|
void
|
deseleccionar_actual()
|
Deselecciona cualquier seleccion anterior de fila |
void
|
deshacer()
|
Deshace la ultima eliminacion de fila |
string
|
eliminar_fila(<string> fila)
|
Elimina una fila y retorna la fila anterior en orden |
void
|
eliminar_filas()
|
Elimina una fila y retorna la fila anterior en orden |
Object
|
eliminar_seleccionada()
|
Elimina del formulario la fila actualmente seleccionada
El HTML solo se oculta, no se elimina, con lo cual puede ser recuperado en su estado actual |
Object
|
filas()
|
Retorna las filas actuales del formulario
Útil para hacer recorridos por todas las filas, por ejemplo
var filas = this.filas()
for (id_fila in filas) {
this.ef('nombre').ir_a_fila(filas[id_fila]).set_estado('nuevo');
this.seleccionar(filas[id_fila]);
} |
Object
|
get_datos()
|
Retorna el estado actual del formulario en un Arreglo que contiene un Objeto asociativo id_ef=>valor (formato RecordSet) |
Object
|
hay_cambios(<string> fila_actual, <string> ef_actual)
|
Determina si algun ef de alguna fila cambio, o se agregar o quitaron filas
Opcionalmente resalta o no un ef puntual |
void
|
intercambiar_filas(<int> pos_a, <int> pos_b)
|
Intercambia de posicion a dos filas dadas |
void
|
mostrar_boton_fila(fila, evento)
|
|
void
|
mostrar_columna(<string> columna, <boolean> mostrar)
|
Muestra u oculta una columna completa |
void
|
ocultar_boton_fila(fila, evento)
|
|
void
|
post_eliminar_fila(<string> fila)
|
Ventana para colocar código luego de la eliminación de una fila seleccionada |
void
|
refrescar_foco()
|
Toma la fila seleccionada y le pone foco al primer ef que lo acepte |
void
|
refrescar_todo()
|
Refresca todos la grafica variable del formulario |
void
|
resetear_errores()
|
Limpia el componente de errores producidos anteriormente |
void
|
seleccionar(<string> fila)
|
Marca una fila como seleccionada, cambiando su color de fondo
Se puede atrapar el evento con evt__seleccionar_fila (fila),
si dicha funcion devuelve FALSE no se selecciona la fila. |
void
|
set_cabecera_visible_sin_datos(<boolean> visible)
|
Se muestra la cabecera/pie en caso de que no tenga datos el formulario |
void
|
set_toggle(<string> id_ef)
|
Indica que un ef tiene un estado binario |
void
|
subir_seleccionada()
|
Toma la fila actualmente seleccionada y la intercambia en orden con la fila anterior en orden |
Object
|
submit()
|
Inicia el proceso de submit, este proceso recorre todos los componentes
validandolos y preparandolos para una comunicación con el servidor |
void
|
toggle_checkbox(<string> id_ef)
|
Dado un id de un ef checkbox cambia el chequeo de todas las filas |
Object
|
total(<string> id_ef)
|
Función de calculo de total por defecto, suma el valor de cada fila |
Object
|
validar()
|
Realiza la validación de este componente
Para agregar validaciones particulares globales al formulario, definir el metodo evt__validar_datos.
Para validar efs especificos, definir el método evt__idef__validar |
ei_formulario_ml (id, instancia, rango_tabs, input_submit, filas, proximo_id, seleccionada, en_linea, maestros, esclavos, invalidos)
|
|
void activar_boton_fila (fila, evento)
|
|
void agregar_total (<string> id_ef)
|
|
Indica que un ef totalize los valores en todas sus filas colocandolo en la última fila
Parámetros:
id_ef
|
Identificador del ef a totalizar
|
void bajar_seleccionada ()
|
|
Toma la fila actualmente seleccionada y la intercambia en orden con la fila posterior en orden
Referencia al tag html del boton agregar
Referencia al tag html que contiene el boton de bajar la fila actual
Referencia al tag html del boton deshacer
Object boton_deshacer_cant ()
|
|
Referencia al tag html que contiene la cantidad de eliminaciones a deshacer
Referencia al tag html del boton eliminar
Referencia al tag html que contiene el boton de subir la fila actual
Object cambiar_total (<string> id_ef, <string> total)
|
|
Cambia el contenido de la fila destinada a contener el valor totalizado de un ef especifico
Parámetros:
id_ef
|
Id. del ef o columna a variar
|
total
|
Nuevo total
|
void cascadas_cambio_maestro (<string> id_ef)
|
|
Esquema de Cascadas:
Un ef indica que su valor cambio y por lo tanto sus esclavos deben refrescarse
Parámetros:
id_ef
|
Identificador del ef maestro que sufrio una modificación
|
Agrega una nueva fila a la grilla.
Dependiendo de la definición del componente en el editor, este método crea la fila directamente en javascript o
lo hace a través de un evento 'pedido_registro_nuevo' en el servidor
Object debe_disparar_evento ()
|
|
void desactivar_boton_fila (fila, evento)
|
|
void deseleccionar_actual ()
|
|
Deselecciona cualquier seleccion anterior de fila
Deshace la ultima eliminacion de fila
string eliminar_fila (<string> fila)
|
|
Elimina una fila y retorna la fila anterior en orden
Parámetros:
fila
|
Id. de la fila a eliminar
|
Elimina una fila y retorna la fila anterior en orden
Object eliminar_seleccionada ()
|
|
Elimina del formulario la fila actualmente seleccionada
El HTML solo se oculta, no se elimina, con lo cual puede ser recuperado en su estado actual
Retorna las filas actuales del formulario
Útil para hacer recorridos por todas las filas, por ejemplo
var filas = this.filas()
for (id_fila in filas) {
this.ef('nombre').ir_a_fila(filas[id_fila]).set_estado('nuevo');
this.seleccionar(filas[id_fila]);
}
Retorna el estado actual del formulario en un Arreglo que contiene un Objeto asociativo id_ef=>valor (formato RecordSet)
Object hay_cambios (<string> fila_actual, <string> ef_actual)
|
|
Determina si algun ef de alguna fila cambio, o se agregar o quitaron filas
Opcionalmente resalta o no un ef puntual
Parámetros:
fila_actual
|
Nro de fila a verificar
|
ef_actual
|
Identificador del ef a verificar
|
void intercambiar_filas (<int> pos_a, <int> pos_b)
|
|
Intercambia de posicion a dos filas dadas
Parámetros:
pos_a
|
Posicion que ocupa la primer fila
|
pos_b
|
Posicion que ocupa la segunda fila
|
void mostrar_boton_fila (fila, evento)
|
|
void mostrar_columna (<string> columna, <boolean> mostrar)
|
|
Muestra u oculta una columna completa
Parámetros:
columna
|
Id. del ef o columna a variar
|
mostrar
|
Indica si se muestra u oculta
|
void ocultar_boton_fila (fila, evento)
|
|
void post_eliminar_fila (<string> fila)
|
|
Ventana para colocar código luego de la eliminación de una fila seleccionada
Parámetros:
fila
|
Nro de fila de la eliminacion
|
Toma la fila seleccionada y le pone foco al primer ef que lo acepte
Refresca todos la grafica variable del formulario
Limpia el componente de errores producidos anteriormente
void seleccionar (<string> fila)
|
|
Marca una fila como seleccionada, cambiando su color de fondo
Se puede atrapar el evento con evt__seleccionar_fila (fila),
si dicha funcion devuelve FALSE no se selecciona la fila.
Parámetros:
fila
|
Nro de fila a seleccionar
|
void set_cabecera_visible_sin_datos (<boolean> visible)
|
|
Se muestra la cabecera/pie en caso de que no tenga datos el formulario
Parámetros:
visible
|
Indica si la cabecera es visible o no ante la falta de datos.
|
void set_toggle (<string> id_ef)
|
|
Indica que un ef tiene un estado binario
Parámetros:
id_ef
|
Identificador del ef
|
void subir_seleccionada ()
|
|
Toma la fila actualmente seleccionada y la intercambia en orden con la fila anterior en orden
Inicia el proceso de submit, este proceso recorre todos los componentes
validandolos y preparandolos para una comunicación con el servidor
void toggle_checkbox (<string> id_ef)
|
|
Dado un id de un ef checkbox cambia el chequeo de todas las filas
Parámetros:
id_ef
|
Identificador del ef switchear
|
Object total (<string> id_ef)
|
|
Función de calculo de total por defecto, suma el valor de cada fila
Parámetros:
id_ef
|
Identificador del ef a totalizar
|
Realiza la validación de este componente
Para agregar validaciones particulares globales al formulario, definir el metodo evt__validar_datos.
Para validar efs especificos, definir el método evt__idef__validar
Desarrollado por SIU.
Documentación generada con JSDoc
|
|