Estamos trabajando con la versión de Guaraní 3.18.1, y no esta pasando que en algunas comisiones cuando generamos el acta de regulares (desde gestión) no aparecen los alumnos automáticamente en la misma, pesar de que son alumnos que se encuentran activos en el sistema, e inscriptos en las comisiones. ¿Tienen idea que puede estar pasando?
Estos alumnos se encuentran inscriptos en la comision que estan generando el acta? cual es la calidad del alumno? Ya poseen otras actas abiertas y/o cerradas de la comision? esto les pasa con todos los alumnos que se encuentran inscriptos en la comision o con algunos?
Hola Diego buenos dias
Para ver en detalle te vamos a pedir que nos compartas captura de pantalla, de:
1 - comision en cuestion ( administrar comisiones) , solapa “general” y " fechas"
2 - Reporte de inscriptos de la comision en cuestion (Reporte de Inscripciones a Cursadas).
3 - Como visualizan el acta a la hora de generar el acta de regular.
4 - Parametro cur_multiples_actas_comision.
Diego buenos dias
Te vamos a pedir que nos envies los logs de apñlicacion al momento de querer generar esta acta que NO trae estos alumnos, asi podemos ver que podria estar ocurriendo.
En la operación Generar Actas de Regulares la parte donde dice Alumnos Disponibles se carga desde la función conf__comision_disponibles de php/operaciones/operaciones_generales/seleccion_alumnos/ci_seleccion_alumnos_disponibles.php. Por lo que veo en los logs esta ingresando a esta parte:
Esta ejecutando la query de la función get_detalles_acta de co_evaluaciones:
SELECT sga_eval_detalle_cursadas.evaluacion,
sga_eval_detalle_cursadas.alumno,
sga_alumnos.legajo,
vw_personas.apellido_nombres AS apellido_y_nombre,
vw_personas.tipo_nro_documento AS documento_principal,
sga_propuestas.nombre_abreviado AS propuesta_nombre_abreviado,
sga_insc_cursada.inscripcion,
CASE
WHEN sga_insc_cursada.inscripcion IS NOT NULL THEN 'Sí'
ELSE 'No'
END AS inscripto
FROM sga_evaluaciones
JOIN sga_comisiones ON sga_evaluaciones.entidad = sga_comisiones.entidad
JOIN sga_eval_detalle_cursadas ON sga_evaluaciones.evaluacion = sga_eval_detalle_cursadas.evaluacion
JOIN sga_alumnos ON sga_eval_detalle_cursadas.alumno = sga_alumnos.alumno
JOIN vw_personas ON sga_alumnos.persona = vw_personas.persona
JOIN sga_propuestas ON sga_alumnos.propuesta = sga_propuestas.propuesta
LEFT JOIN sga_insc_cursada ON (sga_insc_cursada.alumno = sga_eval_detalle_cursadas.alumno AND sga_insc_cursada.comision = sga_comisiones.comision)
WHERE sga_evaluaciones.evaluacion = '7' AND
(sga_insc_cursada.estado IS NULL OR sga_insc_cursada.estado = 'A') AND
sga_alumnos.calidad = 'A'
AND sga_eval_detalle_cursadas.instancia_cursada = 1
AND (sga_eval_detalle_cursadas.id_acta_cursada IS NULL OR sga_eval_detalle_cursadas.id_acta_cursada = '-1')
AND sga_alumnos.alumno NOT IN ( SELECT sga_actas_detalle.alumno
FROM sga_actas,
sga_actas_detalle
WHERE sga_actas.comision = sga_comisiones.comision AND
sga_actas.id_acta = sga_actas_detalle.id_acta AND
sga_actas.id_acta <> '-1' AND
sga_actas.origen = 'R' AND
sga_actas.estado = 'C' AND
sga_actas_detalle.estado = 'A' AND
sga_actas_detalle.rectificado = 'N')
AND true
ORDER BY apellido_y_nombre
¿te devuelve resultados dicha query?
Parece ser que no es un acta rectificativa y no tiene comisiones.
¿ustedes tienen personalizadas algunas de esas funciones?
Hice una prueba (los parámetros los tengo exactamente igual a los tuyos), en la operación Generar Actas de Regulares selecciono una comisión que tiene dos alumnos inscritos y me los lista en la solapa Alumnos Disponibles. Lo que me parece extraño es que busque usando la query get_detalles_acta de co_evaluaciones.
En mi caso también busca por evaluación, pero tengo una evaluación creada de forma automática (descripción: “Evaluación automática para generación de acta de regulares y promoción”).
¿existe la evaluación 7 en la tabla sga_evaluaciones?
Me reincorpore en estos días, y estoy retomando este tema que nos quedo pendiente. En cuanto tenga novedades de las pruebas en base a los últimos 2 mensajes de Leonardo les avisamos en este hilo como nos fue.
¡¡¡¡Muchas Gracias por preocuparse y la ayuda permanente a todo el equipo!!!
Fijate si esta consulta devuelve registros. Verificar que no hayan quedado asociados esos alumnos a un acta de otra comision:
SELECT c.nombre as comision, p.apellido_nombres, d.*
FROM sga_eval_detalle_cursadas as d
JOIN sga_evaluaciones as e ON e.evaluacion = d.evaluacion
JOIN sga_comisiones as c ON c.entidad = e.entidad
JOIN sga_actas as ac ON ac.id_acta = d.id_acta_cursada
JOIN sga_alumnos as alu ON alu.alumno = d.alumno
JOIN vw_personas as p ON p.persona = alu.persona
WHERE (ac.evaluacion <> d.evaluacion OR ac.comision <> c.comision)
ORDER BY c.nombre, p.apellido_nombres;
SELECT c.nombre as comision, p.apellido_nombres, d.id_acta_cursada, d.acta_cursada_cerrada, d.*
FROM sga_eval_detalle_cursadas as d
JOIN sga_evaluaciones as e ON e.evaluacion = d.evaluacion
JOIN sga_comisiones as c ON c.entidad = e.entidad
JOIN sga_alumnos as alu ON alu.alumno = d.alumno
JOIN vw_personas as p ON p.persona = alu.persona
WHERE comision = <ID COMISION>
AND d.instancia_cursada = 1
ORDER BY c.nombre, p.apellido_nombres;
¿Que valor devuelven los campos “id_acta_cursada” y “acta_cursada_cerrada” ?
Por sistema si tiro un reporte de inscriptos a la comisión para el periodo lectivo del cual quiero generar el acta de regular los alumnos aparecen.
Necesito preguntarte lo siguiente: 1) ¿el ID de comisión es el campo comisión(PK) de la tabla sga_comisiones del esquema negocio?
En algún mensaje nos habían preguntado si habíamos hecho alguna personalización, solo personalizamos que el numerador de las actas sea independiente x tipo de propuesta. En ningún momento modificamos la operación alumnos disponibles.
¿Las inscripciones a esa comision existen?
Si existen estan en estado aceptado o pendiente?
Porque si estan en estado pendiente, entonces no van a estar en esa tabla temporal de cursadas hasta tanto no se acepten.
¿Y no existe ya un acta cerrada de cursada con esos alumnos inscriptos en la comision?
SELECT id_acta, origen, estado FROM sga_actas WHERE comision = <ID COMISION>
Si esto no devuelve datos, pueden hacer lo siguiente, borrar la instancia de cursada y volver a asignarla, eso deberia hacer que los alumnos inscriptos se copien a la tabla sga_eval_detalle_cursadas:
DELETE FROM sga_insc_cursada_instancias WHERE comision = <ID COMISION> and instancia = 1;
INSERT INTO sga_insc_cursada_instancias (inscripcion, instancia)
SELECT inscripcion, 1 FROM sga_insc_cursada WHERE comision = <ID COMISION>;