Buenos Días
Siguiendo con la consulta de mi compañera, me gustaría obtener el id de actas de las equivalencias internas migradas, ya que este valor no se migro, y lo necesitamos para obtener otros datos como el folio, libro, etc. del origen de la equivalencia, agradecería mucho su ayuda. Saludos
Hola Yanina, fijate si con esta query se actualiza el dato del acta y nota (solo cuando el origen es examen, cursada o promocion)
BEGIN WORK;
UPDATE sga_equiv_internas
SET (id_acta,nota) = (-- Busco la nota en un acta para la misma fecha
SELECT d_origen.id_acta, d_origen.nota
FROM sga_alumnos as alu_origen
JOIN sga_actas_detalle as d_origen ON d_origen.alumno = alu_origen.alumno
JOIN sga_actas as a_origen ON a_origen.id_acta = d_origen.id_acta
WHERE alu_origen.persona = alu.persona
AND alu_origen.propuesta = sga_equiv_internas.propuesta -- Propuesta Origen
AND d_origen.fecha = sga_equiv_internas.fecha
AND a_origen.estado = 'C'
AND sga_equiv_internas.elemento =
(CASE
WHEN a_origen.origen IN ('R','P') THEN
(SELECT c.elemento FROM vw_comisiones as c WHERE c.comision = a_origen.comision)
WHEN a_origen.origen = 'E' THEN
(SELECT m.mesa_examen_elemento FROM vw_mesas_examen as m WHERE m.llamado_mesa = a_origen.llamado_mesa)
END)
ORDER BY CASE WHEN d_origen.nota IS NOT NULL THEN 1 ELSE 2 END
LIMIT 1)
FROM sga_equiv_internas as ei
JOIN sga_equiv_otorgada as eo ON eo.equivalencia = ei.equivalencia
JOIN sga_equiv_tramite as et ON et.equivalencia_tramite = eo.equivalencia_tramite
JOIN sga_alumnos as alu ON alu.alumno = et.alumno
WHERE ei.equivalencia_interna = sga_equiv_internas.equivalencia_interna
WHEN ei.id_acta IS NULL
AND ei.origen IN ('Cursada','Promocion','Examen') ;
-- Si esta ok: COMMIT WORK;
-- Si hubo error: ROLLBACK WORK;