Ammattikorkeakoulujen ja yliopistojen rahoitusmalliin tulevat mutokset vuodesta 2025 alkaen  aiheuttavat joitakin muutoksia tavoiteajassa tutkinnon suorittaneet laskentaan.

Tulevia muutoksia on käsitelty Viranomaistiedonkeruiden asiantuntijaryhmässä 25.1.2024 ja 7.3.2024

CSC on tuottanut tämän laskennan rinnalle testilaskennan, joissa on huomioitu  OKM:n asetusluonnosten sisältämät muutokset poiminnan määrittelyihin.

Testilaskennasta muodostettu raporttiluonnos on viety Vipusen extranet-osioon https://extra.vipunen.fi/_layouts/15/xlviewer.aspx?id=/Raportit/Tavoiteajassa%20tutkinnon%20suorittaneet%20-%20uusi%20rahoitusmalli.xlsb

Huom! Laskentamäärittelyt voivat vielä tarkentua ja niissä voi olla puutteita

AMK laskentakriteerit:

1 momentin 2 kohdassa tarkoitettua tutkintojen lukumäärää laskettaessa ammattikorkeakoululain (932/2014) 14 §:ssä tarkoitetussa 
tavoitteellisessa suorittamisajassa suoritettujen tutkintojen lukumäärää painotetaan kertoimella 1,8 
ja 
enintään 12 kuukautta tavoitteellista suorittamisaikaa pidemmässä ajassa suoritettujen tutkintojen lukumäärää painotetaan kertoimella 1,3. 

Jos tutkinnon suorittanut on aiemmin saanut samassa ammattikorkeakoulussa samaa tutkintoa (sama 6-numeroinen koulutuskoodi) koskevan opiskeluoikeuden tai siirtynyt suorittamaan tutkintoa siirto-opiskelijana, 
opintojen suorittamisajan laskenta aloitetaan opiskelijan ensimmäisen opiskeluoikeuden alusta. 

Jos tutkinnon suorittanut on aiemmin suorittanut suomalaisessa korkeakoulussa alemman korkeakoulututkinnon tai ammattikorkeakoulututkinnon, toista tutkintoa painotetaan lisäksi kertoimella 0,5.

Edellä 1 momentin 2 kohdassa tarkoitetut tutkinnot jaetaan asetuksen liitteen 3 kohdan mukaisesti kolmeen eri ryhmään, joista 

ryhmään A kuuluvien tutkintojen lukumäärää painotetaan kertoimella 3
ryhmään B kuuluvien tutkintojen lukumäärää painotetaan kertoimella 1,75 ja 
ryhmään C kuuluvien tutkintojen lukumäärää painotetaan kertoimella 1.

Jos ammattikorkeakoulun kolmen vuoden tutkintototeuman keskiarvo ylittää 1 momentin 2 kohdassa tarkoitetun tutkintomäärien rahoitusrajan, rahoitusrajan mukaista koulutusalaryhmän tutkintomäärää 
painotetaan 4 ja 5 momentin mukaisten kertoimien keskiarvolla kaikista koulutusalaryhmän tutkinnoista.

YO laskentakriteerit:


Edellä 1 momentin 2 ja 3 kohdassa tarkoitettujen tutkintojen lukumäärää laskettaessa yliopistolain (558/2009) 40 §:ssä tarkoitetussa 
tavoitteellisessa suorittamisajassa suoritettujen tutkintojen lukumäärää painotetaan kertoimella 1,8 ja 
enintään 12 kuukautta tavoitteellista suorittamisaikaa pidemmässä ajassa suoritettujen tutkintojen lukumäärää painotetaan kertoimella 1,3

Jos tutkinnon suorittanut on aiemmin saanut samassa yliopistossa samaa tutkintoa (sama 6-numeroinen koulutuskoodi) koskevan opiskeluoikeuden tai siirtynyt suorittamaan tutkintoa siirto-opiskelijana, 
opintojen suorittamisajan laskenta aloitetaan opiskelijan ensimmäisen opiskeluoikeuden alusta. 

Jos ylemmän korkeakoulututkinnon suorittanut on aiemmin suorittanut suomalaisessa korkeakoulussa ylemmän korkeakoulututkinnon tai ylemmän ammattikorkeakoulututkinnon taikka jos alemman korkeakoulututkinnon suorittanut on aiemmin suorittanut suomalaisessa korkeakoulussa alemman korkeakoulututkinnon 
tai ammattikorkeakoulututkinnon, toista tutkintoa painotetaan lisäksi kertoimella 0,5.

Edellä 1 momentin 2 ja 3 kohdassa tarkoitetut tutkinnot jaetaan liitteen 3 kohdan mukaisesti kolmeen eri ryhmään, joista 

ryhmään A kuuluvien tutkintojen lukumäärää painotetaan kertoimella 3
ryhmään B kuuluvien tutkintojen lukumäärää kertoimella 1,75 ja 
ryhmään C kuuluvien tutkintojen lukumäärää kertoimella 1

Jos yliopiston kolmen vuoden tutkintototeuman keskiarvo ylittää 1 momentin 2 kohdassa tarkoitetun tutkintomäärien rahoitusrajan, 
rahoitusrajan mukaista koulutusalaryhmän tutkintomäärää painotetaan 4 ja 5 momentin mukaisten kertoimien keskiarvolla kaikista koulutusalaryhmän tutkinnoista.


Muutokset aiempaan

  • Tavoiteajassa suoritettu tutkinto kerroin muuttuu  1.5 => 1.8
  • Aikaisempi tutkinto kerroin muuttuu  0.7 => 0.5
  • ryhmään A kuuluvien tutkintojen lukumäärää painotetaan kertoimella 3
  • ryhmään B kuuluvien tutkintojen lukumäärää (Pysyy ennallaan) painotetaan kertoimella 1.75
  • ryhmään C kuuluvien tutkintojen lukumäärää painotetaan kertoimella 1
  • Artenomi (AMK)  621101 siirtyy 1-kertoimen C-ryhmästä ryhmään B, kerroin 1.75.





Kertoimet
 PROCEDURE [dbo].[sp_Tavoiteajassa_valmistuneet_kertoimet] 
AS

-- Päivitetty 24.2.2024  tavoiteajassa suoritettu on kertoimella 1.8   1.5 => 1.8
--				Aikaisempi tutkinto kerroin muuttuu  0.7 => 0.5
-- 
--				ryhmään A kuuluvien tutkintojen lukumäärää painotetaan kertoimella 3 
--				ryhmään B kuuluvien tutkintojen lukumäärää painotetaan kertoimella 1.75 ja 
--				ryhmään C kuuluvien tutkintojen lukumäärää painotetaan kertoimella 1

 -- Tutkinto suoritettu tavoiteajassa: kerroin 1.8 
 -- 2024-02-24 1.5 => 1.8
 UPDATE T
 SET T.tutkintokerroin = T.tutkintokerroin * 1.8	-- 2024-02-24 1.5 => 1.8
 FROM tavoiteajassa_valmistuneet T
 WHERE  T.tavoite_ajassa_valmistunut = 1


 -- Tutkinto suoritettu enintään enintään 12 kk yli: 1.3 
 -- Kertoin set = 1 tilastointia varten
 UPDATE T 
 SET 	T.kertoinSet = 1
		, T.tutkintokerroin = T.tutkintokerroin * 1.3
 FROM tavoiteajassa_valmistuneet T
 WHERE ( T.kaytetty_aika_kk - T.tavoiteaika_kuukausia) <=  12
 AND ( T.kaytetty_aika_kk - T.tavoiteaika_kuukausia) > 0
 AND T.tavoite_ajassa_valmistunut = 0
 AND  T.kertoinSet = 0


 -- Tutkinto suoritettu enintään enintään 2 lukukautta yli: 1.3 
 -- Kertoin set = 2 tilastointia varten montako ei ollut kertoinset 2
 UPDATE T
 SET T.kertoinSet = 2	
		, T.tutkintokerroin = T.tutkintokerroin * 1.3
 FROM tavoiteajassa_valmistuneet T
 WHERE ( T.lasnaoloLukukaudet - T.tavoite_lukukaudet) <=  2
 AND ( T.lasnaoloLukukaudet - T.tavoite_lukukaudet) > 0
 AND  T.tavoite_ajassa_valmistunut = 0
 AND  T.kertoinSet = 0



--Tutkinto suoritettu yli 12 kk yli: 1.0
UPDATE T
SET T.tutkintokerroin = T.tutkintokerroin * 1.0
FROM tavoiteajassa_valmistuneet T
WHERE ( T.kaytetty_aika_kk - T.tavoiteaika_kuukausia) >  12
AND ( T.kaytetty_aika_kk - T.tavoiteaika_kuukausia) > 0
AND T.tavoite_ajassa_valmistunut = 0



-- Mikäli tutkinnon suorittaja on aiemmin suorittanut suomalaisessa korkeakoulussa ylemmän korkeakoulututkinnon, painotetaan ko. tutkintoa kertoimella 0,7 aiempi tutkinto
-- 2024-02-24  0.7 => 0.5
UPDATE T
SET T.tutkintokerroin = T.tutkintokerroin * 0.5		-- 2024-02-24  0.7 => 0.5
FROM tavoiteajassa_valmistuneet T
WHERE  T.on_aiempi_tutkinto = 1


-- Ryhmä A
-- 2024-02-24 ryhmään A kuuluvien tutkintojen lukumäärää painotetaan kertoimella 3  
UPDATE T
SET T.tutkintokerroin = T.tutkintokerroin * 3
FROM tavoiteajassa_valmistuneet T
WHERE  T.tutkintokoodi IN (SELECT koodi FROM [tavoiteajassa_tutkintoryhmat] WHERE ryhma = 'A')  


-- Ryhmä B
-- 2024-02-24 Pysyy ennallaan
UPDATE T
SET T.tutkintokerroin = T.tutkintokerroin * 1.75
FROM tavoiteajassa_valmistuneet T
WHERE  T.tutkintokoodi IN (SELECT koodi FROM [tavoiteajassa_tutkintoryhmat] WHERE ryhma = 'B')


-- Ryhmä C
-- 2024-02-24 ryhmään C kuuluvien tutkintojen lukumäärää painotetaan kertoimella 1 
UPDATE T
SET T.tutkintokerroin = T.tutkintokerroin * 1
FROM tavoiteajassa_valmistuneet T
WHERE  T.tutkintokoodi IN (SELECT koodi FROM [tavoiteajassa_tutkintoryhmat] WHERE ryhma = 'C')




Yliopistossa suoritettujen tutkintojen ryhmät koulutuksen rahoitusosuuden laskennassa

Ryhmä A

Arkkitehti
Eläinlääketieteen lisensiaatti
Hammaslääketieteen lisensiaatti
Kuvataiteen maisteri
Lääketieteen lisensiaatti
Maisema-arkkitehti
Musiikin maisteri
Taiteen maisteri
Tanssitaiteen maisteri
Teatteritaiteen maisteri
Eläinlääketieteen kandidaatti
Kuvataiteen kandidaatti
Musiikin kandidaatti
Taiteen kandidaatti
Tanssitaiteen kandidaatti
Teatteritaiteen kandidaatti
Tekniikan kandidaatti, arkkitehtuuri

Ryhmä B

Diplomi-insinööri, automaatiotekniikka
Diplomi-insinööri, biotekniikka
Diplomi-insinööri, energiatekniikka
Diplomi-insinööri, kaivos- ja rikastustekniikka
Diplomi-insinööri, kemian tekniikka
Diplomi-insinööri, konetekniikka
Diplomi-insinööri, maanmittaustekniikka
Diplomi-insinööri, materiaalitekniikka, kalliotekniikka
Diplomi-insinööri, muu ala
Diplomi-insinööri, prosessitekniikka
Diplomi-insinööri, puunjalostustekniikka
Diplomi-insinööri, rakennustekniikka, yhdyskuntatekniikka
Diplomi-insinööri, sähkötekniikka
Diplomi-insinööri, teknillinen fysiikka
Diplomi-insinööri, teknis-luonnontieteellinen koulutus
Diplomi-insinööri, tietoliikennetekniikka
Diplomi-insinööri, tietotekniikka
Diplomi-insinööri, ympäristötekniikka
Elintarviketieteiden maisteri
Filosofian maisteri, arkeologia
Filosofian maisteri, biologia
Filosofian maisteri, biotieteet, biokemia
Filosofian maisteri, elintarvike- ja ravitsemustieteet
Filosofian maisteri, fysiikka
Filosofian maisteri, geofysiikka
Filosofian maisteri, geologia
Filosofian maisteri, kemia
Filosofian maisteri, maantiede
Filosofian maisteri, matematiikka
Filosofian maisteri, meteorologia
Filosofian maisteri, muu luonnontieteellinen ala
Filosofian maisteri, tietojenkäsittelytiede
Filosofian maisteri, tilastotiede 
Filosofian maisteri, translationaalinen lääketiede
Filosofian maisteri, tähtitiede
Filosofian maisteri, ympäristötiede
Kasvatustieteiden maisteri, musiikinopettaja
Kauppatieteiden maisteri, tietojärjestelmätiede
Kauppatieteiden maisteri, tilastotiede
Liikuntatieteiden maisteri
Maatalous- ja metsätieteiden maisteri, biotekniikka
Maatalous- ja metsätieteiden maisteri, elintarvikeala
Maatalous- ja metsätieteiden maisteri, maatalous
Maatalous- ja metsätieteiden maisteri, metsätalous
Maatalous- ja metsätieteiden maisteri, muu ala
Maatalous- ja metsätieteiden maisteri, ympäristöala
Proviisori
Valtiotieteiden maisteri, tilastotiede
Elintarviketieteiden kandidaatti
Farmaseutti
Humanististen tieteiden kandidaatti, arkeologia
Humanististen tieteiden kandidaatti, teatteritiede
Kasvatustieteiden kandidaatti, musiikinopettaja 
Kauppatieteiden kandidaatti, tietojärjestelmätiede
Kauppatieteiden kandidaatti, tilastotiede
Liikuntatieteiden kandidaatti
Luonnontieteiden kandidaatti, biologia
Luonnontieteiden kandidaatti, biotieteet, biokemia
Luonnontieteiden kandidaatti, fysiikka
Luonnontieteiden kandidaatti, geofysiikka
Luonnontieteiden kandidaatti, geologia
Luonnontieteiden kandidaatti, kemia
Luonnontieteiden kandidaatti, maantiede
Luonnontieteiden kandidaatti, matematiikka
Luonnontieteiden kandidaatti, meteorologia
Luonnontieteiden kandidaatti, muu ala
Luonnontieteiden kandidaatti, tietojenkäsittelytiede
Luonnontieteiden kandidaatti, tilastotiede
Luonnontieteiden kandidaatti, tähtitiede
Luonnontieteiden kandidaatti, ympäristötiede
Maatalous- ja metsätieteiden kandidaatti, biotekniikka
Maatalous- ja metsätieteiden kandidaatti, elintarvikeala
Maatalous- ja metsätieteiden kandidaatti, maatalous
Maatalous- ja metsätieteiden kandidaatti, metsätalous
Maatalous- ja metsätieteiden kandidaatti, muu ala
Maatalous- ja metsätieteiden kandidaatti, ympäristöala
Tekniikan kandidaatti, automaatiotekniikka
Tekniikan kandidaatti, biotekniikka
Tekniikan kandidaatti, energiatekniikka
Tekniikan kandidaatti, kaivos- ja rikastustekniikka
Tekniikan kandidaatti, kemian tekniikka
Tekniikan kandidaatti, konetekniikka
Tekniikan kandidaatti, maanmittaustekniikka
Tekniikan kandidaatti, materiaalitekniikka, kalliotekniikka
Tekniikan kandidaatti, muu tai tuntematon tekniikka
Tekniikan kandidaatti, prosessitekniikka
Tekniikan kandidaatti, puunjalostustekniikka
Tekniikan kandidaatti, rakennustekniikka, yhdyskuntatekniikka
Tekniikan kandidaatti, sähkötekniikka
Tekniikan kandidaatti, teknillinen fysiikka
Tekniikan kandidaatti, teknis-luonnontieteellinen koulutus
Tekniikan kandidaatti, tietoliikennetekniikka
Tekniikan kandidaatti, tietotekniikka
Tekniikan kandidaatti, ympäristötekniikka
Tekniikan kandidaatti, muu prosessi- ja materiaalitekniikka
Valtiotieteiden kandidaatti, tilastotiede

Ryhmä C
muut alemmat ja ylemmät korkeakoulututkinnot


Ammattikorkeakoulussa suoritettujen tutkintojen ryhmät koulutuksen rahoitusosuuden laskennassa

Ryhmä A

Insinööri (AMK), merenkulku
Konservaattori (AMK)
Kuvataiteilija (AMK)
Merikapteeni (AMK)
Musiikkipedagogi (AMK)
Muusikko (AMK)
Tanssinopettaja (AMK)
Teatteri-ilmaisun ohjaaja (AMK)*        *) Tilastokeskuksen koulutusluokituksessa koodit 621501 ja 621502
Tulkki (AMK)
Viittomakielentulkki (AMK)


Ryhmä B

Agrologi (AMK)
Artenomi (AMK)
Bioanalyytikko (AMK)
Ensihoitaja (AMK)
Fysioterapeutti (AMK)
Hammasteknikko (AMK)
Hortonomi (AMK)
Iktyonomi (AMK)
Insinööri (AMK), automaatiotekniikka
Insinööri (AMK), bio- ja elintarviketekniikka
Insinööri (AMK), elektroniikka
Insinööri (AMK), energiatekniikka
Insinööri (AMK), graafinen ja viestintätekniikka
Insinööri (AMK), kemia
Insinööri (AMK), konetekniikka
Insinööri (AMK), kuljetustekniikka
Insinööri (AMK), liikenneala
Insinööri (AMK), logistiikka
Insinööri (AMK), LVI-tekniikka
Insinööri (AMK), maanmittaustekniikka
Insinööri (AMK), materiaalitekniikka
Insinööri (AMK), muu tekniikka
Insinööri (AMK), paperi-, tekstiili- ja kemiantekniikka
Insinööri (AMK), prosessitekniikka
Insinööri (AMK), puunjalostustekniikka
Insinööri (AMK), rakennusarkkitehtuuri
Insinööri (AMK), rakennustekniikka ja yhdyskuntatekniikka
Insinööri (AMK), sähkötekniikka
Insinööri (AMK), tekstiili- ja vaatetustekniikka
Insinööri (AMK), tietoliikennetekniikka
Insinööri (AMK), tietotekniikka
Insinööri (AMK), ympäristötekniikka
Insinööri (AMK), energia- ja ympäristötekniikka
Jalkaterapeutti (AMK)
Kuntoutuksen ohjaaja (AMK)
Kätilö (AMK)
Laboratorioanalyytikko (AMK)
Liikunnanohjaaja (AMK)
Metsätalousinsinööri (AMK)
Muotoilija (AMK)
Muu musiikin ammattikorkeakoulututkinto
Muu sähkö- ja automaatiotekniikan insinööri (AMK)
Muu tieto- ja tietoliikennetekniikan insinööri (AMK)
Naprapaatti (AMK)
Optometristi (AMK)
Osteopaatti (AMK)
Rakennusarkkitehti (AMK)
Rakennusmestari (AMK)
Röntgenhoitaja (AMK)
Suuhygienisti (AMK)
Toimintaterapeutti (AMK)
Tradenomi (AMK), tietojenkäsittely
Yhteisöpedagogi (AMK)

Ryhmä C

muut ammattikorkeakoulututkinnot


Opiskeluoikeudet sama koodi
PROCEDURE [dbo].[sp_Tavoiteajassa_opiskeluoikeudet] ( @mydb varchar(12) )
AS

BEGIN 


SELECT	 OO.db AS kk
		, OO.avain AS OpiskeluOikeudenAvain
		, OO.id AS OpiskeluOikeusID
		, O.Avain AS opiskelijaAvain
		, OO.OpiskelijaID
		, OT.koodi AS opiskeluoikeudenTyyppi
		, T.Koodi AS Tkoulutuskoodi
		, OS.Suorituspaivamaara
		, OO.alkamispaivamaara
		, OO.paattymispaivamaara
INTO #tutkinnot		
FROM virta.dbo.opiskeluoikeus OO
		JOIN virta.dbo.opiskeluoikeuden_tyyppi OT ON OT.id = OO.Op_oikeuden_tyyppiID		
		JOIN virta.dbo.Opintosuoritus OS ON OS.OpiskeluoikeusID = OO.ID
		JOIN virta.dbo.Opintosuorituksen_laji OL ON OL.id = OS.Opintosuorituksen_lajiID
		JOIN virta.dbo.Tutkintonimike T ON T.id = OS.TutkintonimikeID
		JOIN virta.dbo.Opiskelija O ON O.id = OO.OpiskelijaID
WHERE   OO.db =  @mydb 
AND		OS.db = @mydb
AND		O.db = @mydb
AND		OT.koodi IN ( '1','2','4') -- AMK, Alempi, Ylempi
AND		OL.Koodi = '1' 	-- Tutkinto laji = 1 suorittanut tutkinnon


CREATE NONCLUSTERED INDEX IX_Tutkinnot_opiskelijaid ON #tutkinnot (opiskelijaid); 


SELECT	 OO.db AS kk
		, OO.avain AS OpiskeluOikeudenAvain
		, OO.id AS OpiskeluOikeusID
		, O.Avain AS opiskelijaAvain
		, OO.OpiskelijaID
		, OT.koodi AS opiskeluoikeudenTyyppi
		, T.Koodi OOkoulutuskoodi
		, OO.alkamispaivamaara
		, OO.paattymispaivamaara
		, OO.Siirtopaivamaara
		, 0 AS sama_koodi_eri_oikeus
INTO #opiskeluoikeudet
FROM virta.dbo.opiskeluoikeus OO
		JOIN virta.dbo.opiskeluoikeuden_tyyppi OT ON OT.id = OO.Op_oikeuden_tyyppiID
		JOIN virta.dbo.Op_oikeuteen_liittyva_tila OTT ON OTT.OpiskeluoikeusID = OO.id
		JOIN virta.dbo.Opiskeluoikeuden_tila OOT ON OOT.id = OTT.Op_oikeuden_tilaID
		JOIN virta.dbo.Opiskeluoikeusjakso OJ ON OJ.OpiskeluoikeusID = OO.ID
		JOIN virta.dbo.Tutkintonimike T ON T.id = OJ.TutkintonimikeID
		JOIN virta.dbo.Opiskelija O ON O.id = OO.OpiskelijaID
WHERE	OO.db =  @mydb 
AND		OTT.db = @mydb
AND		OJ.db = @mydb
AND		O.db = @mydb
AND		OT.koodi IN ( '1','2','4') 
AND		OOT.Koodi IN ('1')  -- Ollut aktiivinen, joskus

AND		OO.OpiskelijaID IN (SELECT T.OpiskelijaID FROM  #tutkinnot T	) -- Opiskelijalla on tutkinto suoritettuna

CREATE NONCLUSTERED INDEX IX_opiskeluoikeudet ON  #opiskeluoikeudet (opiskelijaid); 
 
 



UPDATE OO
SET OO.sama_koodi_eri_oikeus = 1
FROM #opiskeluoikeudet OO
		INNER JOIN #tutkinnot TT ON TT.OpiskelijaID = OO.OpiskelijaID 
WHERE TT.OpiskelijaID = OO.OpiskelijaID 
AND TT.Tkoulutuskoodi = OO.OOkoulutuskoodi 
AND OO.OpiskeluOikeudenAvain <> TT.OpiskeluOikeudenAvain



 


-- 2024-03-09 Jos ei ole ei tutkintoa kyseisessä vaan joku muu?
UPDATE OO
SET OO.sama_koodi_eri_oikeus = 1
FROM #opiskeluoikeudet OO
		INNER JOIN #opiskeluoikeudet OO2 ON OO2.OpiskelijaID = OO.OpiskelijaID 
WHERE OO2.OpiskelijaID = OO.OpiskelijaID 
AND OO2.OOkoulutuskoodi = OO.OOkoulutuskoodi 
AND OO2.OpiskeluOikeudenAvain <> OO.OpiskeluOikeudenAvain -- Eri opiskeluoikeus
AND OO2.alkamispaivamaara <> OO.alkamispaivamaara





SELECT		H.Henkilotunnus, H.db AS kk
			, O.id AS OpiskelijaID
			, O.Avain AS opiskelijaAvain		
INTO #hlo
FROM virta.dbo.Henkilo H
	JOIN virta.dbo.Opiskelija O ON O.HenkiloID = H.id
	JOIN #tutkinnot T ON T.OpiskelijaID = O.id


CREATE NONCLUSTERED INDEX IX_hlo ON  #hlo (OpiskelijaID); 


DELETE FROM [dbo].[Tavoiteajassa_opiskeluoikeudet] WHERE kk = @mydb

INSERT INTO [dbo].[Tavoiteajassa_opiskeluoikeudet]
           ([kk]
           ,[Henkilotunnus]
           ,[OpiskeluOikeudenAvain]
           ,[opiskelijaAvain]
           ,[OOkoulutuskoodi]
           ,[Alkamispaivamaara]
           ,[Paattymispaivamaara]
           ,[Siirtopaivamaara]
           ,[sama_koodi_eri_oikeus])

SELECT	DISTINCT OO.kk
	   ,H.Henkilotunnus
	   ,OO.OpiskeluOikeudenAvain
	   ,OO.opiskelijaAvain
	   ,OO.OOkoulutuskoodi
	   ,OO.Alkamispaivamaara
	   ,OO.Paattymispaivamaara
	   ,OO.Siirtopaivamaara
	   ,OO.sama_koodi_eri_oikeus
FROM #opiskeluoikeudet OO
		JOIN #hlo H ON H.OpiskelijaID = OO.OpiskelijaID


SELECT	DISTINCT OO.kk 	   
	   ,OO.opiskelijaAvain
	   ,OO.OOkoulutuskoodi	
	   ,OO.sama_koodi_eri_oikeus
	   , min(OO.Alkamispaivamaara) ensimminen_sama_koodi_OOAlkamispaivamaara
INTO #ensimmainen
FROM #opiskeluoikeudet OO		
WHERE OO.sama_koodi_eri_oikeus = 1 

GROUP BY OO.kk	   
	   ,OO.opiskelijaAvain
	   ,OO.OOkoulutuskoodi  
	   ,OO.sama_koodi_eri_oikeus
ORDER BY ensimminen_sama_koodi_OOAlkamispaivamaara





-- 2024-03-09 sama koulutuskoodi koodi, ensimmäinen alkamispäivämäärä

UPDATE TOO
SET TOO.ensimminen_sama_koodi_OOAlkamispaivamaara = E.ensimminen_sama_koodi_OOAlkamispaivamaara,
	TOO.sama_koodi_eri_oikeus = 1

FROM [dbo].[Tavoiteajassa_opiskeluoikeudet] TOO
	INNER JOIN #ensimmainen E ON E.opiskelijaAvain = TOO.opiskelijaAvain AND E.kk = TOO.kk AND E.OOkoulutuskoodi = TOO.OOkoulutuskoodi
WHERE E.OOkoulutuskoodi = TOO.OOkoulutuskoodi






DROP TABLE #tutkinnot
DROP TABLE #opiskeluoikeudet
DROP TABLE #hlo
DROP TABLE #ensimmainen



END




Opiskeluoikeuden aloituspvm. Poimintakuvauksen 2

ensimminen_sama_koodi_OOAlkamispaivamaara
SELECT T.kk, T.OpiskeluOikeudenAvain, T.opiskelijaAvain
		, T.OOkoulutuskoodi	AS koulutuskoodi
		, T.alkamispaivamaara, T.paattymispaivamaara, T.siirtopaivamaara, T.sama_koodi_eri_oikeus
		, OO.id AS opiskeluoikeusid
		, OO.opiskelijaid  
		, T.ensimminen_sama_koodi_OOAlkamispaivamaara  -- Ensimmäisen saman koodin opiskeluoikeuden alkamispäivämäärä
INTO #sama		
FROM [TavoiteAika].[dbo].[Tavoiteajassa_opiskeluoikeudet]  T
		INNER JOIN virta.dbo.opiskeluoikeus OO ON OO.avain = T.OpiskeluOikeudenAvain AND OO.db = T.kk -- Tutkinnon OpiskeluOikeudenAvain
WHERE  	T.kk = @mydb
AND		OO.opiskelijaid IN ( SELECT TS.OpiskelijaID  FROM #Tutkinnon_suorittaneet TS WHERE TS.tutkintokoodi = T.OOkoulutuskoodi ) --  Sama koulutuskoodi
AND 	T.opiskelijaAvain IN  (

		SELECT S.opiskelijaAvain
		FROM [TavoiteAika].[dbo].[Tavoiteajassa_opiskeluoikeudet] S 
		WHERE S.[sama_koodi_eri_oikeus] = 1			-- Tunnistettu kaksi tai useampi samaa
		AND S.kk = T.kk
		AND S.OOkoulutuskoodi = T.OOkoulutuskoodi	--  Sama koulutuskoodi	
		
)
AND T.sama_koodi_eri_oikeus = 1



-- Tavoiteajan "laskenta alkaa alusta" mikäli opiskeluoikeus jossa sama tutkintokoodi 
UPDATE O
SET O.ooAlkamispvm = S.ensimminen_sama_koodi_OOAlkamispaivamaara,
	O.sama = 1
FROM #Opiskeluaika O
	INNER JOIN #sama S ON S.opiskelijaid = O.opiskelijaid



  • No labels