Informe de Error en SIU-Guaraní 3w – Datos Censales. Conflicto entre las solapas allegados y datos laborales
Durante las pruebas realizadas sobre la operación datos_censales, se detectó un conflicto en el comportamiento de la solapa Datos Laborales, originado por una colisión de nombres de funciones JavaScript utilizadas también en la solapa Allegados.
Descripción del problema
Al acceder a la solapa Datos Laborales, los campos asociados al bloque de trabajo deberían mostrarse correctamente al seleccionar la opción “Trabajó al menos una hora”, lo que activa la visualización de los siguientes campos:
[trabajo_existe] => 1
[trabajo_hace] =>
[trabajo_familiar] => N
[trabajo_con_descuentos_jubilatorios] => N
[trabajo_recibe_pago] => N
[trabajo_ocupacion] =>
[trabajo_hora_sem] =>
[trabajo_carrera] =>
Luego de completar los datos y guardar los cambios, al navegar hacia la solapa Allegados y posteriormente volver a Datos Laborales, se observa que:
- La opción “Trabajó al menos una hora” continúa seleccionada.
- Sin embargo, los campos que deberían visualizarse en función de esta selección no se muestran, lo que afecta la integridad de los datos ingresados.
Causa del error
Tras una revisión del backend, se identificó que el problema se debe a la definición duplicada de la función global cambio_trabajo_existe(), utilizada tanto en el archivo JS de Allegados como en el de Datos Laborales. Al cargarse ambas simultáneamente en la operación datos_censales, se sobrescribe una de las funciones, generando un comportamiento inesperado y silencioso (sin errores en consola).
Definiciones en conflicto:
- Archivo JS de Allegados (
pagelet_allegados.js):
function cambio_trabajo_existe() {
if ($('#form_allegados-trabajo_existe').val() === '1') {
mostrar('div_datos_trabajo');
} else {
ocultar('div_datos_trabajo', true);
}
}
- Archivo JS de Datos Laborales (
pagelet_datos_laborales.js):
function cambio_trabajo_existe() {
if ($('#form_datos_laborales-trabajo_existe').val() === '1') {
mostrar('div_datos_trabajo');
mostrar('div_datos_adicionales');
} else {
ocultar('div_datos_trabajo', true);
ocultar('div_datos_adicionales', true);
}
}
Consecuencias
- El comportamiento dinámico esperado en la solapa Datos Laborales queda anulado o alterado.
- La interfaz no presenta errores visibles, lo que dificulta la detección del problema por parte de los usuarios.
- Existe riesgo de inconsistencias en la carga de datos por pérdida de visibilidad de campos dependientes.
Cabe aclarar, que desactivamos las personalizaciones para la detección de este error.
Si no fui lo suficiente claro con el informe, podria adjuntar imagenes del error. Desde ya muchas gracias Saludos!