Problemas nueva version 3.21.3

Hola gente, les cuento que pasamos esta semana de la version 3.19.0 a la version 3.21.3 y tuvimos problemas con las vistas

‘vw_hist_academica’,‘vw_regularidades’,‘vw_hist_academica_basica’,‘vw_regularidades_basica’

De acuerdo al Registro de cambios, ticket 43050 . Se tocaron esas vistas en la version 3.21

El error es que en la nueva version se le desaparecieron materias a muchos alumnos. Tanto regulares como aprobadas. De acuerdo a lo que vi creo que puede tener algo que ver con las materias comunes.

De momento lo solucionamos pero no es definitivo y nos gustaria saber si es posible que se revisen esas modificaciones ya que en la version anterior no pasaba eso.

Por lo que pude ver, una diferencia entre la vista vw_hist_academica v3.19 y v3.21 en la linea 242 (aprox) parece haberse aplanado un nivel un subselect

    AND NOT EXISTS 
        (SELECT 1
            FROM sga_elementos_no_comunes enc
            WHERE ((enc.plan_origen = pv_acta.plan) AND (enc.plan_destino = pv_alu2.plan) AND (enc.elemento = sga_elementos.elemento) )
         )

Por lo pronto, se que el problema está en el where de las uniones. Les dejo esos datos por si les sirve.

Gracias

Hola @gacz81

‘vw_hist_academica’,‘vw_regularidades’,‘vw_hist_academica_basica’,‘vw_regularidades_basica’

Dichos cambios salieron en la versión 3.17.1 con el ticket 22852

El error es que en la nueva version se le desaparecieron materias a muchos alumnos. Tanto regulares como aprobadas. De acuerdo a lo que vi creo que puede tener algo que ver con las materias comunes.

¿en que operaciones ocurre eso? ¿podrías adjuntarnos capturas y logs?

Saludos y buen 2024.
2

Hola Leo

No, los cambios que nos afectaron fue como te digo los de la version 3.21. Nosotros estabamos en la version 3.19 y no s funcionaba bien.

En la ficha del alumno/persona, en la parte de autogestion y por gestion se veia la falta de materias tanto regulares como aprobadas. Y nuestro analitico hace uso de las vistas vw_hist_academica y vw_regularidades, por lo tanto lo vimos ahi tambien.

Capturas te las debo hasta cuando vuelva al trabajo.

Logs? que tipo de logs necesitas? no tira ningun error, pero nos empezaron a reportar la falta de materias los alumnos. Y al verificar lo que mostraba la version anterior y la nueva nos dimos cuenta.

Slds

Hola @gacz81

Claro, el ticket para la versión 3.21.0 fue el #43050, te dejo las Notas para Testeo para sepas de que se trata:

A un alumno aprobar una actividad en el plan A, donde la actividad se llama A1 y otorga 5 creditos y tiene 20hs.

Luego cambiarlo de plan donde la actividad se llama A2 y otorga 6 creditos y tiene 25hs.

Al consultar la historia academica, deberia mostrar los daots actuales (A2, 6 y 25) y en los campos “xxxx_origen” los datos donde aprobo esa actividad (A1, 5 y 20)

En ambas vistas los creditos y horas. El nombre solo se muestra en la vw_hist_academica.
Lo mismo con la vista de regularidades (vw_regularidades y vw_regularidades_basica)

También deberia suceder lo mismo si es una actividad comun que la aprobó en otra propuesta donde alli tenia otro nombre, otros creditos y otro total de horas.

Realizar consultas a las vistas:
vw_hist_academica
vw_hist_academica_basica

Y si era una regularidad:
vw_regularidades
vw_regularidades_basica

En la ficha del alumno en “Historia Academica” y “Regularidades”, en el boton que visualiza el origen si fue aprobado en otra propuesta, debe mostrar los datos del origen.

Quizás te esta ocurriendo algo similar y por eso no muestra ciertas materias.

Saludos.
2

Dejan de verse materias comunes realizadas en otras propuestas del alumno si es que Uds definieron que entre esa otra propuesta y la propuesta actual por la que estan consultando la historia academica del alumno no se considera común.
¿Uds definieron esas relaciones?
¿Tienen registros en la tabla sga_elementos_no_comunes?
Si tienen, estos registros son de pruebas que estuvieron realizando o efectivamente realizaron esa definición para que no considere en esas relaciones de propuestas-planes a esas actividades como comunes?

Gonzalo, pudieron ver si tienen actividades definidas en la tabla sga_elementos_no_comunes ?

Hola Ale, si nosotros usamos materias no comunes y tenemos muchas en las tablas correspondientes. Pero porque deberian desaparecer las materias?

Nosotros le “exigimos” al alumno aprobar la materia (comun, con mismo codigo) en todas las carreras que esté la misma. Por esto mismo no deberia desaparecer ya que existe, en principio en todas las carreras del alumno.

No es que la materia aprobada en una carrera se la mostramos en las demas (supongo te referis a ese caso)

Aclaro que lo del mismo codigo es para los planes migrados. En planes nuevos evitamos este comportamiento por los efectos indeseados en algunas partes del sistema. Pero las vistas venian funcionando bien! hasta el cambio de version.

Si son materias diferentes entonces no deberian desaparecer.
El caso de usar la misma actividad (mismo registro en sga_elementos) en dos planes de diferentes propuestas curriculares y no quieren que se comparta como materia comun, es decir que si el alumno aprueba la actividad en la propuesta 1, NO desean que se de por cumplida automaticamente en la propuesta 2, es entonces que deben definir esa relación entre los planes de la propuesta 1 y 2 para esa actividad para que no se comporte como materia comun, y es en este caso donde en la propuesta 2 no debería aparecer como aprobada por la propuesta 1 (reconocimiento automatico).
Ahora, si este es el caso, Uds a esa materia le registran una equivalencia en la propuesta 2 y es esta equivalencia la que dejó de visualizarse en el reporte de Historia Academica?

Por favor detallanos el caso, que tiene registrado (examen, promocion, equialencia, aprobción por resolución) en la propuesta origen y en la propuesta destino (donde desapareció la actividad) para entender mejor el caso y poder reproducirlo

Ale son alumnos que cursan una unica carrera. No descarto que la materia esté en la tabla de materias no comunes (para otro plan o carrera) pero hay un error ahi en la consulta, no se deberia perder ninguna materia en los casos que vimos.

Te paso uno para que te des una idea. Perdon la mala calidad de la foto, es lo que me mandaron del depto alumnos.

Hola Gonzalo,
Tomemos este caso de ejemplo que se ve en las imágenes. Estas tres materias (FUNDAMENTOS DE LA INFORMÁTICA, INTRODUCCIÓN A LA INGENIERÍA y TÉCNICA DE LA EXPRESIÓN ORAL Y ESCRITA) fueron aprobadas por el alumno con un acta de promoción, acta de examen, una equivalencia total o una aprobación por resolución?
Saludos, Florencia.

Este caso particular son todas promociones las que mencionas. Pero hemos tenido otros donde se pierden regularidades tambien.

Gonzalo,
Y si ejecutás la parte del UNION que dentro de la vista ‘vw_hist_academica’ refiere a promociones, comentando las condiciones del WHERE de a una, no te das cuenta por qué se excluyen esos registros?
Entre las versiones 3.19 y 3.21 lo que cambiamos en el JOIN fue:

LEFT JOIN sga_elementos_plan ON (sga_elementos_plan.plan_version = sga_actas_detalle.plan_version AND sga_elementos_plan.elemento_revision = sga_elementos_revision.elemento_revision)

Por esto:

LEFT JOIN sga_elementos_plan as ep_origen ON (ep_origen.plan_version = sga_actas_detalle.plan_version AND ep_origen.elemento_revision = sga_elementos_revision.elemento_revision)
LEFT JOIN sga_elementos_plan as ep_actual ON (ep_actual.plan_version = alu2.plan_version AND ep_actual.elemento_revision = sga_elementos_revision.elemento_revision)

Y consecuentemente en el WHERE:

-- Otras propuestas de la persona donde se encuentra la actividad
AND (alu2.alumno = sga_alumnos.alumno OR
        (alu2.plan_version IN (SELECT ep2.plan_version FROM sga_elementos_plan as ep2 WHERE ep2.elemento_revision = sga_elementos_revision.elemento_revision)

Por esto:

-- Otros planes de la persona donde se encuentra la actividad
AND (pv_acta.plan = pv_alu2.plan OR
        ((ep_actual.elemento_plan IS NOT NULL OR (ep_actual.elemento_plan IS NULL AND sga_alumnos.propuesta = alu2.propuesta))

Lo referente a ‘sga_elementos_no_comunes’ ya se estaba teniendo en cuenta…
Saludos, Florencia.

Hola Florencia, el alumno esta en una unica propuesta.

Gonzalo,
Quizás tuvo cambios de plan?
Saludos, Florencia.

Si Flor. Tiene un cambio de plan (y cambios de versiones de plan) y las materias faltantes las aprobó en el plan anterior.

Revisando me di cuenta que tambien tenia un reprobado de “Algebra I” en el plan anterior que no le figura en el nuevo. Solo le figura la aprobacion de Algebra con el 4 que fue en el ultimo plan. Algebra la rindió por examen como regular.

Slds

Gonzalo,
No tendrán por error incluida en la tabla ‘sga_elementos_no_comunes’ la actividad y dos planes de la misma propuesta?
Tenés el identificador de alguna de las actividades del caso de ejemplo? Sino lo podés obtener así:

SELECT	*
FROM	sga_elementos
WHERE	f_limpiar_acentos(sga_elementos.nombre) ILIKE '%FUNDAMENTOS DE LA INFORMATICA%'

Y con el identificador consultar las excepciones de validez de actividades comunes:

SELECT	*
FROM	sga_elementos_no_comunes
WHERE	sga_elementos_no_comunes.elemento = <identificador de la actividad>;

Saludos, Florencia.

Hola Gonzalo, alguna novedad con lo que te consulto Florencia (mensaje nro 15)?

Buen dia gente, disculpen la demora. Queria verificar bien antes de responder y me llevo tiempo buscar los datos y volver al caso en particular.

  1. si pude constatar que tenemos materias de distintos planes pero misma carrera en la tabla de sga_elementos_no_comunes. Lo cual no deberia suceder.

  2. Pero el problema no es ese. Eliminé de la tabla los elementos misma carrera diferente plan que tenia este caso en particular, para verificar pero le siguen faltando materias con las vistas de la nueva version. Aparecieron algunas materias, pero no todas.

  3. Nosotros hicimos una modificacion en su momento que corrigio el problema. Si quieren se las paso. Pero queria ver si alguien ya lo habia arreglado y coincidia nuestra solucion.

Les dejo captura de las diferencias, pueden ver que las cantidades no coinciden.