Tilastokeskuksen tutkintotiedonkeruu ammattikorkeakoulut

Samankaltaiset tiedostot
Tilastokeskuksen tutkintotiedonkeruu ammattikorkeakoulut

Opiskeluoikeuksien maaran tiedonkeruu

Tilastokeskuksen opiskelijatiedonkeruu ammattikorkeakoulut

Tilastokeskuksen tutkintotiedonkeruu yliopistot

Virta_Latausraportti - Tarkistukset

Tilastokeskuksen opiskelijatiedonkeruu yliopistot

55 op laskennan poimintakuvaus

Nykyiset tiedonkeruut tietovarannosta

VIRTA-tiedon laadun tukeminen

Opintopistetiedonkeruu

Tilastokeskuksen opiskelija- ja tutkintotiedonkeruut. Anna Loukkola Korkeakoulujen KOTA seminaari

KOTA-seminaari, Helsinki 2018 VIRTA-OTP Tiedonkeruut Tavoiteajassa tutkinnon suorittaneet

Korkeakoulujen KOTA-seminaari

YO 3.2. Opintopistetiedonkeruu 2015

Korkeakoulujen KOTA-seminaari

Kirje Suoritetut opettajan tutkinnot ja opiskelu tavoitteena opettajan tutkinto

KOTA-AMKOTA -seminaari

Opettajatiedonkeruun toteutus

Virta-tietovarannosta saatavien tietojen tiedosto- ja tietuekuvaus alkaen

Tilastokeskuksen opiskelija- ja tutkintotiedonkeruut. Jukka Jalolahti Korkeakoulujen KOTA seminaari

KOTA-AMKOTA -seminaari

AMK 3.2. Opintopistetiedonkeruu 2015

Korkeakoulujen KOTA-seminaari, Jyväskylä

SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet

Koulutus- ja opetusyhteistyö ja VIRTA-tiedot

Opiskeluoikeudet. Kaaviokuva

Tilastokeskuksen korkeakoulutilastojen opiskelija- ja tutkintotiedonkeruut. Jukka Jalolahti Korkeakoulujen KOTA seminaari 28.8.

Insert lauseella on kaksi muotoa: insert into taulu [(sarakenimet)] values (arvot)

Opettajaksi tai varhaiskasvatuksen ammattiin ulkomaisten opintojen perusteella Maisa Montonen, opetusneuvos

Näkökulmia Diploma Supplementiin /Päivi Aho

HYVÄKSILUETTUJEN SUORITUSTEN REKISTERÖIMINEN

TIEDONHALLINTA - SYKSY Luento 11. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

Opintosuoritukset. Kaaviokuva

HYVÄKSILUKEMISEN TEKEMINEN ILMAN ENNAKKOPÄÄTÖSTÄ

KOTA-AMKOTA-seminaari

HAAGA-HELIA Heti-09 1 (12) ICT05 Tiedonhallinta ja Tietokannat O.Virkki Näkymät

KOSKI - Opintosuoritukset ja opiskeluoikeudet kootusti valtakunnalliseen palveluun /08/2018 Opetushallitus 2

Mikkelin ammattikorkeakoululla on toimipisteet Mikkelissä, Savonlinnassa ja Pieksämäellä.

Oppilaitoksilta saatavien opiskelutietojen tiedostojen alkutietueen tietuekuvaus

HELIA 1 (14) Outi Virkki Tiedonhallinta

Hakukyselyt: SELECT * FROM taulu WHERE sarake1 = Malli Nimi [WHERE sarake1 LIKE M% ] [WHERE BETWEEN ehto1 AND ehto2] [WHERE sarake1 IN/= (alikysely)]

Henkilötiedot Tutkintotodistus annetaan tähän lomakkeeseen kirjoitetulla nimellä, ellei opiskelija vaihda virallisesti nimeään opintojen aikana.

Kirjasto Relaatiotietokannat Kevät Auvinen Annemari Niemi Anu Passoja Jonna Pulli Jari Tersa Tiina

OKM:N JA TILASTOKESKUKSEN TIEDONKERUUT VIRTA- OPINTOTIETOPALVELUSTA 2016

HYVÄKSILUKEMISEN TEKEMINEN ILMAN ENNAKKOPÄÄTÖSTÄ

Ammattikorkeakoulujen tiedonkeruut 2014

Opettajaksi Suomessa ulkomailla suoritettujen opintojen perusteella Maisa Montonen, opetusneuvos

Tilastokeskuksen opiskelija- ja tutkintotiedonkeruut. Anna Loukkola Korkeakoulujen KOTA seminaari

SQL - STRUCTURED QUERY LANGUAGE

TIEDONHALLINTA - SYKSY Luento 10. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

Opintojen edistymisen seurannan aikataulu, syksy 2016 ja kevät 2017

Valitse Opinto-oikeudet

Koostefunktiot. Viisi standardifunktiota: Esim. montako henkilöä on henkilo-taulussa:

Ammatillisen peruskoulutuksen tulosrahoitusseminaari 2010

Henkilötietojen siirtotiedoston muodostusohje Excel-ohjelman avulla

Oppilaitoksilta saatavien opiskelutietojen tiedostojen alkutietueen tietuekuvaus

Valtioneuvoston asetus

Aineenopettajan koulutuksen uusien opiskelijoiden info

YLIOPISTOJEN TIEDONKERUUT Ylitarkastaja Jukka Haapamäki

Oodi, versio 4.0; asennettu tuotantokantaan

WinhaWille www opiskelijasivujen ohjeita

Opiskelijamäärätiedot

FROM-lausekkeessa voidaan määritellä useampi kuin yksi taulu, josta tietoja haetaan: Tuloksena on taululistassa lueteltujen taulujen rivien

Julkaistu Helsingissä 11 päivänä huhtikuuta /2011 Valtioneuvoston asetus. opintotukiasetuksen muuttamisesta

Oodi, versio 3.8; asennettu tuotantokantaan

Tällä viikolla. Kotitehtävien tarkistus Upotettu SQL Indeksi-harjoitus täydennetään pelifirman tietokantamallia SQL-tehtäviä

Tällä viikolla. Kotitehtävien läpikäynti Aloitetaan Pelifirman tietovaraston suunnittelu Jatketaan SQL-harjoituksia

VIRTA opintotietopalvelun tietomallin muutokset

VIRTA-termit ruotsiksi

Rekisteröintiohjeet siirryttäessä vanhasta koulutusrakenteesta uuteen koulutusohjelmaan (Iso pyörä)

Ulkomailla hankitun sosiaaliohjaajakelpoisuuden tunnustaminen Suomessa

Opettajankoulutus Suomessa

TUTKINNON REKISTERÖINTI

LAHDEN AMMATTIKORKEAKOULUN TUTKINTOSÄÄNTÖ

Oppisopimuskoulutukseen osallistuneet ja/tai tutkinnon suorittaneet kalenterivuodelta

Yliopistojen perusrahoituksen laskennassa (vuoden 2017 rahoituksesta alkaen) käytettävien tilastotietojen määritelmät 2016

Freemover / Visiting student opinto-oikeuden rekisteröiminen

Ammattikorkeakoulujen tiedonkeruu 2013 ja ajankohtaisia asioita. Kota-seminaari Kaisu Piiroinen

Näyttötutkintoon valmistavan ammatillisen koulutuksen opiskelijat ja/tai tutkinnon suorittaneet ohjeet

OPH Ammatillisen koulutuksen tietovarantoon tallennettavat henkilökohtaisen osaamisen kehittämissuunnitelman (HOKS) tiedot

Ulkomaisten tutkintojen tunnustaminen Suomessa. Ylitarkastaja Veera Minkin Opetushallitus

Helsingin yliopisto Tietojenkäsittelytieteen laitos (H.Laine) Tietokantojen perusteet. Liitteenä: Tiivistelmä SQL-syntaksista

Liitokset - haut useaan tauluun

TUTKINNON REKISTERÖINTI

Kyselyn yleisrakenne:

OHJE OPISKELUOIKEUDEN PURKAMISESTA PASSIIVIREKISTERISTÄ

OKM:n ja Tilastokeskuksen tiedonkeruut VIRTA- Opintotietopalvelusta 2015 Helena Majamäki. projektipäällikkö

HENKILÖKOHTAISEN OSAAMISEN KEHITTÄMISSUUNNITELMAN TIETOSISÄLTÖ JA KÄSITTEISTÖ ( ) Käsitteet ja selitteet

Tiedonhallinnan perusteet. H11 Ovien ja kulun valvontajärjestelmän tietokanta

Opintoja suorittamattomien opiskelijoiden opiskeluoikeuksien kirjausmenettelyt ja tilastointi

Korkeakoulujen valtakunnallinen tietovaranto: viranomaistiedonkeruiden toteutus

Suorituksen sisältyminen toiseen suoritukseen (jonka id)

Valtioneuvoston asetus

TAUSTATIEDOT. Tilastoissa on

Opiskelun ja opetuksen tuen ja hallinnon aliprosessit. Pekka Linna KOOTuki-ryhmä,

Aiemmin tehdyt opinnot Miten eteenpäin?

ULKOMAILLA SUORITETTUJEN TUTKINTOJEN TUNNUSTAMINEN SUOMESSA

YLEMPÄÄN AMMATTIKORKEAKOULUTUTKINTOON JOHTAVAN KOULUTUKSEN HAKULOMAKKEEN TÄYTTÖOHJE 2009

Helsingin yliopisto, Tietojenkäsittelytieteen laitos Tietokantojen perusteet, , H.Laine

OPINTOSUORITUSTEN REKISTERÖINTI

Transkriptio:

Tilastokeskuksen tutkintotiedonkeruu ammattikorkeakoulut Ks. http://stat.fi/keruu/amkt/ "Tiedot ammattikorkeakouluissa kalenterivuoden [vuosi] aikana suoritetuista tutkinnoista, erikoistumisopinnoista ja ammatillisesta opettajankoulutuksesta." Poiminta Alustus Perusjoukon valinta Tietueet Oppilaitostunnus (tunn Koulutustyyppi (koultyp Koulutuksen opetuskieli (kiel (kkieli Opiskelukunta (kkun Henkilötunnus (ht Sukunimi (snimi Etunimet (enimi Sukupuoli (sp Äidinkieli (aikieli Opiskelijan vakinainen asuinkunta (askun Opiskelijan kansalaisuus (kansal Ko. tutkintoon kirjoihintulovuosi ko. ammattikorkeakoulussa (kirtupv Tutkinnon suorittamisajankohta ko. ammattikorkeakoulussa (suorpvm Lukukausien lukumäärät (lasnalk, poissalk Läsnä- ja poissaololukukausien laskentaan aputaulujen luonti Läsnäololukukaudet (lasnalk Poissaololukukaudet (poissalk Ensimmäinen kirjoihintuloajankohta ko. tutkintoon (kirtu1pv Lastentarhanopettajan pätevyyteen tähtäävät opinnot (lastu (opettaja Rahoituslähde (rahlahde Maksullisen tilauskoulutuksen sijaintimaa (tilmaa Koulutuskoodi (koulk Opintopisteet Suoritettavien opintojen laajuus (oplaaj (laajuus Omassa ammattikorkeakoulussa suoritetut opintopisteet (opoamk Muissa ammattikorkeakouluissa suoritetut opintopisteet (opmamk Yliopistoissa suoritetut opintopisteet (opylio Yleissivistävissä ja ammatillisissa oppilaitoksissa suoritetut opintopisteet (opylei Ulkomailla suoritetut opintopisteet (opulk Muualla suoritetut opintopisteet (opmuu Opintopisteet yhteensä (opyht Tutkinnon opintopisteet ( Tulos Tarkistus Muutoshistoria 5.10.2017 ::Tu1 ja tu2 käsittelyyn muutos tarkistuksessa :: wiki-versio 34 20.1.2017 :: Ohjauksen ala ei-tutkintoonjohtaville, Siirto-opiskelijan läsnä-poissaolot, erikoistumiskoulutuskoodi :: wikiversio 34 4.9.2016 :: Tarkistusta korjattu :: wikiversio 33 5.2.2016 :: Ammatillinen opettajankoulutus opiskeluoikeuksista :: wikiversio 32 5.2.2016 :: Lukukausi-ilmoittautumisten poislukeminen tutkinnon suorittamisen jälkeen :: wikiversio 31 29.1.2016 :: Opettajapätevyys koodiarvot :: wikiversio 30 22.1.2016 :: Erikoistumiskoulutus -tyyppiset päättyneet opiskeluoikeudet :: wikiversio 29 15.1.2016 :: Lukukausien lukumäärän laskennan kaksi poimintamallia :: wikiversio 27 22.9.2015 :: Lastentarhaopettajan pätevyystieto :: wiki-versio 21 11.2.2015 :: Erikoistumisopinnot ja ammatillinen opettajakoulutus päättymistieto :: wiki-versio 20 29.1.2015 :: Suoritettavien opintojen laajuus -tieto: negatiiviset arvot nollaksi :: wiki-versio 19 26.1.2015 :: Opintosuoritusten lehtitason määrityksen korjaus :: wiki-versio 17 15.1.2015 :: Pätevyydet katsotaan koko hierarkiasta 12.1.2015 :: Tutkinto-opintosuorituksen opintopisteet :: wiki-versio 15 19.12.2014 :: Opintopisteiden jaottelussa huomioitu oppilaitostyyppi sotilaskorkeakoulu :: wiki-versio 14 15.12.2014 :: Parannettu opintopisteiden jakautumisen poimintaa :: wiki-versio 13 8.12.2014 :: Korjattu tiedonkeruun poimintaa :: wiki-versio 10 17.11.2014 :: Automaatin aika :: wiki-versio 8 Alustus

Dokumentaation tueksi on tuotu SQL-kielisiä kyselyitä, joissa taustalla on temp-tietokantataulu #tktutk johon tiedot kerätään, joka vastaa tietuekuvaukseltaan hyvin lähelle sitä mikä Tilastokeskuksen tiedonkeruissa halutaan, sekä yksirivinen temp-tietokantataulu #param, jossa on tieto nyt käsittelyssä olevasta korkeakoulusta sekä tiedonkeruun kannalta oleellisia muita tietoja kuten tilastointivuosi (VUOSI. SQL Expand -- Temp-taulu tietojen valintaa varten source -- NB! param-taulussa saa olla vain yksi rivi! create table #param ( vuosi varchar(4, org varchar(30,--kk-lyhenne (DB-nimi kk varchar(5,--oppilaitos tilpvm date,--tilastointipäivä insert into #param (vuosi,org,kk,tilpvm select @vuosi as vuosi,upper(db_name( as org,(select OrganisaatioKoodi from Yhteiset.Asetukset.Instanssit where DB=DB_NAME( as kk,@vuosi+'-09-20' as tilpvm --select * from #param -- Temp-taulu tiedonkeruun tietoja varten create table #tktutk ( tunn varchar(5,--oppilaitostunnus koultyp varchar(1,--koulutustyyppi --1=Amk-tutkintoon johtava nuorten koulutus --2=Amk-tutkintoon johtava aikuiskoulutus --3=Erikoistumisopinnot --5=Ammatillinen opettajankoulutus --6=Ylempi ammattikorkeakoulututkinto kiel varchar(2,--koulutuksen opetuskieli kkun varchar(3,--opiskelukunta ht varchar(11,--henkilötunnus snimi varchar(255,--opiskelijan sukunimi enimi varchar(255,--opiskelijan etunimet sp varchar(1,--opiskelijan sukupuoli aikieli varchar(2,--opiskelijan äidinkieli askunta varchar(3,--opiskelijan vakinainen asuinkunta. kansal varchar(3,--opiskelijan kansalaisuus kirtupv varchar(8,--ko. tutkintoon kirjoihintuloajankohta ko. ammattikorkeakoulussa suorpvm varchar(8,--tutkinnon suorittamisajankohta ko. ammattikorkeakoulussa opoamk varchar(3,--omassa ammattikorkeakoulussa suoritetut opintopisteet (Sisältää työharjoittelun opmamk varchar(3,--muissa ammattikorkeakouluissa suoritetut opintopisteet (Suomessa opylio varchar(3,--yliopistoissa suoritetut opintopisteet (Suomessa opylei varchar(3,--yleissivistävissä ja ammatillisissa oppilaitoksissa suoritetut opintopisteet (Suomessa opulk varchar(3,--ulkomailla suoritetut opintopisteet opmuu varchar(3,--muualla suoritetut opintopisteet opyht varchar(4,--opintopisteet yhteensä (Tutkintoa varten suoritetut opintopisteet (myös tutkintovaatimusten yli menevät opintopisteet lasnalk varchar(4,--läsnäololukukausien määrä ko. tutkinnossa yhteensä

poissalk varchar(4,--poissaololukukausien määrä ko. tutkinnossa yhteensä laajuus varchar(4,--ammattikorkeakoululain 14 :ssä säädetään opintojen hyväksilukemisesta. Opintojen laajuudella tarkoitetaan hyväksilukemisen jälkeen opiskelijan suoritettavaksi jäävää opintojen määrää opintopisteinä. kirtu1pv varchar(8,--ajankohta, jolloin opiskelija on ilmoittautunut ensimmäistä kertaa läsnä- tai poissaolevaksi kyseiseen tutkintoon missä tahansa ammatti-korkeakoulussa. (Siirto-opiskelijoilla eri kuin kirjoihintulo ko.tutkintoon omassa amk:ssa. Merkitään: vvvvkkpp lastu varchar(1,--sosionomi (amk -tutkinnon suorittanut, jonka aineyhdistelmään kuuluu 60 opintopisteen laajuiset varhaiskasvatuksen ja sosiaalipedagogiikan opinnot rahlahde varchar(1,--opiskelijan rahoitustausta tilmaa varchar(3,--maksullisen tilauskoulutuksen sijaintimaa koulk varchar(6,--koulutuskoodi -- optutk varchar(4,--tutkinto-opintosuorituksen opintopisteet -- ohjauksenala varchar(3, -- OKM Ohjauksen ala ekkoodi varchar(3, -- Erikoistumiskoulutuksen koodi -- suorituspaivamaara date, -- opiskelijaavain varchar(100, opintosuoritusavain varchar(100, opiskeluoikeusavain varchar(100, opiskelija_id int, opintosuoritus_id int, opiskeluoikeus_id int, -- avuksi oikeus_alkamispaivamaara date, oikeus_paattymispaivamaara date,

oikeus_siirtopaivamaara date Perusjoukon valinta Haetaan tietovarannosta kaikki tutkinto-lajiset opintosuoritukset, jotka on suoritettu tilastointivuoden aikana. Lisätään joukkoon rivit niistä tapauksista, joissa erikoistumisopinnot (12, ammatillinen opettajakoulutus (15 tai erikoistumiskoulutus (19 -tyyppinen opiskeluoikeus on päättynyt tilastointivuoden aikana (opiskeluoikeuden tila päättynyt (3 on alkanut tilastovuonna TAI 1.1. seuraavana vuonna ja opiskeluoikeuden päättymispäivä on tilastointivuonna. Liitetään suoritukseen opiskelija (henkilö, josta saadaan perustietoja: Korkeakoulu (tunn Henkilötunnus (ht Sukupuoli (sp Sukunimi (snimi Etunimet (enimi Kansalaisuus (kansal, korjataan puuttuvat tiedot arvoon 999='Tuntematon' Äidinkieli (aikieli, korjataan puuttuvat tiedot arvoon 99='Tuntematon' Asuinkunta (askunta Suorituspäivämäärä (suorpvm SQL Expand --- source -- Lisätään perustiedot (henkilö, opiskelija -- * täytyy olla tutkinto -- + erikoistumisopinnot ja ammatilliset opettajakoulutukset päättyneen opiskeluoikeuden mukaan! (tyyppi=12 tai 15, tila=3 --- insert into #tktutk ( tunn,ht,sp,snimi,enimi,kansal,aikieli,askunta,suorpvm,suorituspaivamaara,opiskelijaavain,opiskelija_id,opintosuoritusavain,opintosuoritus_id,opiskeluoikeusavain,opiskeluoikeus_id,oikeus_alkamispaivamaara,oikeus_paattymispaivamaara,oikeus_siirtopaivamaara select tunn = (select kk from #param,ht = h.henkilotunnus,sp = (select top 1 k.koodi from Sukupuoli k where k.id=h.sukupuoliid,snimi = h.sukunimi,enimi = h.etunimet

,kansal = (select top 1 m.koodi from Henkilon_maa hm inner join Maa m on m.id=hm.maaid inner join Maan_rooli mr on mr.id=hm.maan_rooliid where hm.henkiloid=h.id --sido and mr.koodi='1' --Kansalaisuus,aikieli = (select top 1 UPPER(k.Koodi from Kieli k where k.id=h.kieliid,askunta = (select top 1 k.koodi from Kunta k where k.id=h.kuntaid,suorpvm = CAST(YEAR(s.Suorituspaivamaara as varchar +RIGHT('00'+CAST(MONTH(s.Suorituspaivamaara as varchar,2 +RIGHT('00'+CAST(DAY(s.Suorituspaivamaara as varchar,2 --,suorituspaivamaara = s.suorituspaivamaara --,opiskelijaavain = p.avain,opiskelija_id = p.id,opintosuoritusavain = s.avain,opintosuoritus_id = s.id,opiskeluoikeusavain = o.avain,opiskeluoikeus_id = o.id --,oikeus_alkamispaivamaara = o.alkamispaivamaara,oikeus_paattymispaivamaara = coalesce(o.paattymispaivamaara,'9999-01-01',oikeus_siirtopaivamaara = o.siirtopaivamaara from Henkilo h inner join Opiskelija p on p.henkiloid=h.id inner join Opintosuoritus s on s.opiskelijaid=p.id inner join Opintosuorituksen_laji ol on ol.id=s.opintosuorituksen_lajiid inner join Opiskeluoikeus o on o.id=s.opiskeluoikeusid where 1=1 -- tutkinto-lajinen and ol.koodi=1 -- suoritettu tilvuonna and year(s.suorituspaivamaara=(select vuosi from #param -- erikoitumisopinnot ja ammatillinen opettajakoulutus insert into #tktutk ( tunn,ht,sp,snimi,enimi,kansal,aikieli,askunta,suorpvm,koulk,suorituspaivamaara,opiskelijaavain,opiskelija_id,opiskeluoikeusavain,opiskeluoikeus_id,oikeus_alkamispaivamaara,oikeus_paattymispaivamaara,oikeus_siirtopaivamaara select tunn = (select kk from #param,ht = h.henkilotunnus,sp = (select top 1 k.koodi from Sukupuoli k where k.id=h.sukupuoliid,snimi = h.sukunimi,enimi = h.etunimet,kansal = (select top 1 m.koodi from Henkilon_maa hm inner join Maa m on m.id=hm.maaid inner join Maan_rooli mr on mr.id=hm.maan_rooliid where hm.henkiloid=h.id --sido and mr.koodi='1' --Kansalaisuus

,aikieli = (select top 1 UPPER(k.Koodi from Kieli k where k.id=h.kieliid,askunta = (select top 1 k.koodi from Kunta k where k.id=h.kuntaid,suorpvm = CONVERT(varchar,o.Paattymispaivamaara,112--112=yyyymmdd,koulk = '999999' --koulutuskoodi --,suorituspaivamaara = o.paattymispaivamaara --,opiskelijaavain = p.avain,opiskelija_id = p.id,opiskeluoikeusavain = o.avain,opiskeluoikeus_id = o.id --,oikeus_alkamispaivamaara = o.alkamispaivamaara,oikeus_paattymispaivamaara = coalesce(o.paattymispaivamaara,'9999-01-01',oikeus_siirtopaivamaara = o.siirtopaivamaara from Henkilo h inner join Opiskelija p on p.henkiloid=h.id inner join Opiskeluoikeus o on o.opiskelijaid=p.id inner join Op_oikeuteen_liittyva_tila ot on ot.opiskeluoikeusid=o.id inner join Opiskeluoikeuden_tila ti on ti.id=ot.op_oikeuden_tilaid inner join Opiskeluoikeuden_tyyppi ty on ty.id=o.op_oikeuden_tyyppiid where 1=1 -- tila -- päättynyt and ti.koodi='3' -- päättynyt tilvuonna and(year(ot.alkamispaivamaara=(select vuosi from #param -- tai päivä sen jälkeen, eli 1.1.vuosi+1 or year(dateadd(day,-1,ot.alkamispaivamaara=(select vuosi from #param and year(o.paattymispaivamaara=(select vuosi from #param -- erikoistumisopinnot ja ammatillinen opettajakoulutus, erikoistumiskoulutus and ty.koodi in ('12','15','19' -- tuntemattomia -- : kansal set kansal='999' where kansal is null -- : aikieli set aikieli='99'

where aikieli is null Tietueet Oppilaitostunnus (tunn Oppilaitostunnus on tietovarannon perusasetuksissa, josta tieto on poimittu parametri-aputauluun heti aluksi. Parametri-taulusta tieto saatiin kullekin riville jo ensimmäisissä poiminnoissa. Koulutustyyppi (koultyp Koulutustyyppi päätellään opiskeluoikeuden tyypin ja opiskeluoikeuden tiedon Aikuiskoulutus perusteella. Mikäli opiskeluoikeuden tyyppi on: 1=Ammattikorkeakoulututkinto, katsotaan lisäksi Aikuiskoulutus-tieto ja mikäli se on: 1=kyllä, eli on aikuiskoulutusta, koulutustyyppi saa arvon 2=Amk-tutkintoon johtava aikuiskoulutus muuten koulutustyyppi saa arvon 1=Amk-tutkintoon johtava nuorten koulutus 3=Ylempi ammattikorkekoulututkinto, koulutustyyppi saa arvon 6=Ylempi korkeakoulututkinto 12=Erikoistumisopinnot, koulutustyyppi saa arvon 3=Erikoistumisopinnot 15=Ammatillinen opettajankoulutus, koulutustyyppi saa arvon 5=Ammatillinen opettajankoulutus 19=Erikoistumiskoulutus, koulutustyyppi saa arvon 7=Erikoistumiskoulutus Ohjauksenala ei-tutkintoon johtaville. Erikoistumiskoulutuksen koulutuskoodi jos sellainen on. SQL Expand -- koultyp :: Koulutustyyppi source set koultyp= ( case ot.koodi when '1'-- Ammattikorkeakoulututkinto then case when o.aikuiskoulutus='1' then '2'--=Amk-tutkintoon johtava aikuiskoulutus when o.aikuiskoulutus='2' then '1'--=Amk-tutkintoon johtava nuorten koulutus else '1' end when '3' then '6'--=Ylempi ammattikorkeakoulututkinto when '12' then '3'--=Erikoistumisopinnot when '15' then '5'--=Ammatillinen opettajankoulutus when '19' then '7'--=Erikoistumiskoulutus end -- TO-DO? Vaihda opintosuoritukseen? Koulutuskoodin kautta? inner join Opiskeluoikeus o on o.id=t.opiskeluoikeus_id inner join Opiskeluoikeuden_tyyppi ot on ot.id=o.op_oikeuden_tyyppiid -- AMK -- Erikoistumiskoulutus, ja muu ei-tutkintokoulutusta

UPDATE T SET T.ohjauksenAla = K.koodi, t.koulk = '999999' FROM #tktutk T INNER JOIN Opiskeluoikeus o ON o.id = T.opiskeluoikeus_id INNER JOIN Opiskeluoikeuden_tyyppi ot ON ot.id = o.op_oikeuden_tyyppiid INNER JOIN koulutusala K ON K.id = O.koulutusalaid WHERE 1=1 -- erikoistumisopinnot ja ammatillinen opettajakoulutus, erikoistumiskoulutus (siis EI tutkinto-tyyppinen AND ot.koodi in ('12','15','19' AND K.versio = 'ohjausala' -- Erikoistumiskoulutuksen koulutuskoodi UPDATE T SET T.ekkoodi = E.koodi FROM #tktutk T INNER JOIN Opiskeluoikeus o ON o.id = T.opiskeluoikeus_id INNER JOIN Opiskeluoikeuden_tyyppi ot ON ot.id = o.op_oikeuden_tyyppiid INNER JOIN koulutusala K ON K.id = O.koulutusalaid INNER JOIN op_oik_liittyva_erikoistumiskoulutus OE ON OE.opiskeluoikeusid = o.id INNER JOIN Erikoistumiskoulutus E ON E.id = OE.erikoistumiskoulutusid WHERE 1=1 -- erikoistumisopinnot ja ammatillinen opettajakoulutus, erikoistumiskoulutus (siis EI tutkinto-tyyppinen AND ot.koodi in ('19' AND K.versio = 'ohjausala'

Koulutuksen opetuskieli (kiel (kkieli Haetaan opetuskieli-tieto tiedetyn opiskeluoikeuden opiskeluoikeusjaksosta. SQL --kiel source set kiel=upper(k.koodi inner join Opiskeluoikeusjakso oj on oj.opiskeluoikeusid=t.opiskeluoikeus_id inner join Kieli k on k.id=oj.kieliid where T.suorituspaivamaara between oj.alkamispaivamaara and coalesce(oj.paattymispaivamaara,'9999-01-01' Expand Opiskelukunta (kkun Haetaan opetuskunta-tieto tiedetyn opiskeluoikeuden opiskeluoikeusjaksosta. SQL Expand -- kkun source set kkun=k.koodi inner join Opiskeluoikeusjakso oj on oj.opiskeluoikeusid=t.opiskeluoikeus_id inner join Kunta k on k.id=oj.kuntaid where T.suorituspaivamaara between oj.alkamispaivamaara and coalesce(oj.paattymispaivamaara,'9999-01-01' Henkilötunnus (ht Tieto tietovarannossa olevasta opiskelijan (henkilön tiedosta sellaisenaan. Sukunimi (snimi Tieto tietovarannossa olevasta opiskelijan (henkilön tiedosta sellaisenaan. Etunimet (enimi

Tieto tietovarannossa olevasta opiskelijan (henkilön tiedosta sellaisenaan. Sukupuoli (sp Tieto tietovarannossa olevasta opiskelijan (henkilön tiedosta sellaisenaan. Äidinkieli (aikieli Tieto tietovarannossa olevasta opiskelijan (henkilön tiedosta sellaisenaan. Puuttuvan tiedon tilalle vaihdetaan arvo '99'. Opiskelijan vakinainen asuinkunta (askun Tieto tietovarannossa olevasta opiskelijan (henkilön tiedosta sellaisenaan. Opiskelijan kansalaisuus (kansal Tieto tietovarannossa olevasta opiskelijan (henkilön tiedosta sellaisenaan. Puuttuvan tiedon tilalle vaihdetaan arvo '999'. Ko. tutkintoon kirjoihintulovuosi ko. ammattikorkeakoulussa (kirtupv Haetaan opiskeluoikeuden alkamispäivä ja muunnetaan muotoon VVVVKKPP. SQL -- kirtupv :: Ko. tutkintoon kirjoihintuloajankohta ko. ammattikorkeakoulussa source -- NB siirto-opiskelijat set kirtupv=convert(varchar,t.oikeus_alkamispaivamaara,112--112=yyyymmdd Expand Tutkinnon suorittamisajankohta ko. ammattikorkeakoulussa (suorpvm Tutkinnon (tutkinto-opintosuorituksen suorituspäivämäärä ja muunnetaan muotoon VVVVKKPP. Lukukausien lukumäärät (lasnalk, poissalk Läsnä- ja poissaololukukausien laskentaan aputaulujen luonti Tehty lukukausien laskentaan kaksi poimintamallia ("ilmomalli" ks. aputaulujen luonti sql-osuus alla Poimintamallit "välitila": KOTA-seminaarissa esitetty ja alla kuvattu. (käytetään LasnaPoissaLukukausiMaara-tietoa ja oletetaan, että vain poissaoloja "toinenkk": logiikka, jossa korkeakoulu on ilmoittanut kaikki opiskeluoikeuteen liittyvät lukukausi-ilmoittautumiset lukukausi-ilmoittautumisina riippumatta siitä onko tieto oman kk:n tieto vai ei. (ei käytetä LasnaPoissaLukukausiMaara-tietoa ollenkaan Valinta poimintamalliin kuulumisesta tehdään aluksi yleisellä tasolla per korkeakoulu sen perusteella, onko mihin tahansa siirto-opiskelijan (siirtopäivämäärä!=null opiskeluoikeuteen liitetty lukukausi-ilmoittautumistietoa, joka lukukausi-ilmoittautuminen on päättynyt jo ennen kuin opiskeluoikeus on alkanut. Jos löytyy, tulkitaan tuo lukukausi-ilmoittautumiseksi joka on tehty siellä lähdekorkeakoulussa ja siis malli on "toinenkk", muutoin "välitila". SQL

-- VÄLITILARATKAISU -- Otetaan tietovarantoon tuodut toisessa korkeakoulussa alun perin tehdyt Expand lukukausi-ilmoittautumiset huomioon syksyllä 2015! source IF OBJECT_ID('tempdb..#ilmomalli' IS NOT NULL BEGIN truncate table #ilmomalli drop table #ilmomalli if @debug<>0 print convert(varchar,getdate(,120+' DROP temp-taulu ilmomalli' END create table #ilmomalli ( toinen_kk bit -- 1 jos tuotu toisen kk:n ilmoja, 0 muutoin (ja mennään "välitilalla" insert into #ilmomalli (toinen_kk select case when exists ( select * from Opiskeluoikeus bo join Lukukausi_ilmoittautuminen bl on bl.opiskeluoikeusid=bo.id where bo.siirtopaivamaara is not null and bo.alkamispaivamaara>bl.paattymispaivamaara then 1 else 0 end IF OBJECT_ID('tempdb..#poissaolo_maara_ennen' IS NOT NULL BEGIN truncate table #poissaolo_maara_ennen drop table #poissaolo_maara_ennen if @debug<>0 print convert(varchar,getdate(,120+' DROP temp-taulu poissaolo_maara_ennen' END create table #poissaolo_maara_ennen ( opiskeluoikeusid int, lkm int insert into #poissaolo_maara_ennen (opiskeluoikeusid,lkm select l.opiskeluoikeusid, count(* from Lukukausi_ilmoittautuminen l inner join Lukukausi_ilm_tila lt on lt.id=l.lukukausi_ilmoittautumisen_tilaid join #tktutk T on T.opiskeluoikeus_id=l.OpiskeluoikeusID where lt.koodi in ('2','3' --poissa, poissa ei kuluta -- siirto-opiskelija KYLLÄ aiemman kk:n ilmoja and T.oikeus_siirtopaivamaara is not null and T.oikeus_siirtopaivamaara<T.oikeus_alkamispaivamaara and coalesce(l.paattymispaivamaara,'9999-01-01' < coalesce(t.oikeus_alkamispaivamaara,'1900-01-01' -- kk:lla on aiemman kk:n ilmoja (yleisesti, ei vain tämä tapaus? and 1 = (select toinen_kk from #ilmomalli group by l.opiskeluoikeusid -- ne joilla tiedot on oikein, eli EI OLE aiemman kk:n ilmoja tuotu: insert into #poissaolo_maara_ennen (opiskeluoikeusid,lkm select T.opiskeluoikeus_id, o.lasna_poissa_lukukausien_summa join Opiskeluoikeus o on o.id=t.opiskeluoikeus_id where T.opiskeluoikeus_id NOT IN (select opiskeluoikeusid from #poissaolo_maara_ennen -- siirto-opiskelija EI aiemman kk:n ilmoja

and T.oikeus_siirtopaivamaara is not null and T.oikeus_siirtopaivamaara<T.oikeus_alkamispaivamaara and o.lasna_poissa_lukukausien_summa is not null -- kk:lla EI OLE aiemman kk:n ilmoja (yleisesti, ei vain tämä tapaus? and 1 <> (select toinen_kk from #ilmomalli

Läsnäololukukaudet (lasnalk Käytettyjen läsnäololukausien määrä tilastointivuoden loppuun, tai tutkinnon suorittamispäivään, mennessä mukaan lukien siirto-opiskelijoiden käyttämät lukukaudet aiemmassa korkeakoulussa. NB! Koska siirto-opiskelijoihin liittyen tietovarannon tiedot sisältävät paikan vain yhdelle lukukausien läsnä- ja poissaolojen lukumäärälle, on tämä yksi paikka otettu vain poissaolojen käyttöön. Tässä kohdassa lasketaan: lähettävässä korkeakoulussa käytetyt läsnäololukukaudet, johon lisätään lukukausien määrä aiemmassa korkeakoulussa, lasketaan lukukausien viimeisten päivien lukumäärä aikavälillä opiskeluoikeuden alkamispäivä - siirtopäivä sql-kysely voi olla vähän vaikea tulkita, sillä siinä pelataan vuosien kanssa, mutta yllä mainittu on tarkoitus mikäli kyse on siirto-opiskelijasta, poistetaan lukumäärästä ilmoitettu poissaolojen lukumäärä. NB2! Tehty poimintaan kaksi poimintamallia (ilmomalli ks. yllä

SQL Expand -- lasnalk :: Läsnäololukukaudet source set lasnalk =coalesce( (select count(* from Lukukausi_ilmoittautuminen l inner join Lukukausi_ilm_tila lt on lt.id=l.lukukausi_ilmoittautumisen_tilaid and lt.koodi in ('1' --läsnä where l.opiskeluoikeusid=t.opiskeluoikeus_id and l.paattymispaivamaara<=(select vuosi from #param+'-12-31' -- ei sallita ennen opiskeluoikeutta olleita (siirto-opiskelija and l.paattymispaivamaara > T.oikeus_alkamispaivamaara -- "varmuuden vuoksi" ilmoittautumiset pois, eli tutkinnon suorittamisen jälkeen alkavat lk:t pois and l.alkamispaivamaara < T.suorituspaivamaara,0 + case when oikeus_siirtopaivamaara is not null and oikeus_alkamispaivamaara is not null then case -- Ensin poikkeus: Samana vuonna tapahtunut alkaminen ja siirto when DATEPART(year,oikeus_siirtopaivamaara = DATEPART(year,oikeus_alkamispaivamaara then case when DATEPART(month,oikeus_alkamispaivamaara < 8 then 0 -- jos 31.7. on jo kohdekk:ssa: 0 when DATEPART(month,oikeus_siirtopaivamaara >= 8 then 0 -- jos alkanut vasta myöh: 0 else 1 -- muutoin kevät lk lähdekk:ssa (syksy on kohdekk:ssa! end -- "normi", eri vuodet: else -- lk alku: 1.vuosi: pvm(kk < 8 => 2 (ekan vuoden molemmat lk:t muutoin 1 ( case when DATEPART(month,oikeus_siirtopaivamaara < 8 then 2 else 1 -- syys lk joka tapauksessa (muista, eri vuodet end -- lk loppu: 2.vuosi: pvm(kk >= 8 => 1 muutoin 0 +(case when DATEPART(month,oikeus_alkamispaivamaara >= 8 then 1 else 0 end -- vuodet: (vuosien erotus - 1 x 2 (muista, eri vuodet tässä, eli ei tule negatiivista lukua 0 saa tulla -1:n kanssa +( (DATEPART(year,oikeus_alkamispaivamaara - DATEPART(year,oikeus_siirtopaivamaara - 1 * 2 end -- miinus ne, jotka on ilmoitettu poissaoloksi - coalesce((select lkm from #poissaolo_maara_ennen where opiskeluoikeusid=t.opiskeluoikeus_id,0 else 0 end WHERE T.opiskeluoikeus_id NOT IN (SELECT OPL.OpiskeluoikeusID FROM Op_oik_siir_opisk_liittyva_lukukausi OPL -- 2017 muutos FF

Poissaololukukaudet (poissalk Käytettyjen poissaololukausien määrä tilastointivuoden loppuun, tai tutkinnon suorituspäivään, mennessä mukaan lukien siirto-opiskelijoiden käyttämät lukukaudet aiemmassa korkeakoulussa. NB!: Koska siirto-opiskelijoihin liittyen tietovarannon tiedot sisältävät paikan vain yhdelle lukukausien läsnä- ja poissaolojen lukumäärälle, on tämä yksi paikka otettu vain poissaolojen käyttöön. Tässä kohdassa tuo tieto lasketaan yhteen tietoja lähettävässä korkeakoulussa käytettyihin poissaolojen lukumäärään. NB2! Tehty poimintaan kaksi poimintamallia (ilmomalli ks. yllä -- poissalk :: Poissaololukukaudet source set poissalk =coalesce( (select count(* from Lukukausi_ilmoittautuminen l inner join Lukukausi_ilm_tila lt on lt.id=l.lukukausi_ilmoittautumisen_tilaid and lt.koodi in ('2','3' --poissa, poissa ei kuluta where l.opiskeluoikeusid=t.opiskeluoikeus_id and l.paattymispaivamaara<=(select vuosi from #param+'-12-31' -- ei sallita ennen opiskeluoikeutta olleita (siirto-opiskelija and l.paattymispaivamaara > T.oikeus_alkamispaivamaara -- "varmuuden vuoksi" ilmoittautumiset pois, eli tutkinnon suorittamisen jälkeen alkavat lk:t pois and l.alkamispaivamaara < T.suorituspaivamaara,0 + coalesce((select lkm from #poissaolo_maara_ennen where opiskeluoikeusid=t.opiskeluoikeus_id,0 WHERE T.opiskeluoikeus_id NOT IN (SELECT OPL.OpiskeluoikeusID FROM Op_oik_siir_opisk_liittyva_lukukausi OPL -- 2017 muutos FF SQL Expand -- Katsotaan onko Op_oik_siir_opisk_liittyva_lukukausi taulussa poissa ja läsnä-olot siirto-opiskelijalle -- 2017-01-12 UPDATE T SET lasnalk = COALESCE( (SELECT count(* FROM Lukukausi_ilmoittautuminen l INNER join Lukukausi_ilm_tila lt on lt.id=l.lukukausi_ilmoittautumisen_tilaid AND lt.koodi in ('1' --läsnä WHERE l.opiskeluoikeusid=t.opiskeluoikeus_id AND l.paattymispaivamaara<=(select vuosi from #param+'-12-31' -- ei sallita ennen opiskeluoikeutta olleita (siirto-opiskelija AND l.paattymispaivamaara > T.oikeus_alkamispaivamaara -- "varmuuden vuoksi" ilmoittautumiset pois, eli tutkinnon suorittamisen jälkeen alkavat lk:t pois

,0 and l.alkamispaivamaara < T.suorituspaivamaara + COALESCE( ( SELECT OL.Maara FROM Op_oik_siir_opisk_liittyva_lukukausi OL INNER JOIN Lukukausi_ilm_tila LT ON LT.id = OL.Lukukausi_ilm_tilaID WHERE OL.OpiskeluoikeusID = T.opiskeluoikeus_id AND LT.Koodi = '1',0 FROM #tktutk T WHERE T.opiskeluoikeus_id IN (SELECT OPL.OpiskeluoikeusID FROM Op_oik_siir_opisk_liittyva_lukukausi OPL -- 2016 muutos poissaolo siirto-opiskelijat -- 2017-01-12 UPDATE T SET poissalk = COALESCE( (SELECT count(* FROM Lukukausi_ilmoittautuminen l INNER join Lukukausi_ilm_tila lt on lt.id=l.lukukausi_ilmoittautumisen_tilaid AND lt.koodi IN ('2','3' --Poissa WHERE l.opiskeluoikeusid=t.opiskeluoikeus_id AND l.paattymispaivamaara<=(select vuosi from #param+'-12-31' -- ei sallita ennen opiskeluoikeutta olleita (siirto-opiskelija AND l.paattymispaivamaara > T.oikeus_alkamispaivamaara -- "varmuuden vuoksi" ilmoittautumiset pois, eli tutkinnon suorittamisen jälkeen alkavat lk:t pois and l.alkamispaivamaara < T.suorituspaivamaara,0 + COALESCE( ( SELECT OL.Maara FROM Op_oik_siir_opisk_liittyva_lukukausi OL INNER JOIN Lukukausi_ilm_tila LT ON LT.id = OL.Lukukausi_ilm_tilaID WHERE OL.OpiskeluoikeusID = T.opiskeluoikeus_id AND LT.Koodi = '2', 0 FROM #tktutk T WHERE T.opiskeluoikeus_id IN ( SELECT OPL.OpiskeluoikeusID FROM Op_oik_siir_opisk_liittyva_lukukausi OPL

Ensimmäinen kirjoihintuloajankohta ko. tutkintoon (kirtu1pv Haetaan ensimmäinen kirjoihintuloajankohta ko. tutkintoon siten, että otetaan siirtopäivämäärä, jos on, muutoin opiskeluoikeuden alkamispäivä ja muunnetaan muotoon VVVVKKPP. SQL Expand -- kirtu1pv :: Ensimmäinen kirjoihintuloajankohta ko. tutkintoon source -- NB siirto-opiskelijat set kirtu1pv=convert(varchar,coalesce(t.oikeus_siirtopaivamaara,t.oikeus_alkamispaivamaara,112--112=yyyymmdd Lastentarhanopettajan pätevyyteen tähtäävät opinnot (lastu (opettaja Haetaan henkilön pätevyys -tiedon perusteella, kun se liittyy ko. tutkintoon. Pätevyys-tieto: iq => 1=Opiskelijalle, joka suorittaa sosionomi (amk -tutkintoa kuuluu aineyhdistelmään opintoja, jotka tähtäävät lastentarhanopettajan pätevyyteen 12 => 2=Sairaanhoitajan pätevyys (tutkintokeruu ja => 3=Ammatillinen opettajankoulutus, pedagogiset opinnot jc => 4=Ammatillinen opettajankoulutus, opinto-ohjaaja jb => 5=Ammatillinen opettajankoulutus, erityisopettaja NB! Tyhjät jää (edelleen tyhjäksi. Erityisesti arvo 2 ei tarkoita siis enää "ei" vaan sairaanhoitajaa. NB! 2015-01-15: Pätevyydet pitää katsoa koko hierarkiasta! Tämä tehdään katsomalla, että pätevyys löytyy opintosuorituksesta jolla on sama opiskeluoikeus-liittyvyys kuin on tutkinto-opinnolla. NB! 2016-02-05: Poikkeuspoiminta vuoden 2015 tutkintotiedonkeruussa: Katsotaan ammatillisen opettajankoulutuksen pätevyydet lisäksi opiskeluoikeuksien kautta. SQL Expand -- lastu source --Sosionomi (amk -tutkinnon suorittanut, jonka aineyhdistelmään kuuluu --60 opintopisteen laajuiset varhaiskasvatuksen ja sosiaalipedagogiikan opinnot --1=Kyllä, 2=Ei -- NB! 2015-01-12: Tyhjät jää tyhjäksi tarkoittaen "ei". Arvo 2 saanut uuden merkityksen! -- NB! 2015-01-15: Pätevyydet pitää katsoa koko hierarkiasta! -- NB! 2015-09-22: Korjattu vanha lastentarhaopettaja pätevyyskoodi 2=> iq set lastu='1' inner join Opintosuoritus s on s.opiskeluoikeusid = T.opiskeluoikeus_id inner join Henkilon_patevyys hp on hp.opintosuoritusid=s.id inner join Patevyys p on p.id=hp.patevyysid where 1=1 and p.koodi in ('iq' --lastentarhanopettaja

and lastu is null -- Tuplasairaanhoitajat -- 2015-01-12: Viranomaistiedonkeruuryhmässä sovittiin, että laitetaan pätevyyskoodi 12 lastu-muuttujaan arvoksi 2 -- Tämä on siis nk. tuplasairaanhoitajien se toinen pätevyystieto! set lastu='2' inner join Opintosuoritus s on s.opiskeluoikeusid = T.opiskeluoikeus_id inner join Henkilon_patevyys hp on hp.opintosuoritusid=s.id inner join Patevyys p on p.id=hp.patevyysid where 1=1 and p.koodi in ('12' --sairaanhoitaja -- ei jyrätä (ei pitäisi ollakaan samoissa tutkinnoissa and lastu is null --TIE-90: Sairaanhoitajan tutkintoon ei saa liittyä sairaanhoitajan pätevyyttä and s.tutkintonimikeid not in (select tu.id from virta.dbo.tutkintonimike tu where tu.koodi='671101' -- lastu :: Ammatillinen opettajankoulutus, pedagogiset opinnot Pätevyyteen tähtäävät opinnot set lastu='3' inner join Opintosuoritus s on s.opiskeluoikeusid = T.opiskeluoikeus_id inner join Henkilon_patevyys hp on hp.opintosuoritusid=s.id inner join Patevyys p on p.id=hp.patevyysid where p.koodi='ja' -- ei jyrätä (ei pitäisi ollakaan samoissa tutkinnoissa and lastu is null -- lastu :: Ammatillinen opettajankoulutus, opinto-ohjaaja Pätevyyteen tähtäävät opinnot set lastu='4' inner join Opintosuoritus s on s.opiskeluoikeusid = T.opiskeluoikeus_id inner join Henkilon_patevyys hp on hp.opintosuoritusid=s.id inner join Patevyys p on p.id=hp.patevyysid where p.koodi='jc' -- ei jyrätä (ei pitäisi ollakaan samoissa tutkinnoissa and lastu is null -- lastu :: Ammatillinen opettajankoulutus, erityisopettaja Pätevyyteen tähtäävät opinnot set lastu='5' inner join Opintosuoritus s on s.opiskeluoikeusid = T.opiskeluoikeus_id inner join Henkilon_patevyys hp on hp.opintosuoritusid=s.id inner join Patevyys p on p.id=hp.patevyysid where p.koodi='jb' -- ei jyrätä (ei pitäisi ollakaan samoissa tutkinnoissa and lastu is null -- NB! AMK-OPE poikkeus vuoden 2015 tutkinnoille.

-- Poimitaan saavutetut pätevyystiedot opiskeluoikeudesta liittyen ammatilliseen opettajankoulutukseen -- lastu :: Ammatillinen opettajankoulutus, pedagogiset opinnot Pätevyyteen tähtäävät opinnot set lastu='3' inner join Opiskeluoikeusjakso oj on oj.opiskeluoikeusid = T.opiskeluoikeus_id inner join Opiskeluoikeusjakson_patevyys jp on jp.opiskeluoikeusjaksoid = oj.id inner join Patevyys p on p.id=jp.patevyysid where p.koodi='ja' -- ei jyrätä (ei pitäisi ollakaan samoissa tutkinnoissa and lastu is null -- lastu :: Ammatillinen opettajankoulutus, opinto-ohjaaja Pätevyyteen tähtäävät opinnot set lastu='4' inner join Opiskeluoikeusjakso oj on oj.opiskeluoikeusid = T.opiskeluoikeus_id inner join Opiskeluoikeusjakson_patevyys jp on jp.opiskeluoikeusjaksoid = oj.id inner join Patevyys p on p.id=jp.patevyysid where p.koodi='jc' -- ei jyrätä (ei pitäisi ollakaan samoissa tutkinnoissa and lastu is null -- lastu :: Ammatillinen opettajankoulutus, erityisopettaja Pätevyyteen tähtäävät opinnot set lastu='5' inner join Opiskeluoikeusjakso oj on oj.opiskeluoikeusid = T.opiskeluoikeus_id inner join Opiskeluoikeusjakson_patevyys jp on jp.opiskeluoikeusjaksoid = oj.id inner join Patevyys p on p.id=jp.patevyysid where p.koodi='jb' -- ei jyrätä (ei pitäisi ollakaan samoissa tutkinnoissa

and lastu is null -- / 2015 poikkeus amk-ope Rahoituslähde (rahlahde Haetaan rahoituslähde-tieto sellaisenaan tiedetyn opiskeluoikeuden opiskeluoikeusjaksosta. SQL -- rahlahde :: Rahoituslähde source set rahlahde=k.koodi inner join Opiskeluoikeusjakso oj on oj.opiskeluoikeusid=t.opiskeluoikeus_id inner join Rahoituslahde k on k.id=oj.rahoituslahdeid Expand Maksullisen tilauskoulutuksen sijaintimaa (tilmaa Tietovarannossa ei ko. tietoa ole. Koulutuskoodi (koulk Haetaan tieto suoraan kullakin rivillä tunnetulle opintosuoritukselle. SQL -- koulk set koulk=k.koodi inner join Opintosuoritus s on s.id=t.opintosuoritus_id inner join Tutkintonimike k on k.id=s.tutkintonimikeid where 1=1 -- jos ei jo ole and koulk is null Expand source Opintopisteet Oma temp-taulu, joka nopeuttaa oleellisesti kyselyitä. Viedään temp-tauluun kaikki lehtitason muu opintosuoritus -lajiset opintosuoritukset, jotka liittyvät perusjoukkoon valittuun suoritettuun tutkintoon.

NB! Kaikki opintopisteet lasketaan kokonaislukuna. Tämä siis siten, että opintopisteet lasketaan yhteen, jonka jälkeen saatu summa pyöristetään kokonaisluvuksi. Seuraavat opintopistetiedot täytetään tässä "yhdessä nipussa": Suoritettavien opintojen laajuus (oplaaj (laajuus Haetaan tutknto-opintosuoritukseen liittyvästä opiskeluoikeudesta tutkinnon laajuus, josta vähennetään tutkintoon liitettyjen ennen opiskeluoikeuden alkamista ja mahdollista siirtopäivää suoritettujen hyväksiluettujen opintosuoritusten opintopisteet. Suoritettavien opintojen laajuus -tiedon mennessä negatiiviseksi, arvo muutetaan nollaksi (0. Omassa ammattikorkeakoulussa suoritetut opintopisteet (opoamk Mikäli suoritusta ei luokitella muihin kategorioihin, tulee suorituksen opintopisteet tähän kategoriaan. Eli tämä on ns. oletuskategoria. Muissa ammattikorkeakouluissa suoritetut opintopisteet (opmamk Mikäli suorituksen järjestävä-roolisista (tai hyväksiluetun opintosuorituksen tapauksessa lähde-roolin organisaatioista löytyy oppilaitostyypiltään 41='Ammattikorkeakoulu' oleva organisaatio, joka ei ole sama kuin kenen tietoja nyt käsitellään, lasketaan opintopisteet tähän kategoriaan. Yliopistoissa suoritetut opintopisteet (opylio Mikäli suorituksen järjestävä-roolisista (tai hyväksiluetun opintosuorituksen tapauksessa lähde-roolin organisaatioista löytyy oppilaitostyypiltään 42='Yliopisto' tai 43='Sotilaskorkeakoulut' oleva organisaatio, joka ei ole sama kuin kenen tietoja nyt käsitellään, lasketaan opintopisteet tähän kategoriaan. Yleissivistävissä ja ammatillisissa oppilaitoksissa suoritetut opintopisteet (opylei Mikäli suorituksen järjestävä-roolisista (tai hyväksiluetun opintosuorituksen tapauksessa lähde-roolin organisaatioista löytyy oppilaitostyypiltään (63,64,66,99,Muu oleva organisaatio, joka ei ole sama kuin kenen tietoja nyt käsitellään, lasketaan opintopisteet tähän kategoriaan. Mikäli suorituksen järjestävä-roolisista (tai hyväksiluetun opintosuorituksen tapauksessa lähde-roolin organisaatioista löytyy organisaatio joka ei ole tyypiltään 41='Ammattikorkeakoulu', 42='Yliopisto' tai 43='Sotilaskorkeakoulut', tai organisaatio itsessään on 63='Kansanopistot', 64='Kansalaisopistot', 66='Kesäyliopistot', 99='Muut oppilaitokset' tai Muu='Pienet oppilaitokset ja koulutuksenjärjestäjät (alle 5 opiskelijaa', ja organisaatio ei ole sama kuin minkä tahansa korkeakoulun tiedot tietovarannossa (varmuuden vuoksi tarkistus ja organisaatio itsessään ei ole 41='Ammattikorkeakoulu', 42='Yliopisto', 43='Sotilaskorkeakoulut', UK='Ulkomainen korkeakoulu' UM='Ulkomainen muu oppilaitos' tai XX='Muodollisen koulutuksen ulkopuolella', ja organisaatio ei ole sama kuin kenen tietoja nyt käsitellään lasketaan opintopisteet tähän kategoriaan. Ulkomailla suoritetut opintopisteet (opulk Mikäli suorituksen järjestävä-roolisista (tai hyväksiluetun opintosuorituksen tapauksessa lähde-roolin organisaatioista löytyy organisaatio UK='Ulkomainen korkeakoulu' tai UM='Ulkomainen muu oppilaitos', joka ei ole sama kuin kenen tietoja nyt käsitellään, lasketaan opintopisteet tähän kategoriaan. Muualla suoritetut opintopisteet (opmuu Mikäli suorituksen järjestävä-roolisista (tai hyväksiluetun opintosuorituksen tapauksessa lähde-roolin organisaatioista löytyy organisaatio XX='Muodollisen koulutuksen ulkopuolella', joka ei ole sama kuin kenen tietoja nyt käsitellään, lasketaan opintopisteet tähän kategoriaan. Opintopisteet yhteensä (opyht Opintopisteet yhteensä on kaikkien tutkinto-opintosuoritukseen sisältyvien (aputaulussa olevien lehtitaso opintosuoritusten laajuuksien summa. Tutkinnon opintopisteet ( Tämä tieto on uusi (12.1.2015 ja tullut mukaan "tiedoksi", koska sama tieto lisättiin myös yliopisto-puolelle.

Tieto on suoraan tutkinto-opintosuoritukselle (laji=1 eli tiedonkeruun perusjoukon rivin tieto tallennettu laajuus-tieto. SQL Expand -- Opintopisteitä varten tehdä oma erillinen aputaulu source -- Temp-taulu tietojen valintaa varten -- NB! param-taulussa saa olla vain yksi rivi! IF OBJECT_ID('tempdb..#pisteet' IS NOT NULL BEGIN truncate table #pisteet drop table #pisteet if @debug<>0 print convert(varchar,getdate(,120+' DROP temp-taulu pisteet' END create table #pisteet ( opiskelija_id int not null, opiskeluoikeus_id int, opintosuoritus_id int not null, laajuus decimal(18,6 not null, suoritus_pvm date not null, hyvaksiluettu_pvm date, oamk bit, mamk bit, ylio bit, ylei bit, ulk bit, muu bit if @debug<>0 print convert(varchar,getdate(,120+' CREATE temp-taulu pisteet' -- TODO: OSUUDET insert into #pisteet (opiskelija_id,opiskeluoikeus_id,opintosuoritus_id,laajuus,suoritus_pvm,hyvaksiluettu_ pvm,oamk,mamk,ylio,ylei,ulk,muu select s.opiskelijaid as opiskelija_id, s.opiskeluoikeusid as opiskeluoikeus_id, s.id as opintosuoritus_id, s.laajuus as laajuus, s.suorituspaivamaara as suoritus_pvm, shl.hyvaksilukupaivamaara as hyvaksiluettu_pvm -- opintopisteiden jaottelu -- oma amk: käytetään halpaa logiikkaa, eli yhteensä miinus muut. tässä null kunnes..!, null as oamk --,(case when s.id NOT IN ( -- select sg.opintosuoritusid -- from Op_suorituksen_organisaatio sg -- inner join Organisaatio g on g.id=sg.organisaatioid -- inner join Organisaation_rooli gr on gr.id=sg.organisaation_rooliid -- where sg.opintosuoritusid=s.id -- and gr.koodi='2' -- järjestävä -- and g.koodi<>(select kk from #param -- -- then 1 else 0 end -- as oamk --muu amk,coalesce((select distinct 1 from Op_suorituksen_organisaatio sg

inner join Organisaatio g on g.id=sg.organisaatioid inner join Organisaation_rooli gr on gr.id=sg.organisaation_rooliid where sg.opintosuoritusid=s.id and(gr.koodi='2' -- järjestävä or(gr.koodi='3' and shl.hyvaksilukupaivamaara is not null and(g.koodi in ( SELECT Organisaatio_koodi FROM Yhteiset.Koodistot.Organisaatio_Oppilaitostyyppi WHERE Oppilaitostyyppi_koodi='41' or g.koodi='41' -- ei oma korkeakoulu and g.koodi <> (select OrganisaatioKoodi from Yhteiset.Asetukset.Instanssit where DB=(select org from #param -- varmuuden vuoksi/yhteentoimivuus and g.koodi <> (select kk from #param,0 as mamk --ylio,coalesce((select distinct 1 from Op_suorituksen_organisaatio sg inner join Organisaatio g on g.id=sg.organisaatioid inner join Organisaation_rooli gr on gr.id=sg.organisaation_rooliid where sg.opintosuoritusid=s.id and(gr.koodi='2' -- järjestävä or(gr.koodi='3' and shl.hyvaksilukupaivamaara is not null and(g.koodi in ( SELECT Organisaatio_koodi FROM Yhteiset.Koodistot.Organisaatio_Oppilaitostyyppi WHERE Oppilaitostyyppi_koodi='42' OR Oppilaitostyyppi_koodi='43' or g.koodi='42' or g.koodi='43' -- ei oma korkeakoulu and g.koodi <> (select OrganisaatioKoodi from Yhteiset.Asetukset.Instanssit where DB=(select org from #param -- varmuuden vuoksi/yhteentoimivuus and g.koodi <> (select kk from #param,0 as ylio --ylei,coalesce((select distinct 1 from Op_suorituksen_organisaatio sg inner join Organisaatio g on g.id=sg.organisaatioid inner join Organisaation_rooli gr on gr.id=sg.organisaation_rooliid where sg.opintosuoritusid=s.id and(gr.koodi='2' -- järjestävä or(gr.koodi='3' and shl.hyvaksilukupaivamaara is not null --DONE-ish? opplaittyyp tarkistus! and(g.koodi in ( SELECT Organisaatio_koodi FROM Yhteiset.Koodistot.Organisaatio_Oppilaitostyyppi WHERE Oppilaitostyyppi_koodi is not null and Oppilaitostyyppi_koodi not in ('41','42','43' or g.koodi in ('63','64','66','99','Muu' -- leikataan nämä pois and g.koodi not in (select Asetus from Yhteiset.Asetukset.Ohjaus_Parametrit p where p.toiminto='oppilaitostyyppi'

and g.koodi not in ('41','42','43','UK','UM','XX' --and g.koodi in (select Koodi from Organisaatio g2 where len(koodi=5 or Koodi in('63','64','66','99','muu' -- ei oma korkeakoulu and g.koodi <> (select OrganisaatioKoodi from Yhteiset.Asetukset.Instanssit where DB=(select org from #param -- varmuuden vuoksi/yhteentoimivuus and g.koodi <> (select kk from #param,0 as ylei --ulk,coalesce((select distinct 1 from Op_suorituksen_organisaatio sg inner join Organisaatio g on g.id=sg.organisaatioid inner join Organisaation_rooli gr on gr.id=sg.organisaation_rooliid where sg.opintosuoritusid=s.id and(gr.koodi='2' -- järjestävä or(gr.koodi='3' and shl.hyvaksilukupaivamaara is not null --ei tarvita: and g.koodi not in (SELECT Organisaatio_koodi FROM Yhteiset.Koodistot.Organisaatio_Oppilaitostyyppi and g.koodi in ('UK','UM' -- ei oma korkeakoulu and g.koodi <> (select OrganisaatioKoodi from Yhteiset.Asetukset.Instanssit where DB=(select org from #param -- varmuuden vuoksi/yhteentoimivuus and g.koodi <> (select kk from #param,0 as ulk --muu,coalesce((select distinct 1 from Op_suorituksen_organisaatio sg inner join Organisaatio g on g.id=sg.organisaatioid inner join Organisaation_rooli gr on gr.id=sg.organisaation_rooliid where sg.opintosuoritusid=s.id and(gr.koodi='2' -- järjestävä or(gr.koodi='3' and shl.hyvaksilukupaivamaara is not null and g.koodi in ('XX' -- ei oma korkeakoulu and g.koodi <> (select OrganisaatioKoodi from Yhteiset.Asetukset.Instanssit where DB=(select org from #param -- varmuuden vuoksi/yhteentoimivuus and g.koodi <> (select kk from #param,0 as muu from Opintosuoritus s inner join Opintosuorituksen_laji sl on sl.id=s.opintosuorituksen_lajiid and sl.koodi='2' --muu opintosuoritus -- HYVÄKSILUETTU left join Opsuorituksen_hyvaksiluku shl on shl.opintosuoritusid=s.id cross join #param -- saa olla vain yksi rivi! where 1=1 -- lehtitaso, tai ei ainakaan vanhempi (lajeja 3 ja 4 ei huomioida and s.id not in ( select ss.opintosuoritusid from Op_suor_sisaltyvyys ss -- 2015-01-19: lajeja 3 ja 4 ei huomioida where ss.opintosuoritusid not in ( select sss.id from Opintosuoritus sss inner join Opintosuorituksen_laji sssl on sssl.id=sss.opintosuorituksen_lajiid where sssl.koodi in ('3','4'

CREATE NONCLUSTERED INDEX IX_pisteet_opiskelija_id ON #pisteet (opiskelija_id INCLUDE (opiskeluoikeus_id,opintosuoritus_id,laajuus,suoritus_pvm CREATE NONCLUSTERED INDEX IX_pisteet_suoritus_pvm ON #pisteet (suoritus_pvm INCLUDE ([opiskelija_id],[opiskeluoikeus_id],[laajuus] CREATE NONCLUSTERED INDEX IX_pisteet_hyvaksiluettu_pvm ON #pisteet (hyvaksiluettu_pvm INCLUDE ([opiskelija_id],[opiskeluoikeus_id],[laajuus],[suoritus_pvm] --select * from #pisteet -- laajuus :: Suoritettavien opintojen laajuus -- Tilastokeskuksen ohjeen mukaanhan: -- Suoritettavien opintojen laajuus opintopisteinä (=tutkinnon laajuudesta vähennetty aiemmin suoritetut hyväksilukujen laajuudet set laajuus=cast( cast(o.laajuus as int - coalesce( ( select cast(cast(round(sum( case when s.suoritus_pvm <= o.alkamispaivamaara and s.suoritus_pvm <= coalesce(o.siirtopaivamaara,'9999-01-01' and s.hyvaksiluettu_pvm <= #param.vuosi+'-12-31' --#param.tilpvm then s.laajuus else 0 end,0 as int as varchar from #pisteet s inner join Opiskeluoikeus o on o.id=s.opiskeluoikeus_id --voi tehdä amkeilla cross join #param -- saa olla vain yksi rivi! where s.opiskelija_id=t.opiskelija_id -- HYVÄKSILUETTU and s.hyvaksiluettu_pvm is not null and s.opiskeluoikeus_id=t.opiskeluoikeus_id group by s.opiskelija_id,0 as varchar --select distinct o.laajuus inner join Opiskeluoikeus o on o.id=t.opiskeluoikeus_id where o.laajuus is not null -- NB! 20150129/LJ: Negatiiviset suoritettavien opintojen laajuus -tiedot nollaksi! set laajuus=cast(0 as varchar where laajuus is not null and cast(laajuus as int < 0 --- -- Opinnot, suoritukset, opintopisteet ---

-- -- VIRTA-625: Lisätään tutkinto-opintosuorituksen opintopisteet mukaan tiedonkeruuseen. set optutk = cast(cast(round(s.laajuus,0 as int as varchar inner join Opintosuoritus s on s.id=t.opintosuoritus_id where T.optutk is null -- kategoriat ja yhteensä (summa lehtitasolta set opoamk=( select cast(cast(round(sum( --case when s.oamk = 1 then s.laajuus else 0 end,0 as int as varchar case when s.mamk=0 and s.ylio=0 and s.ylei=0 and s.ulk=0 and s.muu=0 then s.laajuus else 0 end,0 as int as varchar from #pisteet s where s.opiskelija_id=t.opiskelija_id and s.opiskeluoikeus_id=t.opiskeluoikeus_id group by s.opiskelija_id, opmamk=( select cast(cast(round(sum( case when s.mamk = 1 then s.laajuus else 0 end,0 as int as varchar from #pisteet s where s.opiskelija_id=t.opiskelija_id and s.opiskeluoikeus_id=t.opiskeluoikeus_id group by s.opiskelija_id, opylio=( select cast(cast(round(sum( case when s.ylio = 1 then s.laajuus else 0 end,0 as int as varchar from #pisteet s where s.opiskelija_id=t.opiskelija_id and s.opiskeluoikeus_id=t.opiskeluoikeus_id group by s.opiskelija_id, opylei=( select cast(cast(round(sum( case when s.ylei = 1 then s.laajuus else 0 end,0 as int as varchar from #pisteet s where s.opiskelija_id=t.opiskelija_id and s.opiskeluoikeus_id=t.opiskeluoikeus_id group by s.opiskelija_id, opulk=( select cast(cast(round(sum( case when s.ulk = 1 then s.laajuus else 0 end,0 as int as varchar from #pisteet s where s.opiskelija_id=t.opiskelija_id and s.opiskeluoikeus_id=t.opiskeluoikeus_id group by s.opiskelija_id, opmuu=( select cast(cast(round(sum( case when s.muu = 1 then s.laajuus else 0 end,0 as int as varchar from #pisteet s where s.opiskelija_id=t.opiskelija_id

and s.opiskeluoikeus_id=t.opiskeluoikeus_id group by s.opiskelija_id, opyht=( select cast(cast(round(sum( s.laajuus,0 as int as varchar from #pisteet s where s.opiskelija_id=t.opiskelija_id and s.opiskeluoikeus_id=t.opiskeluoikeus_id group by s.opiskelija_id

where opyht is null Tulos SQL Expand select coalesce(tunn,'' as "Oppilaitostunnus" source,coalesce(koultyp,'' "Koulutustyyppi",coalesce(kiel,'' "Koulutuksen opetuskieli" --kkieli,coalesce(kkun,'' "Opiskelukunta" --kkun,coalesce(ht,'' "Henkilötunnus" --ht,coalesce(snimi,'' "Sukunimi" --snimi,coalesce(enimi,'' "Etunimet" --enimi,coalesce(sp,'' "Sukupuoli" --sp,coalesce(aikieli,'' "Äidinkieli" --aikieli,coalesce(askunta,'' "Opiskelijan vakinainen asuinkunta" --askun,coalesce(kansal,'' "Opiskelijan kansalaisuus" --kansal,coalesce(kirtupv,'' "Ko. tutkintoon kirjoihintuloajankohta ko. ammattikorkeakoulussa" --kirtupv,coalesce(suorpvm,'' "Suorituspäivämäärä",coalesce(opoamk,'' "Omassa ammattikorkeakoulussa suoritetut opintopisteet",coalesce(opmamk,'' "Muissa ammattikorkeakouluissa suoritetut opintopisteet",coalesce(opylio,'' "Yliopistoissa suoritetut opintopisteet",coalesce(opylei,'' "Yleissivistävissä ja ammatillisissa oppilaitoksissa suoritetut opintopisteet",coalesce(opulk,'' "Ulkomailla suoritetut opintopisteet",coalesce(opmuu,'' "Muualla suoritetut opintopisteet",coalesce(opyht,'' "Opintopisteet yhteensä",coalesce(lasnalk,'' "Läsnäololukukaudet" --lasnalk,coalesce(poissalk,'' "Poissaololukukaudet" --poissalk,coalesce(laajuus,'' "Suoritettavien opintojen laajuus" --oplaaj,coalesce(kirtu1pv,'' "Ensimmäinen kirjoihintuloajankohta ko. tutkintoon" --kirtu1pv,coalesce(lastu,'' "Lastentarhanopettajan pätevyyteen tähtäävät opinnot" --opettaja,coalesce(rahlahde,'' "Rahoituslähde",coalesce(tilmaa,'' "Maksullisen koulutuksen sijaintimaa",coalesce(koulk,'' "Koulutuskoodi" -- VIRTA-625: tutkinto-opintosuorituksen opintopisteet,coalesce(optutk,'' "Tutkinnon opintopisteet" --( -- korkeakoulujen pyynnöstä, lisäkentät,t.opiskelijaavain "Opiskelija-avain",T.opiskeluoikeusavain "Opiskeluoikeusavain",T.opintosuoritusavain "Opintosuoritusavain" where 1=1 order by ht,suorpvm,koulk

Tarkistus Suoritetaan tarkistuksia poimittuihin tietoihin liittyen. Pohjaksi on otettu Tilastokeskuksen aiemmin tekemän tarkistusohjelman kuvaus. NB! Tarkistuksia tulee jalostaa vielä. Nyt on kuitenkin jotakin pohjaa. Lisäksi tarkistuksia haluttaneen lisää. Dokumentointia ei vielä ole yritettykään tehdä kattavaksi, sillä niin paljon tarkennusta vaativia kohtia on nyt. SQL Expand --- source -- TARKISTUS --- /* Tilastokeskuksen tarkistusohjelman suorittamat tarkistukset Kun amk-tutkintotiedonkeruun aineisto on toimitettu TK:n palvelimelle, virheentarkistusohjelma tarkistaa seuraavat asiat. Kunkin virhetyypin yhteydessä on mainittu sen nimike palautetulosteessa. TUNN = tunn (oppilaitostunnus on virheellinen onko oppilaitostunnus jokin voimassaolevista 5-numeroisista tunnuksista AVAIN = oltunn - tutk - ko - sv (tutkintokoodi - koulutusohjelma - suuntautumisvaihtoehto -koodikombinaatio on virheellinen avaimen (oppilaitos-tutkinto-ko-sv perusteella verrataan opetushallinnon koulutusohjelmapäätöksiin AVAIN2 = oltunn - tutk - ko - sv - koulk (tutkintokoodi - koulutusohjelma - suuntautumisvaihtoehto - koulutuskoodi -koodikombinaatio on virheellinen Jos koulutuskoodi on merkitty, niin avaimen (oppilaitos-tutkinto-ko-sv-koulutuskoodi perusteella verrataan opetushallinnon koulutusohjelmapäätöksiin, jotka on kooditettu Tilastokeskuksen koulutuskoodilla TUTK = tutkinto virheellinen verrataan tutkintokoodia koulutusohjelmapäätöksissä oleviin mahdollisiin tutkintokoodeihin KO = koulutusohjelma virheellinen verrataan ko-koodia koulutusohjelmapäätöksissä oleviin mahdollisiin ko-koodeihin SV = suuntautumisvaihtoehto virheellinen verrataan sv-koodia koulutusohjelmapäätöksissä oleviin mahdollisiin sv-koodeihin KOULTYP = koulutustyyppi on virheellinen KOULTYP1 = muuttujan arvo ei ole 1, 2, 3, 5, 6 eikä 7 KOULTYP2 = erikoistumisopinnoissa ja opettajankoulutuksessa koodi on joko 3 tai 5, muuten 1, 2 tai 6 KOULTYP3= koulutusohjelma ei sallittu erikoistumisopinnoissa tai opettajankoulutuksessa SRHTUP = ilmoitus sairaanhoitajista, joilla myös kätilön, ensihoitajan tai terveydenhoitajan tutkinto (tuplasairaanhoitajat KKIELI = kkieli (koulutuksen opetuskieli -koodiarvo on virheellinen koulutusohjelman opetuskieli löytyy opm:n päätöksistä (jos koulutusohjelmaa ei löydy, virhettä ei enää erikseen listata tässä kohdassa. KKUN = kkun (koulutuksen sijaintikunta -koodiarvo on virheellinen Verrataan toimilupapäätöksiin, onko amk:lla lupa järjestää koulutusta kyseisessä kunnassa.ammattikorkeakoulun koulutustehtävässä määrättävä sijaintipaikka koskee ammattikorkeakoulututkintoon johtavaa nuorten koulutuksena järjestettävää koulutusta ja ylempään ammattikorkeakoulututkintoon johtavaa koulutusta. KKUN2 = kkun2 (kunta -koodiarvo on virheellinen Verrataan voimassa olevaan kuntaluokitukseen ( koulutustyyppi 2, 3 ja 5. HT = henkilötunnus (tai sukupuoli on virheellinen tai puutteellinen HT1 = Puutteelliset henkilötunnukset - loppuosa puuttuu HT2 = henkilötunnukset, joiden jakojäännös ei täsmää - loppuosa virheellinen HT3 = sukupuolitieto virheellinen AIKIELI = äidinkielitieto virheellinen