VALIDAR DATOS - FORMULARIO MULTILINEA - TOTALIZADOR

hola, tengo un ci compuesto por tres formularios: gastos, liquidacion e imputacion. El formulario imputacion es multilinea y tiene la columna total_imp que totaliza.
El formulario gastos tiene el campo importe_pago .
yo necesito controlar antes de guardar que el campo totalizado total_imp sea igual al campo importe_pago.
el evento guardar esta en otro ci donde tengo un filtro y un cuadro, al seleccionar el registro del cuadro voy al ci con los tres formularios.
si extiendo el formulario imputación obtengo el valor totalizado pero no sé como compararlo con el valor del otro formulario.
gracias,
keny

Hola Keny,

podes agregar un metodo de validacion especifico para ese Ci a nivel JS.

Desde el mismo tenes acceso a ambos formularios asi que vas a poder acceder a los datos y compararlos.
Tene en cuenta que el metodo debe devolver valores booleanos siempre y que el submit depende de el.
Te dejo un link a la doc especifica.

Saludos

yo tengo el ci_gas_per.php donde tengo el evento guardar y tengo el ci_mod_pers.php donde tengo la configuración de mis formularios, tambien tengo la extensión del form-ml donde obtengo el total.
En que ci tendría que hacer el control y con que evento ?


ci_mod_pers.txt (1.83 KB)

AGREGO EL OTRO CI


ci_gas_per.txt (2.79 KB)

Hola Keny,

tendrias que colocar la validacion en el ci_mod_pers, que es el que tiene acceso a los formularios directamente, ademas, te va a ser mucho mas facil saber cuando tenes que enviar el JS al cliente, lo que tendrias que hacer por otro lado, es en el evt__guardar del ci_gas_per hacer la llamada al metodo del otro Ci para ver si se validan los datos, de forma que solamente se lance cuando queres guardar y no cada vez que cambias de pestaña, etc.

Saludos

hola, no logro solucionar mi problema !!
se que tengo que hacer una función js en el ci donde tengo mis formularios, el tema es cuando se ejecuta ea función o como la llamo para que se ejecute, porque antes o con el evento guardar se tendría que ejecutar esta funcion
el evento guardar se hace en el otro ci , el evento validar datos es por form.

Hola Keny,

lo que deberias hacer es desde el evt__guardar del JS del ci, llamar manualmente usando las dependencias al JS que valida el contenido de los formularios. Ese JS lo unico que tiene que devolverte es un booleano, con eso ya podes saber si necesitas hacer el submit o interrumpirlo.

Saludos