Códigos de carreras que ya existen en G3.

Buen día,

Actualmente nos encontramos en el proceso de migrar de g2 a g3. Ya contamos con una facultad migrada totalmente y actualmente nos faltan 6 mas.
El problema que tengo es que al intentar unificar la base de producción con una nueva base de g2 obtengo el siguiente error

Error: Hay codigos de carreras que ya existen en G3. El código de propuesta en G3 debe ser único

En este caso existe una propuesta que es común a todas las facultades “SISTEMA DE ACCESO COMUN” con el codigo SAC, por lo cual este mismo error lo vamos a tener en todas las migraciones.
Mi duda es si existe alguna forma de indicar en la migración de que esa propuesta ya existe o si debemos cambiar en las base de g2 los códigos y después pasar a todas las personas a la misma propuesta… cual seria la mejor aproximación en esta situación ?
Por lo que entiendo si es un error no se puede avanzar en la migración hasta corregirlo, asi que supongo que con la opción 1 menciono no seria viable en este caso.
Espero su respuesta para ver como podemos seguir

Muchas gracias!

Si, se puede unificar lsa carreras de las proximas bases a migrar en una propuesta que ya existe en la base de Guarani 3.
Esto se indica en la tabla mig.cnv_pk_propuestas y se hace esa relacion en forma automática en el módulo 05_Tablas_Comunes, en el script 01_tablas_conversion.sql

Quizás el mensaje del pre-control debiera decir “Advertencia” en vez de “Error”.

Fijate que en esta tabla debió quedarte:

Tabla: mig._cnv_pk_propuestas
propuesta = ID de la propuesta que Existe en Guarani 3.
existe = 1,
migrar = 0,
observaciones = Existe una propuesta en G3 con el mismo nombre que la carrera de G2

Esto significa, que la carrera no se migra pero si sus planes de estudios y van a quedar bajo la propuesta con el ID de mig._cnv_pk_propuestas.propuesta
Podes verificar si esa propuesta de G3 se corresponde con la carrera de G2 que estas por migrar.

Foro relacionado con este tema: https://foro.comunidad.siu.edu.ar/index.php?topic=18290.msg102643

Hola Alejandro, muchas gracias por tu respuesta.
En nuestro caso no es el problema el nombre sino el código de la propuesta, con lo cual la tabla mig._cnv_pk_propuestas no queda como mencionas. Adjunto imagen
Al intentar migrar de todas formas me da un error de que el código ya existe (como ya lo manifestaron los pre controles).
Intente hacer el cambio a mano indicando que la propuesta ya existe y asignando el código de la carrera existe en la tabla mig._cnv_pk_propuestas, con lo cual pasó esa parte de la migración pero ahora me tira un error en 05_sga_planes_certificados. Adjunto imagen

Debería indicar algo mas en la migración ? o es algún cambio que debemos hacer en g2 ? muchas gracias!


guarani1.png

guarani1.png

guarani 3.png

guarani 3.png

guarani4.png

guarani4.png

El error indica que no existe el certificado (titulo) nro 73

Que devuelven estas consultas:

SELECT * FROM mig._cnv_pk_certificados WHERE certificado = 73;
SELECT * FROM sga_certificados WHERE certificado = 73;

Ese título se debió registrar en la tabla sga_certificados en el script 03_sga_certificados.sql del módulo 25_Propuestas

Pase los resultado a JSON para que sea mas facil de leer
La primer consulta devuelve

{
    "certificado": 73,
    "unidad_academica": "FCEQN",
    "titulo": "SAC01",
    "migrar": 0,
    "existe": 1,
    "observaciones": "Existe un certificado en G3 con el mismo nombre que el titulo de G2",
    "id_nuevo": 73,
    "existe_mismo_codigo": 1,
    "codigo_nuevo": null
  }

La segunda consulta no tuvo resultados

"unidad_academica": "FCEQN", "titulo": "SAC01", "migrar": 0, "existe": 1, "observaciones": "Existe un certificado en G3 con el mismo nombre que el titulo de G2",
Tenes que resolver que hacer con el titulo [b]SAC01[/b], por lo que indica el mensaje ya existe un titulo registrado en G3 que tiene el mismo nombre que el titulo SAC01 de G2:

Por favor envia lo que devuelven las siguientes consultas. Fijate si el titulo SAC01 se corresponde con alguno de los de G3 devuelvos en la 2da o 3er consulta:

SELECT titulo, nombre FROM mig.sga_titulos WHERE unidad_academica = 'FCEQN' and titulo = 'SAC01';

SELECT certificado, titulo, nombre FROM sga_certificados
WHERE nombre IN (SELECT nombre FROM mig.sga_titulos WHERE unidad_academica = ‘FCEQN’ and titulo = ‘SAC01’);

SELECT certificado, titulo, nombre FROM sga_certificados
WHERE codigo IN (SELECT titulo FROM mig.sga_titulos WHERE unidad_academica = ‘FCEQN’ and titulo = ‘SAC01’);

Hola Alejandro te envio las salidas, de la segunda y la tercera cambie la columna titulo por codigo ya que la columna titulo no existe en g3

Consulta 1 :

 {
    "titulo": "SAC01",
    "nombre": "Sistema de Acceso Común"
  }

Consulta 2 y 3 devuelven lo mismo:

{
    "certificado": 30,
    "nombre": "Sistema de Acceso Común",
    "codigo": "SAC01"
}

Se puede unificar el titulo de g2 con el existente en g3 ? por lo que me comentaron en la universidad es la misma propuesta para todas las facultades.

Se puede unificar el titulo de g2 con el existente en g3 ? por lo que me comentaron en la universidad es la misma propuesta para todas las facultades.
Revisando el script que carga datos en la tabla mig._cnv_pk_certificados, veo que no se setea el id de certificado con el id de Guarani 3. Esto es para que uds puedan revisar y efectivamente indicar si se trata del mismo titulo o no. En el caso como este que es el mismo titulo correr la sentencia siguiente:
UPDATE mig._cnv_pk_certificados SET certificado = 30, id_nuevo = 73 WHERE certificado = 73;

Cuando migraron el módulo 05_Tablas_comunes, en los controles pos migracion se les advirtió de esta situación con este mensaje:

Advertencia: Hay certificados que ya existen en G3,verificar y decidir que certificados migrar y cuales no (tabla mig._cnv_pk_certificados)…’

La idea era que revisaran ese listado de titulos de la tabla mig._cnv_pk_certificados e indiquen si se correspondia con un titulo que ya existe en G3 o no. En caso de ser el mismo, actualizar el campo “certificado” con el valor de G3 (con la sentencia anterior), y de no ser el mismo, cambiar el valor migrar de 0 a 1 (para que sea migrado) y codigo_nuevo con el nuevo codigo para que no se repita con el que existe en G3 (en este caso el codigo SAC01).

2

Perfecto! ahi pude avanzar con esa parte indicando que es el mismo certificado. Estaba revisando el script de 01_tablas_conversion y efectivamente no setea el id de certificado existente en g3 en caso de que sean iguales.
Tal vez esto se debería marcar como error en los pre controles ya que si uno ignora esta advertencia no se puede avanzar en la mig.
Pero en fin ahora puede entenderlo mejor

Muchísimas gracias por tu tiempo !

Si, quizas lo que este mal es que se setee migrar = 0, lo que implica que no se migre ese titulo en los modulos posteriores y luego llegas al error que te dió. Lo vamos a cambiar.

Esta bien la advertencia, porque tal vez puede ser que no se trate del mismo titulo y tienen codigos iguales.

Saludos!