Cambio de pertenencia año academico/turno de examen

Hola comunidad, en el comienzo del proceso de migración de datos se cometió un error al momento de definir los turnos de examen y los turnos de febrero-marzo quedaron asociados al año calendario en vez de al año académico correspondiente. Por consiguiente el turno de examen febrero-marzo de 2010 quedó asociado al año calendario 2010, siendo que debería ser el turno febrero-marzo de 2010 correspondiente al año calendario 2011.

Las preguntas serían: ¿Es posible corregir esto? ¿Cómo? Obviamente ya existen actas con este problema.

Pensamos que el paso lógico sería corregir este error en cuantas tablas figure el error, el tema es que desconocemos cuales son las tablas que debemos modificar o si existe una forma menos artesanal de realizarlo.

Estamos trabajando en una máquina virtual con un servidor de pruebas(Podemos romper tranquilos), como para escribir un script y correrlo en el de producción.

Saludos.
Gracias.-

Yo pienso que si es posible, pero hay que hacerlo con mucho cuidado. Hay que hacerlo con un script y dentro de una transacción.

Hay que identificar todas las tablas donde está el campo año_academico asociado al turno_examen.

En modo rápido yo ya vi 3: sga_turnos_examen, sga_actas_examen, sga_mesas_examen y hay varias mas de seguro.

Aparte, para modificarlo hay que desactivar los triggers y diferir la aplicación de constraints, ya que el año académico es parte de la clave principal de esas tablas.

Y todo esto es si hablamos solo de actas de examen. Si son cursadas hay que ver si tuvo impacto lo mismo que con las equivalencias, aunque pienso que no.

Quizás identificando todas las tablas donde esté el turno de examen, ahí mismo estará el año académico.

Saludos

Gustavo

Hola

Te paso una serie de consultas.
La primera es válida, el resto lo tenes que ir armando de acuerdo a lo que encuentres.

Emilio


cambio_febrero_marzo.sql (3.22 KB)

Hola, debería ser algo así:

iniciar una transacción
inhabilitar las restricciones: SET CONSTRAINTS ‘fk_…’ DISABLED; SET triggers tu_… DISABLED;
modificar las tablas:
sga_listado_examen
log_listado_examen
sga_mesas_carrera
sga_exep_insc_llam
log_exep_insc_llam
sga_fec_insc_llam
log_fec_insc_llam
sga_insc_exa_bajas
log_insc_exa_bajas
sga_llamados
log_llamados
sga_llamados_mesa
log_llamados_mesa
sga_turnos_examen
log_turnos_examen
sga_docentes_llama
log_docentes_llama
sga_rel_mesa_comis
log_rel_mesa_comis
sga_actas_examen
log_actas_examen
sga_excep_cont_exa
log_excep_cont_exa
sga_insc_examen
log_insc_examen
gda_cursos_mesa
mig_examenes
sga_mesas_examen
log_mesas_examen
sga_insc_exa_recha

habilitar restricciones y triggers
SET CONSTRAINTS ‘fk_…’ ENABLED; SET triggers tu_… ENABLED;

Cerrar la transacción.

Tener cuidado de que la base no sea accedida en esos momentos.

Justamente tengo este error en una mesa febrero-marzo, podrán pasarme el script que hicieron?

Muchas gracias.

Estimados comparto script funcionando, tuve el mismo problema.

Saludos


cambio_febrero_marzo.sql (4.7 KB)