si, me equivoque con el punto 1.
Esta es la salida que estoy teniendo:
Migrando la base de la versi▒n 3.15.0 hasta la versi▒n 3.16.2
Actualizando BD de negocios a version 3.15.1
Actualizando BD de negocios a version 3.16.0
Ejecutando Archivo: 001118.sql
. Ejecutando Archivo: 001119.sql
. Ejecutando Archivo: 001120.sql
. Ejecutando Archivo: 001121.sql
. Ejecutando Archivo: 001122.sql
. Ejecutando Archivo: 001123.sql
. Ejecutando Archivo: 001124.sql
. Ejecutando Archivo: 001125.sql
. Ejecutando Archivo: 001126.sql
. Ejecutando Archivo: 001127.sql
. Ejecutando Archivo: 001128.sql
. Ejecutando Archivo: 001129.sql
. Ejecutando Archivo: 001130.sql
. Ejecutando Archivo: 001131.sql
. Ejecutando Archivo: 001132.sql
. Ejecutando Archivo: 001133.sql
. Ejecutando Archivo: 001134.sql
. Ejecutando Archivo: 001135.sql
. Ejecutando Archivo: 001136.sql
ERROR ejecutando SQL:
[CODIGO]: 7
[SQLSTATE]: db_23505
[MENSAJE]: ERROR: duplicate key value violates unique constraint "pk_sga_requisitos_aplanado"
DETAIL: Key (requisito_accion, plan_version)=(74, 101) already exists.
CONTEXT: SQL statement "INSERT INTO sga_requisitos_aplanado (requisito_accion, plan_version)
SELECT a.requisito_accion, t.plan_version
FROM sga_requisitos_x_accion as a,
(SELECT c.plan_version
FROM sga_requisitos_x_accion as b
JOIN sga_requisitos_aplanado as c ON c.requisito_accion = b.requisito_accion
WHERE b.requisito = 58
AND b.grupo_requisito in (select grupo_requisito from sga_requisitos_grupos where accion = 2)
) as t
WHERE a.requisito = 99
AND a.grupo_requisito in (select grupo_requisito from sga_requisitos_grupos where accion = 2)"
PL/pgSQL function inline_code_block line 59 at SQL statement
[SQL EJECUTADA]: -- +++++++++++++++++++++++++++++++++++++++
-- Script de conversi▒n 001136.sql
-- +++++++++++++++++++++++++++++++++++++++
--BEGIN WORK;
DO $BODY$
DECLARE cant INTEGER;
BEGIN
SELECT count(*) INTO cant FROM sga_requisitos WHERE requisito = 98;
IF cant = 0 THEN
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- Tabla: sga_requisitos, sga_requisitos_validos
-- Versi▒n: 3.16.0
-- Control: Verificar si el alumno tiene las correlativas para aprobar en un examen regular
-- Usa la misma regla (308) del requisito nro 58 - "Correlativas de Aprobacion"
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
INSERT INTO sga_requisitos (requisito, requisito_tipo, nombre, requisito_subordinado_de, descripcion, regla)
VALUES (98, 5, 'Correlativas de Aprobaci▒n - Examen Regular', NULL, 'Tener las correlativas para aprobar una actividad. ', 308);
INSERT INTO sga_requisitos_validos (accion, requisito) VALUES (2, 98); -- Examenes
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- Tabla: sga_requisitos, sga_requisitos_validos
-- Versi▒n: 3.16.0
-- Control: Verificar si el alumno tiene las correlativas para aprobar en un examen libre
-- Usa la misma regla (308) del requisito nro 58 - "Correlativas de Aprobacion"
-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
INSERT INTO sga_requisitos (requisito, requisito_tipo, nombre, requisito_subordinado_de, descripcion, regla)
VALUES (99, 5, 'Correlativas de Aprobaci▒n - Examen Libre', NULL, 'Tener las correlativas para aprobar una actividad.', 308);
INSERT INTO sga_requisitos_validos (accion, requisito) VALUES (2, 99); -- Examenes
-- Inserto el requisito 98 en el punto de control 10
INSERT INTO sga_requisitos_x_punto_control (pto_control, requisito, orden) VALUES (10, 98, 1);
-- Reordeno los requisitos.
UPDATE sga_requisitos_x_punto_control SET orden = 2 WHERE pto_control = 10 AND requisito = 69;
UPDATE sga_requisitos_x_punto_control SET orden = 3 WHERE pto_control = 10 AND requisito = 74;
-- Inserto el requisito 99 en el punto de control 11
INSERT INTO sga_requisitos_x_punto_control (pto_control, requisito, orden) VALUES (11, 99, 1);
-- Reordeno los requisitos en cada punto de control
UPDATE sga_requisitos_x_punto_control SET orden = 2 WHERE pto_control = 11 AND requisito = 76;
-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- En la configuracion de requisitos x accion, cambio el requisito actual 58 por el 98
-- Para la configuraci▒n de requisitos de la accion 2-Examenes
-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- Copio la misma configuraci▒n del requisito 58 (ahora 98) en el requisito 99
INSERT INTO sga_requisitos_x_accion (grupo_requisito, tipo, operador_not, requisito)
SELECT grupo_requisito, tipo, operador_not, 99
FROM sga_requisitos_x_accion
WHERE requisito = 58
AND grupo_requisito in (select grupo_requisito from sga_requisitos_grupos where accion = 2);
-- Cargo el aplanado del requisito 99 copiandolo del requisito 58.
INSERT INTO sga_requisitos_aplanado (requisito_accion, plan_version)
SELECT a.requisito_accion, t.plan_version
FROM sga_requisitos_x_accion as a,
(SELECT c.plan_version
FROM sga_requisitos_x_accion as b
JOIN sga_requisitos_aplanado as c ON c.requisito_accion = b.requisito_accion
WHERE b.requisito = 58
AND b.grupo_requisito in (select grupo_requisito from sga_requisitos_grupos where accion = 2)
) as t
WHERE a.requisito = 99
AND a.grupo_requisito in (select grupo_requisito from sga_requisitos_grupos where accion = 2);
-- Cambio requisito 58 x 98
UPDATE sga_requisitos_x_accion
SET requisito = 98
WHERE requisito = 58
AND grupo_requisito in (select grupo_requisito from sga_requisitos_grupos where accion = 2);
-- Saca el requisito nro 58 de la accion nro 2 - Examenes
DELETE FROM sga_requisitos_validos WHERE accion = 5 AND requisito = 58;
-- Saco el requisito 58 - Correlativas de aprobacion del punto de control 17
DELETE FROM sga_requisitos_x_punto_control WHERE pto_control = 17 AND requisito = 58;
-- Cambio el orden de los controles en el punto de control 17 porque se sac▒ el requisito 58 que estaba al comienzo
UPDATE sga_requisitos_x_punto_control SET orden = orden - 1 WHERE pto_control = 17;
-- Finalizacion del script
END IF;
END $BODY$;
-- COMMIT WORK;
-- +++++++++++++++++++++++++++++++++++++++
-- Fin Script de conversi▒n 001136.sql
-- +++++++++++++++++++++++++++++++++++++++
Hubo errores en la migraci▒n.
___________________________________________________________________________________________________
TIEMPO: 0,383 segundos