Migrar Calendario Academico a SIU 3.13 desde sistema externo

Hola

Tenemos esta situacion:
el siu 3.13 esta funcionando con la facultad de derecho y ahora queremos migrar el resto de las facultades
en el entorno de pruebas cuando queremos migrar el calendario académico nos da este error:

2017/06/26 12:01:34 - 03_migrar_comisiones - ERROR (version 7.1.0.0-12, build 1 from 2017-05-16 17.18.02 by buildguy) : Ocurrió un error al ejecutar esta entrada de trabajo:
2017/06/26 12:01:34 - 03_migrar_comisiones - Couldn’t execute SQL: SET search_path = negocio ;
2017/06/26 12:01:34 - 03_migrar_comisiones -
2017/06/26 12:01:34 - 03_migrar_comisiones - INSERT INTO sga_comisiones(comision, nombre, periodo_lectivo, elemento, turno, cupo, ubicacion, observaciones)
2017/06/26 12:01:34 - 03_migrar_comisiones - SELECT com.comision, com.nombre, per.periodo_lectivo, elem.elemento, com.turno, com.cupo, com.ubicacion,
2017/06/26 12:01:34 - 03_migrar_comisiones -
2017/06/26 12:01:34 - 03_migrar_comisiones - com.observaciones
2017/06/26 12:01:34 - 03_migrar_comisiones - FROM ext.mig_comisiones as com,
2017/06/26 12:01:34 - 03_migrar_comisiones - ext.mig_periodos_lectivos as per,
2017/06/26 12:01:34 - 03_migrar_comisiones - sga_elementos as elem
2017/06/26 12:01:34 - 03_migrar_comisiones - WHERE com.anio_academico = per.anio_academico
2017/06/26 12:01:34 - 03_migrar_comisiones - AND com.periodo_lectivo_nombre = per.nombre
2017/06/26 12:01:34 - 03_migrar_comisiones - AND com.actividad_codigo = elem.codigo;
2017/06/26 12:01:34 - 03_migrar_comisiones -
2017/06/26 12:01:34 - 03_migrar_comisiones - SELECT setval(‘sga_comisiones_seq’,(SELECT MAX(comision) FROM sga_comisiones));
2017/06/26 12:01:34 - 03_migrar_comisiones -
2017/06/26 12:01:34 - 03_migrar_comisiones -
2017/06/26 12:01:34 - 03_migrar_comisiones - INSERT INTO sga_comisiones_instancias (comision, instancia, escala_nota)
2017/06/26 12:01:34 - 03_migrar_comisiones - SELECT comision, 1, escala_nota_regular
2017/06/26 12:01:34 - 03_migrar_comisiones - FROM ext.mig_comisiones
2017/06/26 12:01:34 - 03_migrar_comisiones - WHERE instancia_regular = ‘S’;
2017/06/26 12:01:34 - 03_migrar_comisiones -
2017/06/26 12:01:34 - 03_migrar_comisiones - INSERT INTO sga_comisiones_instancias (comision, instancia, escala_nota)
2017/06/26 12:01:34 - 03_migrar_comisiones - SELECT comision, 2, escala_nota_promocion
2017/06/26 12:01:34 - 03_migrar_comisiones - FROM ext.mig_comisiones
2017/06/26 12:01:34 - 03_migrar_comisiones - WHERE instancia_promocion = ‘S’;
2017/06/26 12:01:34 - 03_migrar_comisiones -
2017/06/26 12:01:34 - 03_migrar_comisiones -
2017/06/26 12:01:34 - 03_migrar_comisiones - INSERT INTO sga_comisiones_propuestas (comision, propuesta, plan)
2017/06/26 12:01:34 - 03_migrar_comisiones - SELECT DISTINCT c.comision, v.propuesta, v.plan
2017/06/26 12:01:34 - 03_migrar_comisiones - FROM ext.mig_comisiones,
2017/06/26 12:01:34 - 03_migrar_comisiones - sga_comisiones as c,
2017/06/26 12:01:34 - 03_migrar_comisiones - vw_elementos_plan as v
2017/06/26 12:01:34 - 03_migrar_comisiones - WHERE ext.mig_comisiones.comision = c.comision
2017/06/26 12:01:34 - 03_migrar_comisiones - AND v.elemento = c.elemento
2017/06/26 12:01:34 - 03_migrar_comisiones - AND v.plan_estado IN (‘V’,‘A’);
2017/06/26 12:01:34 - 03_migrar_comisiones -
2017/06/26 12:01:34 - 03_migrar_comisiones -
2017/06/26 12:01:34 - 03_migrar_comisiones - INSERT INTO sga_comisiones_modalidad(comision, modalidad)
2017/06/26 12:01:34 - 03_migrar_comisiones - SELECT DISTINCT com.comision, ‘P’
2017/06/26 12:01:34 - 03_migrar_comisiones - FROM ext.mig_comisiones com,
2017/06/26 12:01:34 - 03_migrar_comisiones - sga_comisiones as c
2017/06/26 12:01:34 - 03_migrar_comisiones - WHERE com.comision = c.comision;
2017/06/26 12:01:34 - 03_migrar_comisiones -
2017/06/26 12:01:34 - 03_migrar_comisiones - ERROR: inserción o actualización en la tabla «sga_comisiones_instancias» viola la llave foránea «fk_sga_comisiones_instancias_sga_comisiones»
Detail: La llave (comision)=(1323) no está presente en la tabla «sga_comisiones».

las variables de entorno estan bien seteadas y la prueba de conexion a la bbdd funciona

Muchas Gracias

El error que da es que por algun motivo la comision no se registró en la base (tabla sga_comisiones) pero al queres registrar las instancias para esa comision es donde da el error porque la comision no existe.

Fijate con esta consulta cual es la comision que devuelve.


  SELECT com.comision, com.nombre
    FROM ext.mig_comisiones as com
EXCEPT
  SELECT com.comision, com.nombre
    FROM ext.mig_comisiones as com,
   		 ext.mig_periodos_lectivos as per,
   		 sga_elementos as elem	
    WHERE com.anio_academico = per.anio_academico
    AND   com.periodo_lectivo_nombre = per.nombre
    AND   com.actividad_codigo = elem.codigo ;

Esa o esas comisiones son las que estan provocando el problema. Se da porque debe tener registrado en la tabla mig_comisiones un periodo lectivo que no existe en la tabla ext.mig_periodos_lectivos o una actividad (campo actividad_codigo) que no existe en la tabla de actividades (sga_elementos.codigo).

Revisalo y nos avisas cual es el problema.

Saludos.

Hola
nos falto completar un par de tablas en a bbdd de migracion,
completando eso se migro sin problemas
luego indico las tablas

saludos

ricardoude, podrias indicar las tablas que modificaste? Gracias.

Detectamos el mismo error según reportamos en http://foro.comunidad.siu.edu.ar/index.php?topic=16957.0
En nuestro caso se debe a que al insertar las comisiones en sga_comisiones primero se filtran las mismas con los periodos lectivos de la tabla ext.mig_periodos_lectivos pero no con los periodos lectivos de Guaraní (sga_periodos_lectivos).

En caso de que alguna comisión a migrar corresponda a un periodo lectivo que ya existe en Guaraní, no se creará en sga_comisiones. Sin embargo, los scripts de migración trataran de crear la instancia de estas comisiones porque en la consulta que crea las instancias no se filtra por periodo lectivo.

Federico, esto que comentan es porque solo estan migrando comisiones y no períodos lectivos porque estos ya fueron creados por el sistema o migrados anteriormente?
Porque los scripts como estan es para migrar el calendario académico completo que implica los períodos lectivos y las comisiones.

Si necesitaran tener un script que solo migre comisiones, podria modificarse el script que existe actualmente.
Ingresen una solicitud y les enviamos el script de migracion 03_migrar_comisiones.sql con esta nueva opción asi pueden migrar comision solamente o comisiones junto con los períodos lectivos y años académicos.

Claro:

En nuestro caso migramos comisiones de dos tipos:

1 - Con periodo lectivo migrado en el mismo trabajo de Spoon
2 - Con periodo lectivo previamente creado por Gestión

Nos fallaba el segundo caso cuando la comisión no estaba en la migración (ext.mig_comisiones)

En esta otra entrada puse como modificamos la consulta para migrar además las comisiones con periodos lectivos previamente creados:

http://foro.comunidad.siu.edu.ar/index.php?topic=16957.0

Avisame si hace falta ingresar una solicitud.

Gracias y saludos

Respondido en http://foro.comunidad.siu.edu.ar/index.php?topic=16957.0