DECLARE @tanevId int, @intezmenyId int, @hetNapjaTipusTypeId int = 40 DECLARE IntCur CURSOR FAST_FORWARD READ_ONLY FOR SELECT tv.ID, i.ID FROM T_INTEZMENY i INNER JOIN T_TANEV tv ON tv.C_INTEZMENYID = i.ID AND tv.C_KOVETKEZO = 'T' WHERE tv.C_NEV = '2021/2022' AND i.TOROLT = 'F' AND tv.TOROLT = 'F' OPEN IntCur FETCH NEXT FROM IntCur INTO @tanevId, @intezmenyId WHILE @@FETCH_STATUS = 0 BEGIN -- Töröljük, ha a suli már vett fel tanév rendjét. mi csak az első és az utol tanítási napot adtuk mg csak meg. DELETE FROM T_TANEVRENDJE WHERE C_DATUM NOT IN ('20210901', '20220615') AND C_TANEVID = @tanevId -- Insert tanév rendje INSERT dbo.T_TANEVRENDJE ( C_AKTIV, C_DATUM, C_HETIREND, C_HETNAPJA, C_MEGJEGYZES, C_NAPTIPUSA, C_ORARENDINAP, C_OSSZESCSOPORTRAVONATKOZIK, C_CSENGETESIRENDID, C_INTEZMENYID, C_TANEVID, TOROLT, SERIAL, LASTCHANGED, CREATED, MODIFIER, CREATOR ) VALUES -- Okt. 23., Nov. 1. (1396-Ünnepnap; 1386-Munkaszüneti nap) ('T', '20211023', 1554, dbo.fnGetHetNapja('20211023', @hetNapjaTipusTypeId), N'', 1396, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20211101', 1554, dbo.fnGetHetNapja('20211101', @hetNapjaTipusTypeId), N'', 1386, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) -- Őszi szünet (1399-Őszi szünet) ,('T', '20211025', 1554, dbo.fnGetHetNapja('20211025', @hetNapjaTipusTypeId), N'', 1399, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20211026', 1554, dbo.fnGetHetNapja('20211026', @hetNapjaTipusTypeId), N'', 1399, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20211027', 1554, dbo.fnGetHetNapja('20211027', @hetNapjaTipusTypeId), N'', 1399, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20211028', 1554, dbo.fnGetHetNapja('20211028', @hetNapjaTipusTypeId), N'', 1399, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20211029', 1554, dbo.fnGetHetNapja('20211029', @hetNapjaTipusTypeId), N'', 1399, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) -- Téli szünet (1397-Téli szünet) ,('T', '20211222', 1554, dbo.fnGetHetNapja('20211222', @hetNapjaTipusTypeId), N'', 1397, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20211223', 1554, dbo.fnGetHetNapja('20211223', @hetNapjaTipusTypeId), N'', 1397, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20211227', 1554, dbo.fnGetHetNapja('20211227', @hetNapjaTipusTypeId), N'', 1397, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20211228', 1554, dbo.fnGetHetNapja('20211228', @hetNapjaTipusTypeId), N'', 1397, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20211229', 1554, dbo.fnGetHetNapja('20211229', @hetNapjaTipusTypeId), N'', 1397, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20211230', 1554, dbo.fnGetHetNapja('20211230', @hetNapjaTipusTypeId), N'', 1397, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20211231', 1554, dbo.fnGetHetNapja('20211231', @hetNapjaTipusTypeId), N'', 1397, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) -- Karacsony, újév (6833-Pihenőnap; 1386-Munkaszüneti nap) ,('T', '20211224', 1554, dbo.fnGetHetNapja('20211224', @hetNapjaTipusTypeId), N'', 6833, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20211225', 1554, dbo.fnGetHetNapja('20211225', @hetNapjaTipusTypeId), N'', 1386, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20211226', 1554, dbo.fnGetHetNapja('20211226', @hetNapjaTipusTypeId), N'', 1386, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20220101', 1554, dbo.fnGetHetNapja('20220101', @hetNapjaTipusTypeId), N'', 1386, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) -- Első félév vége (1400-Első félév vége) ,('T', '20220121', 1554, dbo.fnGetHetNapja('20220121', @hetNapjaTipusTypeId), N'', 1400, 'T', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) -- Márc. 15. (6833-Pihenőnap; 1396-Ünnepnap) ,('T', '20220314', 1554, dbo.fnGetHetNapja('20220314', @hetNapjaTipusTypeId), N'', 6833, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20220315', 1554, dbo.fnGetHetNapja('20220315', @hetNapjaTipusTypeId), N'', 1396, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) -- Tavaszi szünet (1398-Tavaszi szünet) ,('T', '20220414', 1554, dbo.fnGetHetNapja('20220414', @hetNapjaTipusTypeId), N'', 1398, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20220419', 1554, dbo.fnGetHetNapja('20220419', @hetNapjaTipusTypeId), N'', 1398, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) -- Húsvét (1386-Munkaszüneti nap) ,('T', '20220415', 1554, dbo.fnGetHetNapja('20220415', @hetNapjaTipusTypeId), N'', 1386, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20220417', 1554, dbo.fnGetHetNapja('20220417', @hetNapjaTipusTypeId), N'', 1386, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) ,('T', '20220418', 1554, dbo.fnGetHetNapja('20220418', @hetNapjaTipusTypeId), N'', 1386, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) -- Május 1. (1386-Munkaszüneti nap) ,('T', '20220501', 1554, dbo.fnGetHetNapja('20220501', @hetNapjaTipusTypeId), N'', 1386, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) -- Pünkösdhétfő (1386-Munkaszüneti nap) ,('T', '20220606', 1554, dbo.fnGetHetNapja('20220606', @hetNapjaTipusTypeId), N'', 1386, 'F', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) -- Utcsó tanítási nap - végzős (1402-Utolsó tanítási nap a végzős évfolyamokon) ,('T', '20220429', 1554, dbo.fnGetHetNapja('20220429', @hetNapjaTipusTypeId), N'', 1402, 'T', 'T', NULL, @intezmenyId, @tanevId, 'F', 0, GETDATE(), GETDATE(), NULL, 0) -- Legeneráljuk a naptári napokat az új tanévrendje események alapján EXEC sp_GenerateNaptariNapok @intezmenyId = @intezmenyId -- int ,@tanevId = @tanevId -- int FETCH NEXT FROM IntCur INTO @tanevId, @intezmenyId END CLOSE IntCur DEALLOCATE IntCur GO