Tarkistuksen tarkoitus: Lehtitasolta (Lehti_laajuus_op) tulisi olla sama määrä opintopisteitä kuin päätason/kokonaisuuden/opintojaksosuorituksen laajuus (Kokonaisuus_laajuus_op).
Suoritukset huomioitu tarkistuksessa kokonaisuuden suorituspäivämäärän mukaan >1.1.2010 alkaen, ei sitä vanhempia suorituksia.
Tarkistukset_Lehtitaso_KK.csv | Kuvaus | Esim. data |
|
---|
OpintosuoritusAvain | Kokonaisuuden opintosuoritusavain | 11223344 |
|
Kokonaisuus_laajuus_op | Kokonaisuuden opintopiste laajuus | 15 |
|
Lehti_laajuus_op | Summa opintopisteitä lehtitasolta | 13 | Tässä 15 - 13 = 2 kokonaisuudesta puuttuu 2 op |
Opintosuoritus_laji | Opintosuorituslaji (1=tutkinto, 2=muu) | 2 |
|
KK_lyhenne | Korkeakoulun Virtanimilyhenne | KK |
|
Suorituspaivamaara | Kokonaisuuden suorituspäivämäärä | 2021-03-31 |
|
OpiskelijaAvain | Suorittajan Virta OpiskelijaAvain | 12345 |
|
OpiskeluoikeusAvain | Suorittajan Virta OpiskeluoikeusAvain (tyhjä jos suoritus ei ole kytketty opiskeluoikeuteen) | 45678 |
|
|
|
|
|
Tarkistukset_Lehtitaso_KK.csv löytyy korkeakoulun (KK) SFTP-hakemiston juuressa mikäli puutteita on.
Mikäli tiedostoa ei ole, puutteita ei ole. Tiedosto poistuu kun puutteita ei enään ole. Uusi tiedosto muodostetaan joka yö klo 01:00 jälkeen.
-- Poikkeamat lehtitason ja kokoavan suorituksen laajuustiedoissa
-- Suoritukset joita ei haluta:
-- Kaikki paitsi Laji 4 (= oppilaitoksen sisäinen)
create table ##__tmp_os_lehti (
osid int
);
insert into ##__tmp_os_lehti (osid)
select id from virta.dbo.Opintosuoritus where Opintosuorituksen_lajiID not in (1,2,3);
--
-- Tuhotaan raportointitaulu
--
delete from dbo.lehtitaso;
--
-- Lasketaan lehtitasojen summa
--
insert into dbo.lehtitaso
(
id,
laajuus,
lehti_laajuus,
suoritus_tyyppi,
db,
suoritus_avain,
suorituspaivamaara,
opiskelijaavain,
OpiskeluoikeusAvain
)
select DISTINCT os.id, os.laajuus, x.lehti_laajuus, osl.koodi as suoritus_tyyppi, os.db, os.avain as suoritus_avain, os.Suorituspaivamaara
, op.Avain as OpiskelijaAvain
, OO.Avain AS OpiskeluoikeusAvain
from virta.dbo.opintosuoritus os
inner join (select opintosuoritusid, sum(laajuus) as lehti_laajuus from virta.dbo.Op_suor_sisaltyvyys
where not exists (select 1 from ##__tmp_os_lehti where osid = OpintosuoritusID2) group by OpintosuoritusID) as x on os.id = x.OpintosuoritusID
inner join virta.dbo.Opintosuorituksen_laji as osl on os.Opintosuorituksen_lajiID = osl.id
left join virta.dbo.opiskelija as op on os.OpiskelijaID = op.id
left join virta.dbo.Opiskeluoikeus as OO ON OS.OpiskeluoikeusID = OO.id
where os.laajuus != x.lehti_laajuus
and os.Suorituspaivamaara > '2010-01-01' -- Ei 2010 vanhempia
--
-- Pudotetaan ##temppi taulu
--
drop table ##__tmp_os_lehti;