Tenemos un plan de estudios, el cual se cargó con una materia genérica que no tenía optativas.
Se lo activó de esa manera.
Luego agregamos las optativas y las aplicamos a los planes.
Cuando quisimos darle una equivalencia a un alumno, no aparece la materia.
En el reporte de planes de estudio, en materias genéricas tampoco aparecen.
Hay algun problema conocído con esta forma de trabajo?
O que puede estar pasando?
Ningún error conocido.
Si editás la materia genérica desde “PROPUESTAS FORMATIVAS » ACTIVIDADES » ADMINISTRAR ACTIVIDADES GENÉRICAS” ves todas sus optativas en la solapa “Actividades”? En la solapa “Planes de Estudio” de la misma operación ves el plan en cuestión?
Y si editás el plan desde “PROPUESTAS FORMATIVAS » PLANES DE ESTUDIO » ADMINISTRAR PLANES DE ESTUDIO”?
Entonces quedó incompleta la asociación de las optativas a la materia genérica en el plan-versión 1_4. Por favor, adjuntá el resultado de ejecutar la siguiente consulta SQL:
SELECT *
FROM sga_elementos_comp
WHERE elemento_padre IN (SELECT elemento_revision FROM sga_elementos_plan WHERE plan_version = <ID del plan-versión>) AND
elemento_hijo IN ( SELECT elemento_revision FROM get_plan_contenido(<ID del plan-versión>)
EXCEPT
SELECT elemento_revision FROM sga_elementos_plan WHERE plan_version = <ID del plan versión>);
Reemplazando los tags “<ID del plan versión>” por el identificador del plan-versión 1_4.
select * from sga_planes_versiones where plan = 195 order by plan_version desc
703 195 "1_4" "2006-4"
702 195 "1_3" "2006-3"
version 1_4 (no aparecen en el plan)
SELECT *
FROM sga_elementos_comp
WHERE elemento_padre IN (SELECT elemento_revision FROM sga_elementos_plan WHERE plan_version = 703) AND
elemento_hijo IN ( SELECT elemento_revision FROM get_plan_contenido(703)
EXCEPT
SELECT elemento_revision FROM sga_elementos_plan WHERE plan_version = 703);
SELECT *
FROM sga_elementos_comp
WHERE elemento_padre IN (SELECT elemento_revision FROM sga_elementos_plan WHERE plan_version = 702) AND
elemento_hijo IN ( SELECT elemento_revision FROM get_plan_contenido(702)
EXCEPT
SELECT elemento_revision FROM sga_elementos_plan WHERE plan_version = 702);
no devuelve nada
puede ser que el problema se haya generado por versionar el plan (1_4) sin haber asignado las optativas a la version (1_3), previamente?
Las tres optativas forman parte de la genérica (sga_elementos_comp.elemento_hijo) pero no están en el plan-versión 1_4 (sga_elementos_plan). Lo que no se es por qué habrá quedado mal esa asociación…
Te adjunto un script para agregar los registros faltantes en ‘sga_elementos_plan’. Tené en cuenta que hace los INSERTs necesarios en ‘sga_elementos_plan’ y ‘sga_elementos_plan_modalidad’ tomando los valores por defecto: los datos del elemento en ‘sga_elementos_atrib’ y la modalidad “Presencial”.
Luego de ejecutarlo por favor ingresá a la operación “PROPUESTAS FORMATIVAS » PLANES DE ESTUDIO » ADMINISTRAR PLANES DE ESTUDIO” y verificá que el plan-versión haya quedado bien definido.
Viendo los logs esto ocurrio ayer en mi maquina de desarrollo con lo cual intenteré reproducir la situacion.
Ademas el problema debería estar en el log que te mandé.
[quote]Las tres optativas forman parte de la genérica (sga_elementos_comp.elemento_hijo) pero no están en el plan-versión 1_4 (sga_elementos_plan). Lo que no se es por qué habrá quedado mal esa asociación…[/quote
Lo que necesites, está disponible.
Veo en los logs que enviaste el uso de la operación “PROPUESTAS FORMATIVAS » ACTIVIDADES » AGREGAR OPTATIVAS A UNA ACTIVIDAD GENÉRICA” pero ningún error ni nada que parezca “sospechoso”. Vos podés volver a reproducirlo? Si es así nos sería útil el caso!
puede ser que el problema se haya generado por versionar el plan (1_4) sin haber asignado las optativas a la version (1_3), previamente?
Verificá lo siguiente
Cuando das de alta una optativa en una generica se graba en sga_elementos_plan_aux. (ademas de elementos_comp_aux)
Aparentemente, cuando se versiona, no se copian los registros de la version vieja a la nueva en sga_elementos_plan_aux.
Pero si se copia la genérica.
Al intentar asignar las optativas a la genérica, una de las cosas que hace la función es pasar sga_elementos_plan_aux a sga_elementos_plan.
Pero la version nueva del plan no la tiene y se produce el fallo que vimos.
Restauré la base de datos de un backup donde estaba “el problema”
Copie los registros existentes en sga_elementos_plan_aux para la version vieja a la version nueva.
Luego aplique la generica a los planes y funcionó correctamente.
El problema, aparentemente, está en el versionado del plan.