Buenos días.
Hace unos días hice un posteo por una regla que no podía crear correctamente. Al final funcionó correctamente.
Pero tengo un problema en Autogestión.
La regla bloquea alumnos que tienen deuda en la institución. En gestión funciona perfecto pero cuando la habilito en autogestión me bloquea la inscripción a exámenes de forma total. Si quiero inscribir a un alumno a cualquier mesa el sistema queda pensando.
Si la deshabilito, tengo que reiniciar apache porque me deja el sistema colgado.
Si la pruebo en Toba funciona perfecto.
Tengo gestión en un servidor y autogestión en otro server ¿habrá algo que configurar en autogestión que me esté faltando?
Gracias de antemano.
Hola Pablo! Cómo estás?
Podrías pasarnos el link del hilo donde se trató la configuración de esta regla?
En gestión funciona perfecto pero cuando la habilito en autogestión me bloquea la inscripción a exámenes de forma total. Si quiero inscribir a un alumno a cualquier mesa el sistema queda pensando.
Se refieren a que al querer realizar una inscripción desde Autogestión el sistema se queda colgado? o es que no les está permitiendo realizar la inscripción en lugar de realizarla en estado pendiente?
Podrían enviarnos los logs que se generan con el error?
Saludos!
Hola Martín, el link del primer post es [Error en regla personalizada]. No hay mucho ahí.
El error que tengo es que no encuentra la clase pero está bien configurada (al menos en Gestión funciona OK).
error_g3w.log (59,4 KB)
Te paso el log de guarani.
Te recuerdo que G3w y Gestión están en equipos separados… no sé si venga X ahí el mambo.
Corriste el autoload para autogestion?
https://documentacion.siu.edu.ar/wiki/SIU-Guarani/Version3.21.0/personalizaciones/requisito_proceso#Crear_el_archivo_php_de_la_regla
En Toba Editor, desde la operacion “Reglas”, probaste esta regla para autogestion?
Aunque en realidad lo que cambia alli respecto de probarlo para la interfaz de Gestion, es el mensaje que se visualiza que esta personalizado para el alumno.
Hola @pgimperiale , agrego a lo de Ale:
Esta dando el siguiente error:
clase: Error
mensaje: ERROR: Class 'regla_bloqueos_ucel' not found
¿que versión tienen instalada?
¿a donde apunta la instalación, con el comando svn info
te muestra la URL?
Revisa Interconexión entre SIU-Guaraní Gestión y 3w, quizás tenes que ejecutar bin/guarani pers_autoload
en Gestión y comitearlo para que luego lo tome Autogestión.
Saludos.
2
Sí, el pers_autoload está corrido.
Como te comenté arriba (1º posteo) la regla está probada desde Toba y la prueba funiona ok tanto en gestión como en autogestión.
Pablo, como te comente antes, que selecciones “interfaz autogestion” al probar la regla esde el Toba no significa que ejecuta el codigo que deberia ejecutarse desde la interfaz de autogestion, sino solamente es que visualiza el mensaje segun resultado de la regla con el mensaje personalizado al alumno.
No estas probando la regla como si estuvieras en el ambiente de autogestion, la estas probando como si estas en el ambiente de gestiòn; que es lo que esta funcionando sin problemas.
El relacionado con la interfaz de autogestion tambien?
Ese archivo que implementa la regla se encuentra en php\nucleo\g3w_autoload.php o n\src\pers_gestion\php\guarani_pers_autoload.php?
Revisa tener regla_bloqueos_ucel en alguno de estos archivos de Autogestión:
src/pers_gestion/php/guarani_autoload_clases_nuevas.php
src/pers_gestion/php/guarani_clases_consultas_nuevas.php
src/pers_gestion/php/guarani_pers_autoload.php
Si lo tenes en Gestión personalizacion/php/guarani_pers_autoload.php y no en Autogestión es porque te falto actualizar en este ultimo (svn up
).
Saludos.
2
En autogestión no estaba corriendo en pers_autoload… cuando quiero correrlo obtengo un error
[Symfony\Component\Console\Exception\CommandNotFoundException]
Command “pers_autoload” is not defined.
Buenos días.
-En el server donde tengo instalado 3w agregué Symfony. Al correr pers_autoload el error es que el comando no está definido.
-Corrí el svn update en el servidor donde tengo instalado gestión (sin errores).
-Volví a correr el pers_autoload en el servidor de gestión (sin errores).
-La clase está definida en TODOS los archivos indicados en la documentación en el servidor de gestíon, incluído el archivo guarani_pers_autoload.php en /g3w/src/pers_gestion/php, y el archivo .php con la clase está copiado en /g3w/src/pers_gestion/php/nucleo/lib/reglas en el servidor de autogestión.
Sigue sin funcionar desde autogestión. Pero ahora no veo errores en los log. Simplemente no cargan las mesas de examen para poder inscribirse. Adjunto el archivo .log.
20240623_095947___3466.log (135,1 KB)
Hola @pgimperiale
El comando bin/guarani pers_autoload
se ejecuta en Gestión, luego commiteas los cambios, y como Autogestión tiene un svn external apuntando a Gestión al ejecutar svn up
en Autogestión se descargan las clases del autoload.
Ver Interconexión entre SIU-Guaraní Gestión y 3w.
Saludos.
2
Hola Esteban, en el log se ve que se ejecutan otros requisitos, como ser:
Resultado Control: Ser Alumno Regular = paso
Pero no veo mensaje similar del requisito 1002:
Resultado Control: Bloquero Financiaro = paso
Aunque en el log se ve que se esta ejecutando pero no muestra el resultado final de la ejecucion de este requisito.
¿Lo configuraron en el punto de control 2?
Respecto de:
Simplemente no cargan las mesas de examen para poder inscribirse.
Quizas sea porque el requisito 1002 falla si es que lo configuraron en el punto de control 17, que se controlan estos requisitos cuando se selecciona una actividad. Pero no estas viendo el mensaje de error del requisito.
Otra opcion es que no tengan mesas de examen con periodos de inscripcion vigente.
Si desactivan el requisito de Bloqueo Financiero, las mesas de examen las ven y pueden inscribirse?
Hola Alejandro… si si está configurado en el punto de control 2 porque habíamos creado un punto de control personalizado y no funcionaba.
El pto. de control 2 fue recomendación tuya si mal no recuerdo en el posteo anterior.
Si, porque por lo que entiendo de este requisito es que no dejan inscribir si tiene algun problema financiero el alumno, con lo cual no importa a que materia se quiera inscribir, por lo tanto puede controlarse este requisito cuando se selecciona la operacion de inscribirse a examen.
No se visualizan mesas para ningun alumno, es decir para el que no cumple este requisito como para el que lo cumple?
Si desactivas el requisito, se visualizan las mesas de examen?
Exacto… para ningún alumno. En realidad sí se muestra la lista de actividades pero al clickear en alguna no recibo ningún error ni mensaje (ni siquiera el mensaje indicando que no hay mesa disponible en el caso de las mesas no habilitadas)… es como si no hiciera nada… Me pasa con todos los alumnos (estén bloqueados o no).
Si desactivo el requisito (previo matar el proceso de apache -algo queda ciolgado-) le sistema vuelve a la normalidad y puedo inscribirme normamente.
Hola Leonel.
Estoy haciendo todo tal cual…
Ya revisé rutas, permisos.
Ahora voy a probar instalar otro servidor y ver si hay algún cambio pero no veo qué puede estar mal.
Pablo, para darle solucion al tema. Por favor subi la personalizacion al nodo de tu institucion asi vemos de recuperar esa personalizacion, la probamos y vemos si encontramos el problema.
Saludos!
Buenos días.
Pude hacerla funcionar finalmente.
Simplemente agregando el archivo co_actas_ucel.php en la carpeta 3w/src/pers_gestion/php/nucleo/matriculas/alumnos. Adivinando… porque no había error en ningún lado. Esto no está en la documentación (o al menos yo no lo encontré en ningún lado).
El update de subversion funciona porque los cambios me los trae.
De paso pregunto… ¿hay forma de eliminar el mensaje de sistema " Seleccioná una actividad del listado para ver aquí las mesas a las que te podés inscribir " cuando se ejecuta la regla? Sin trastear mucho con el código.
Hola Pablo, el archivo php que implementa la regla del requisito que personalizaron (Archivo regla_bloqueos_ucel.php) , debiera estar dentro de la carpeta /personalizacion/php/nucleo/_lib/reglas/
En el metodo validar() de esa regla, segun mensaje del foro anterior relacionado con este mencionabas que evaluabas un metodo que estaba en la clase de consulta PHP co_alumnos:
$cant_alumnos = guarani::co(‘co_alumnos’)->get_bloqueo_fin($datos_alumno)
El mètodo get_bloqueo_fin se encuentra en el archivo /personalizacion/php/nucleo/matriculas/alumnos/co_alumnos_ucel.php?
Respecto de.
De paso pregunto… ¿hay forma de eliminar el mensaje de sistema " Seleccioná una actividad del listado para ver aquí las mesas a las que te podés inscribir " cuando se ejecuta la regla? Sin trastear mucho con el código.
Cuando se envia ese mensaje? ¿Al seleccionar la opcion del menu “Inscribir a Examen” ?
No es un mensaje relacionado con el requisito que agregaron
Volviendo a revisar el mensaje del foro original, veo que habias agregado el parametro “alumno”. No es necesario ya que el punto de control donde configuraste el requisito (punto de control nro 2), ya recibe el parametro “alumno”
Esta tabla sga_reglas_parametros, se define cuando un requisito en particular necesita algun parametro adicional cuando lo configuras en alguna operacion. En este caso el dato de alumno no debiera ser un dato que lo agregas a la regla porque no se solicita al momento de configurar el requisito en la operacion de inscripcion a examen, sino que es un dato que ya se pasa por parametro a la regla cuando se ejecuta en el punto de control donde lo configuras.
INSERT INTO sga_reglas_parametros (regla, parametro, etiqueta, tipo_de_dato, orden, valor_desde, valor_hasta) VALUES (1002,‘alumno’, ‘Bloqueo financiero’, ‘E’, 1, ‘0’, ‘1’);
Debes quitar este registro.