Estamos queriendo cargar notas de promoción a las comisiones desde 3w pero el select nos aparece como disabled.
Estuve haciendo unas pruebas y el problema está en el js, específicamente en estas líneas:
// Si el par�metro ‘cur_asentar_notas_actas_promocion’ es ‘S’ (Sin Notas) deshabilito la carga de notas
if(info.cur_asentar_notas_actas_promocion == info.ingreso_notas_sin_notas){
$(‘.nota_promocion’).prop( “disabled”, true );
}
El tema es que nosotros no tenemos el parámetro en S sino en N. Hay algún error con eso?
El parámetro cur_asentar_notas_actas_promocion dice “Define si se debe o no ingresar la nota en el acta de promoción”, deberías tenerlo en Obligatoria o No obligatoria si queres que ingrese nota.
Valores:
Sin nota: No se debe asentar nota. No obligatoria: Puede asentar nota, es opcional. Obligatoria: Debe asentar nota, es obligatorio.
Luego fíjate en la herramienta de desarrollo del navegador (por lo general se abre con F12) en la solapa Consola te debería mostrar los valores, pásamelos por acá así los vemos.
Cuando hago el console.log los dos me aparecen como undefined, así que por eso me lo está poniendo como disabled.
Miré en operaciones\notas_cursada_comision\pagelet_renglones y tengo lo siguiente:
$this->data[‘cur_asentar_notas_actas_promocion’] = parametro::get_valor(‘cur_asentar_notas_actas_promocion’, $atributos) == \comunes::si
Esto me parece que está bien, no? Pero si pruebo de imprimir qué quedó en esa posición de data no me imprime nada.
La definición de ingreso_notas… no la encontré en mi personalización.
En los logs de la aplicación (carpeta instalacion/logs) debería estar guardado el valor que devuelve el parámetro. Te pediría que lo adjuntes así los puedo ver (se genera un log por cada petición al servidor).
Por lo que veo el parámetro cur_asentar_notas_actas_promocion esta viniendo en N como decías:
-- PARAMETRO: cur_asentar_notas_actas_promocion | ATRIBUTOS: 19 | VALOR: ----
N
y en el único lugar que deshabilita el input es en la función JS setup_deshabilitar_notas del archivo src/siu/operaciones/notas_cursada_comision/renglones/pagelet_renglones.js.
No se porque las variables JS info.cur_asentar_notas_actas_promocion e info.ingreso_notas_sin_notas las tenes en undefined.
Pregunta, cuando hiciste el console.log, ¿lo hiciste directamente en la consola o lo agregaste a la función setup_deshabilitar_notas?
Porque si lo escribís en la consola nose porque devuelve undefined, deberías agregarlo en el código:
function setup_deshabilitar_notas() {
// Si el parámetro 'cur_asentar_notas_actas_regulares' es 'S' (Sin Notas) deshabilito la carga de notas
if(info.cur_asentar_notas_actas_regulares == info.ingreso_notas_sin_notas){
$('.nota_cursada').prop( "disabled", true );
}
// Se agrega debug
console.log(info.cur_asentar_notas_actas_promocion);
console.log(info.ingreso_notas_sin_notas);
// Si el parámetro 'cur_asentar_notas_actas_promocion' es 'S' (Sin Notas) deshabilito la carga de notas
if(info.cur_asentar_notas_actas_promocion == info.ingreso_notas_sin_notas){
$('.nota_promocion').prop( "disabled", true );
}
}
Luego de hacer esto, envíame lo que muestra en la consola.
No lo hice en la consola sino que lo metí en el código tal como indicás. La verdad no sé en qué momento se pierde el dato.
De momento sacaría ese chequeo para que los docentes puedan cargar normalmente.
Como ultima prueba podes ir a la herramienta de desarrollo del navegador, y en la solapa Sources vas a encontrar el archivo js, en el mismo podes agregar un breakpoint y ver los valores en tiempo de ejecución.