Iris, las querys para contar las evaluaciones parciales de G2 y G3 son estas:
– G2
SELECT count(*) FROM mig._cnv_pk_atr_eval_parc;
– G3
SELECT count(*)
FROM sga_evaluaciones as e, sga_evaluaciones_tipos as t
WHERE t.evaluacion_tipo = e.evaluacion_tipo
AND t.automatica = ‘N’
AND t.aplica_a = ‘C’; – Evaluaciones parciales
Fijate si podes ver cuales son esas que no estan en G3. Debe ser evaluaciones que no estaban bien registradas en G2.
Cuando pueda veo el modelo de datos de G2 y armo la query para ver diferencias…
Hola
Si, si, las consultas para ver las cantidades las tengo. Pero no se cómo identificar los casos, ya que son 5851… y sólo 3 no pasaron… ni idea cómo identificarlos… Y quiero entender el motivo, para analizar los casos puntuales.
Gracias!!!
Corre la siguiente consulta, veamos si se recuperan esas 3 evaluaciones que faltan.
La primer consulta lo hace sobre el esquema mig sin join con tablas de migracion ni de G3.
La 2da query es la que se usa para cargar datos en la tabla de evaluaciones parciales (sga_evaluaciones).
SELECT
cron.comision,
cron.evaluacion,
evg2.tipo_evaluac_parc,
evg2.descripcion,
cron.fecha_hora::time,
date(cron.fecha_hora),
tev.tipo_evaluac_parc
FROM
mig.sga_cron_eval_parc as cron,
mig.sga_eval_parc as evg2,
mig.sga_atr_eval_parc as atr,
mig.sga_tipo_eval_parc as tev
WHERE
cron.evaluacion = evg2.evaluacion AND
atr.comision = cron.comision AND
atr.evaluacion = cron.evaluacion AND
tev.tipo_evaluac_parc = evg2.tipo_evaluac_parc
EXCEPT
SELECT
cron.comision,
cron.evaluacion,
evg2.tipo_evaluac_parc,
evg2.descripcion,
cron.fecha_hora::time,
date(cron.fecha_hora),
tev.tipo_evaluac_parc
FROM
mig._cnv_pk_atr_eval_parc as catr,
mig.sga_eval_parc as evg2,
mig._rel_esc_notas as men,
mig.sga_cron_eval_parc as cron,
mig.sga_atr_eval_parc as atr,
mig._cnv_pk_evaluaciones_tipos as cte,
mig.sga_tipo_eval_parc as tev,
mig._cnv_pk_comisiones as cc,
sga_comisiones,
vw_periodos_lectivos as pl
WHERE
evg2.evaluacion = catr.evaluacion_g2 AND
cron.comision = catr.comision AND
cron.evaluacion = catr.evaluacion_g2 AND
atr.comision = catr.comision AND
atr.evaluacion = catr.evaluacion_g2 AND
cte.tipo_evaluac_parc = evg2.tipo_evaluac_parc AND
tev.tipo_evaluac_parc = evg2.tipo_evaluac_parc AND
men.escala_original = atr.escala_notas AND
(men.tipo = 'R' or men.tipo = '' or men.tipo IS NULL) AND
cc.comision_g2 = atr.comision AND
sga_comisiones.comision = cc.comision AND
pl.periodo_lectivo = sga_comisiones.periodo_lectivo;
Hola
En esta nueva vuelta de prueba de migración de G2 a G3.20, vuelvo a encontrarme con el mismo error, hay 3 evaluaciones parciales que no pasan…
[tr]
[td]sga_evaluaciones [/td][td]Error: Cantidad de evaluaciones no coinciden…[/td][td] 5.853,00 [/td][td]5.850,00[/td]
[/tr]
SELECT count(*) --INTO cnt_evaluacion_g2 = 5853
FROM mig._cnv_pk_atr_eval_parc;
SELECT count(*) --INTO cnt_evaluacion_g3 = 5850
FROM sga_evaluaciones as e, sga_evaluaciones_tipos as t
WHERE t.evaluacion_tipo = e.evaluacion_tipo
AND t.automatica = 'N'
AND t.aplica_a = 'C'; -- Evaluaciones parciales
La consulta que sugerís corra para intentar recuperar esas 3 evaluaciones que faltan, no retorna nada.
Y si ejecuto los SELECT por separado, ambos retornan 5850 registros.
Cómo puedo hacer para identificar esas 3 evaluaciones que se están perdiendo?
Gracias!
SELECT count(*)
FROM mig.sga_eval_parc as evg2
JOIN mig.sga_cron_eval_parc as cron ON cron.evaluacion = evg2.evaluacion
JOIN mig.sga_atr_eval_parc as atr ON atr.comision = cron.comision AND atr.evaluacion = cron.evaluacion;
Envio el pos-control de evaluaciones parciales. Se cambió la query que cuenta evaluaciones parciales de la base de Guarani 2.
Si, se migraron bien. Estaba mal la query que contaba evaluaciones parciales de la base de Guarani 2.
Esa diferencia de 3 evaluaciones debe estar aca:
SELECT evaluacion FROM mig.sga_eval_parc
EXCEPT
SELECT evaluacion FROM mig.sga_atr_eval_parc
Esas evaluaciones no deben haber quedado asociadas con ninguna comision:
SELECT * from mig.sga_eval_parc where evaluacion in (......);
Si consultas las evaluaciones anteriores estas querys no deben retornar registros:
SELECT * from mig.sga_atr_eval_parc where evaluacion in (.........);
SELECT * from mig.sga_cron_eval_parc where evaluacion in (............);
SELECT * from mig.sga_eval_parc_alum where evaluacion in (...........);
SELECT evaluacion FROM mig.sga_eval_parc
EXCEPT
SELECT evaluacion FROM mig.sga_atr_eval_parc
No retorna nada…
No logro identificar cuales pueden ser la diferencia… Más que nada quiero quedarme tranquila de no estar perdiendo información.
Muchas gracias por tu paciencia…
Saludos
Asi es, podes borrarlas. Quedo mal la definición de esas 3 evaluaciones parciales en Guarani 2.
Fiajte que ninguna de las 3 tiene registrada la fecha (sga_cron_eval_parc) y donde se lo asocia con la comision, ni tampoco tiene alumnos.
Por eso esas evaluaciones no se pasan.