Gente,
tenemos un problema “grave”.
En nuestra regional, la carrera Ing. Industrial se codifico con el cardinal (#) como codigo de carrera.
Estamos en version 2.9.0 y tenemos problemas con los alumnos de esta carrera. No pueden inscribirse a examen, no pueden ver su plan de estudio, no pueden realizar ninguna consulta asociada a su plan.
Suponemos que en alguna parte, esta filtrando el caracter #…
Les adjunto el log del error, para que nos ayuden, ya que comienzan las inscripciones a examenes y no sabemos como solucionar esto.
Hasta la versión 2.7.0 inclusive no tuvimos nunca este problema.
Espero sus respuestas.
Puede ser que en algunos filtros donde se ingresaba el codigo de carrera se estaba validando que sea de tipo alfanumerico con lo cual no estaba permitiendo ingresar estos otros caracteres.
Esto se esta actualizando para la version 2.9.1
Veremos si es necesario ajustar esto con un parche para la version 2.9.0 asi pueden seguir adelante. Los mantenemos en contacto.
Alejandro,
tenemos cierta urgencia con esto, ya que mañana miércoles 24/06 comienza la inscripción a exámenes, y tenemos mas de 1.000 alumnos de Ingeniería Industrial en condiciones de rendir materias.
Saludos.
Hola Marcela, acabamos de generar un caso como el que reportan ustedes. Con caracteres especiales en código de carrera, materia, legajo del alumno, turno de examen, etc. Pudimos realizar el proceso de inscripción a exámenes tanto desde gestión como desde 3w. En el ambiente del 3w, utilicé las fuentes del colab de su institución. La inscripción a exámenes fue probada tanto para Regulares como Libres
Te adjunto las imagenes de la prueba
Desde gestión también tienen problemas para la inscripción a exámenes?
Hola,
Desde Gestión no hemos tenido ningun tipo de problemas para inscribir a los alumnos. En 3w, directamente no muestra ninguna materia de la carrera # , que vemos en Gestión que el alumno tiene regulares y en condiciones de rendir, para que seleccione para inscribirse a examen…
Ante cualquier consulta en 3W si el alumno selecciona la carrera de Industrial, la pantalla queda en blanco.
¿que seguimos mirando?
Saludos.
Marcela, el error : ‘’ PERSONA: Error interno. La carrera activa: no esta entre las carreras del alumno’’
Sale del php: /modelo/entidades/persona.php, función: set_carrera_activa
Si podés hacé un debug de las variables $id, y el valor de $this->get_carreras().
Por lo que veo en el log, $id está vacía?
También ver valores de la función: get_id_carrera_activa, del mismo php.
Qué devuelve: kernel::sesion()->get(‘__persona_carrera’); y qué devuelve: $this->get_carrera_defecto().
Cuando el alumno ingresa al sistema lo hace a traves de una carrera, queda en variables de sesion sus datos, sera alli que esa carrera con numeral en el codigo (codigo = #) al setear ese codigo de carrera en la session se este seteando en nulo o string vacío y es que a partir de alli no funciona nada en el sistema para los alumnos de esa carrera?
En que S.O tienen instalado el sistema? Será problema del encoding?
Gente,
lo que notamos es que en algún momento “escapa” o blanquea el carácter #, porque queda vacío cuando se selecciona. El alumno ingresa con una carrera, la primera a la que se inscribió, sin problemas, pero cuando selecciona la carrera # , no funciona nada mas.
El sistema esta instalado sobre un Debian 7.
Saludos
En /modelo/entidades/persona.php, función: set_carrera_activa el $id está vacío y el arreglo de carreras está OK.
En siu\operaciones\acceso\controlador->accion__cambiar_carrera si tiro un var_dump($_GET);exit; antes de $carrera = $this… me devuelve array(3) { [“__o”]=> string(6) “acceso” [“__a”]=> string(15) “cambiar_carrera” [“id”]=> string(0) “” } por lo que acá llega vacío.
Sigo debugueando, donde puede estar limpiando el GET?
Aclaro, la carrera tiene el simbolo # solamente, no es Industrial# o algo asi, solo el simbolo.
Modifiqué en src\siu\www\js\guarani.js lo siguiente:
$(‘#js-select-carreras’).change(function() {
var carrera = $(this).val();
window.location.replace(url_cambio_carrera + “?id=” + encodeURIComponent(carrera) + “&op=” + kernel_config.op_actual);
Con eso soluciono el selector de carreras. Donde más se puede estar enviando el id de carrera por get? al loguearse?
Nicolás, haciendo una revisión del código encontré estos lugares donde se levanta el id de carrera por get:
operaciones/planes_estudio/controlador.php
accion__cargar_plan_estudio
accion__generar_pdf
accion__buscar_planes
accion__buscar_versiones
operaciones/actas/controlador.php
accion__evaluaciones
operaciones/notas_cursada/controlador.php
accion__ficha_alumno
operaciones/fecha_examen/controlador.php
accion__buscar_planes (acá lo pasa hasheado el código, no deberían tener problemas)
accion__buscar_materias (ídem)
operaciones/notas_examen/controlador
accion__ficha_alumno
operaciones/acceso/controlador (ya mencionado anteriormente)
accion__cambiar_carrera
En todos los casos, el validador es de tipo texto.
Deberían probar estas acciones de cada operación, y en caso de tener el mismo problema, aplicar la solución que postearon en el lugar donde arman esas urls.
Hola Nicolás, en el caso de fecha de examen, efectivamente la url de la acción filtrar se arma en operaciones/fecha_examen/filtro/pagelet_filtro.js en la función ‘filtrar’.
Si te fijás, está pasando los filtros serializados, debería quedar algo así:
Ahora voy a relevar donde se manda por url el código de materia y también plan y te paso el listado. Tienen algún identificador más con caracteres especiales?