109 lines
5.3 KiB
Transact-SQL
109 lines
5.3 KiB
Transact-SQL
--Migration
|
|
CREATE TABLE #TanevRendje (
|
|
Datum datetime
|
|
,Esemeny nvarchar(300) COLLATE HUNGARIAN_CI_AI
|
|
,IsTanitasinap char(4) COLLATE HUNGARIAN_CI_AI
|
|
,Nap nvarchar(10) COLLATE HUNGARIAN_CI_AI
|
|
)
|
|
|
|
INSERT INTO #TanevRendje VALUES ('20180903', 'Első tanítási nap', 'Igen', 'Hétfő')
|
|
INSERT INTO #TanevRendje VALUES ('20181013', 'Tanítási nap', 'Igen', 'Hétfő')
|
|
INSERT INTO #TanevRendje VALUES ('20181022', 'Pihenőnap', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20181023', 'Ünnepnap', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20181029', 'Őszi szünet', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20181030', 'Őszi szünet', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20181031', 'Őszi szünet', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20181101', 'Munkaszüneti nap', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20181102', 'Pihenőnap', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20181110', 'Tanítási nap', 'Igen', 'Péntek')
|
|
INSERT INTO #TanevRendje VALUES ('20181201', 'Tanítási nap', 'Igen', 'Hétfő')
|
|
INSERT INTO #TanevRendje VALUES ('20181215', 'Tanítási nap', 'Igen', 'Hétfő')
|
|
INSERT INTO #TanevRendje VALUES ('20181224', 'Pihenőnap', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20181225', 'Munkaszüneti nap', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20181226', 'Munkaszüneti nap', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20181227', 'Téli szünet', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20181228', 'Téli szünet', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20171231', 'Pihenőnap', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20190101', 'Munkaszüneti nap', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20190102', 'Téli szünet', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20190125', 'Első félév vége', 'Igen', 'Péntek')
|
|
INSERT INTO #TanevRendje VALUES ('20190315', 'Ünnepnap', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20190418', 'Tavaszi szünet', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20190419', 'Munkaszüneti nap', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20190422', 'Munkaszüneti nap', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20190423', 'Tavaszi szünet', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20190501', 'Munkaszüneti nap', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20190502', 'Utolsó tanítási nap a végzős évfolyamokon', 'Igen', 'Csütörtök')
|
|
INSERT INTO #TanevRendje VALUES ('20190610', 'Munkaszüneti nap', 'Nem', '')
|
|
INSERT INTO #TanevRendje VALUES ('20190614', 'Utolsó tanítási nap', 'Igen', 'Péntek')
|
|
|
|
|
|
INSERT INTO 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
|
|
,ELOZOTANEVIREKORDID
|
|
,NNID
|
|
,CSOP
|
|
) SELECT
|
|
'T' AS C_AKTIV -- C_AKTIV - char(1)
|
|
,tr.Datum AS C_DATUM -- C_DATUM - datetime
|
|
,1554 AS C_HETIREND -- C_HETIREND - int
|
|
,nap.ID AS C_HETNAPJA -- C_HETNAPJA - int
|
|
,'' AS C_MEGJEGYZES -- C_MEGJEGYZES - nvarchar(255)
|
|
,ISNULL(esemeny.ID, 1384) AS C_NAPTIPUSA -- C_NAPTIPUSA - int
|
|
,IIF(tr.IsTanitasinap = 'Igen', 'T', 'F') AS C_ORARENDINAP -- C_ORARENDINAP - char(1)
|
|
,'T' AS C_OSSZESCSOPORTRAVONATKOZIK -- C_OSSZESCSOPORTRAVONATKOZIK - char(1)
|
|
,NULL AS C_CSENGETESIRENDID -- C_CSENGETESIRENDID - int
|
|
,tanev.C_INTEZMENYID AS C_INTEZMENYID -- C_INTEZMENYID - int
|
|
,tanev.ID AS C_TANEVID -- C_TANEVID - int
|
|
,'F' AS TOROLT -- TOROLT - char(1)
|
|
,0 AS SERIAL -- SERIAL - int
|
|
,GETDATE() AS LASTCHANGED -- LASTCHANGED - datetime
|
|
,GETDATE() AS CREATED -- CREATED - datetime
|
|
,NULL AS MODIFIER -- MODIFIER - int
|
|
,NULL AS CREATOR -- CREATOR - int
|
|
,NULL AS ELOZOTANEVIREKORDID -- ELOZOTANEVIREKORDID - int
|
|
,NULL AS NNID -- NNID - int
|
|
,NULL AS CSOP -- CSOP - char(1)
|
|
-- SELECT *
|
|
FROM #TanevRendje tr
|
|
CROSS JOIN (SELECT ID, C_INTEZMENYID FROM T_TANEV WHERE C_NEV = '2018/2019' AND TOROLT = 'F') tanev
|
|
INNER JOIN T_INTEZMENY i ON i.ID = tanev.C_INTEZMENYID AND i.TOROLT = 'F'
|
|
LEFT JOIN T_DICTIONARYITEMBASE nap ON nap.C_TANEVID = tanev.ID AND nap.C_NAME = tr.Nap AND nap.C_TYPE = 'HetNapjaTipus'
|
|
LEFT JOIN T_DICTIONARYITEMBASE esemeny ON esemeny.C_TANEVID = tanev.ID AND esemeny.C_NAME = tr.Esemeny AND esemeny.C_TYPE = 'NapTipus'
|
|
WHERE NOT EXISTS (
|
|
SELECT 1 FROM T_TANEVRENDJE trVan
|
|
WHERE trVan.C_DATUM = tr.Datum
|
|
AND trVan.C_TANEVID = tanev.ID
|
|
AND trVan.C_INTEZMENYID = tanev.C_INTEZMENYID
|
|
AND trVan.C_OSSZESCSOPORTRAVONATKOZIK = 'T'
|
|
)
|
|
|
|
UPDATE nn SET
|
|
nn.C_HETNAPJA = ISNULL(tr.C_HETNAPJA, nn.C_HETNAPJA)
|
|
,nn.C_NAPTIPUSA = tr.C_NAPTIPUSA
|
|
,nn.C_ORARENDINAP = tr.C_ORARENDINAP
|
|
,nn.C_ALAPHETNAPJA = ISNULL(tr.C_HETNAPJA, nn.C_ALAPHETNAPJA)
|
|
,nn.C_ALAPNAPTIPUSA = tr.C_NAPTIPUSA
|
|
,nn.C_ALAPORARENDINAP = tr.C_ORARENDINAP
|
|
FROM T_NAPTARINAP nn
|
|
INNER JOIN T_TANEVRENDJE tr ON nn.C_INTEZMENYID = tr.C_INTEZMENYID AND nn.C_TANEVID = tr.C_TANEVID AND nn.C_NAPDATUMA = tr.C_DATUM AND tr.TOROLT = 'F'
|
|
INNER JOIN T_TANEV te ON te.ID = nn.C_TANEVID AND te.C_NEV = '2018/2019' AND te.TOROLT = 'F'
|
|
WHERE tr.C_OSSZESCSOPORTRAVONATKOZIK = 'T' AND nn.TOROLT = 'F'
|
|
GO
|