Professional Documents
Culture Documents
Arreglar Historicos
Arreglar Historicos
PASO 3
Insert into _g_student_history
select distinct on (gb.cicle_id,gb.student_id,gb.class_definition_id)
short_unique_id(),
'C',
gb.student_id,
gb.group_id,
cd.id,
gb.class_instance_id,
ci.group_id,
cd.name,
gb.cicle_id,
cic.name,
--array_agg(gb.grade) over (partition by
gb.cicle_id,gb.student_id,gb.class_definition_id),
true as approved,
cd.credits,
now() as date,
'JB021221'
from _gb_grades gb
join _g_class_definitions cd on cd.id = gb.class_definition_id
join _g_class_instances ci on ci.id = gb.class_instance_id
join _g_cicles cic on cic.id = gb.cicle_id
left join _g_student_history sh
on sh.class_definition_id = gb.class_definition_id and gb.cicle_id = sh.cicle_id and
gb.student_id = sh.student_id
where sh.id is null
and gb.cicle_id='UAMZWBZI'
and gb.grade >= ‘6’;
PASO 4
Insert into _g_student_history
select distinct on (gb.cicle_id,gb.student_id,gb.class_definition_id)
short_unique_id(),
'C',
gb.student_id,
gb.group_id,
cd.id,
gb.class_instance_id,
ci.group_id,
cd.name,
gb.cicle_id,
cic.name,
--array_agg(gb.grade) over (partition by
gb.cicle_id,gb.student_id,gb.class_definition_id),
false as approved,
cd.credits,
now() as date,
'JB021221'
from _gb_grades gb
join _g_class_definitions cd on cd.id = gb.class_definition_id
join _g_class_instances ci on ci.id = gb.class_instance_id
join _g_cicles cic on cic.id = gb.cicle_id
left join _g_student_history sh
on sh.class_definition_id = gb.class_definition_id and gb.cicle_id = sh.cicle_id and
gb.student_id = sh.student_id
where sh.id is null
and gb.cicle_id='UAMZWBZI'
and gb.grade < '6';
PASO 5
UPDATE _gb_grades gb
SET class_instance_id = gci.id
FROM _g_class_instances gci
WHERE gb.group_id = gci.group_id
AND gb.class_definition_id = gci.class_definition_id
and gb.cicle_id='HBLRRKPD'
and gb.period_id ='HPJMOBHU'
and gb.student_id IN (SELECT student_id
FROM _gb_grades gb
join _g_students gs on gs.id = gb.student_id
WHERE gs.group_id != gb.group_id
AND gb.cicle_id ='HBLRRKPD')
PASO 6
UPDATE _gb_grades gb
set group_id = gs.group_id
FROM _g_students gs
WHERE gs.id = gb.student_id
and gb.cicle_id='HBLRRKPD'
and gb.period_id IN ('HPJMOBHU','KTAPQJA5')
and gb.student_id IN (SELECT student_id
FROM _gb_grades gb
join _g_students gs on gs.id = gb.student_id
WHERE gs.group_id != gb.group_id
AND gb.cicle_id ='HBLRRKPD')
_________________________________________
SELECT
gb.id,
gb.student_id,
gs.group_id,
gb.group_id,
cd.id,
gb.class_instance_id,
gb.cicle_id,
gb.period_id,
gb.teacher_id
gs.name as Nombre,
gs.lastname1 as apellidop,
gs.lastname1 as apellidom,
cd.name as clase,
gp.name as periodo,
vs.group_name grupo_estudiante,
gg.name grupo_calificacion,
gb.grade as calificacion
FROM _gb_grades gb
join _g_class_definitions cd on cd.id = gb.class_definition_id
join _g_class_instances ci on ci.id = gb.class_instance_id
join _g_cicles cic on cic.id = gb.cicle_id
join _g_students gs on gs.id = gb.student_id
join _g_periods gp on gp.id = gb.period_id
join _g_groups gg on gg.id = gb.group_id
join _v_students vs on vs.id = gs.id
WHERE gb.period_id IN ('HPJMOBHU')
and vs.group_name != gg.name
and gb.student_id IN (SELECT DISTINCT student_id
FROM _gb_grades gb
join _g_students gs on gs.id = gb.student_id
WHERE gs.group_id != gb.group_id
AND gb.cicle_id ='HBLRRKPD'
AND period_id ='HPJMOBHU'))
ORDER BY gb.student_id, gb.class_definition_id,
gb.class_instance_id, periodo
SELECT
gb.id,
gb.student_id,
gs.group_id,
gb.group_id,
cd.id,
gb.class_instance_id,
gb.cicle_id,
gb.period_id,
gb.teacher_id,
gs.name as Nombre,
gs.lastname1 as apellidop,
gs.lastname1 as apellidom,
cd.name as clase,
gp.name as periodo,
vs.group_name grupo_estudiante,
gg.name grupo_calificacion,
gb.grade as calificacion
FROM _gb_grades gb
join _g_class_definitions cd on cd.id = gb.class_definition_id
join _g_class_instances ci on ci.id = gb.class_instance_id
join _g_cicles cic on cic.id = gb.cicle_id
join _g_students gs on gs.id = gb.student_id
join _g_periods gp on gp.id = gb.period_id
join _g_groups gg on gg.id = gb.group_id
join _v_students vs on vs.id = gs.id
WHERE gb.period_id IN ('HPJMOBHU')
and vs.group_name != gg.name
and gb.student_id IN (SELECT DISTINCT student_id
FROM _gb_grades gb
join _g_students gs on gs.id = gb.student_id
WHERE gs.group_id != gb.group_id
AND gb.cicle_id ='HBLRRKPD'
AND period_id ='HPJMOBHU')
ORDER BY gb.student_id, gb.class_definition_id,
gb.class_instance_id, periodo