kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20180327144018_KRETA_5400/regenerate_naptarinapok_alap.sql
2024-03-13 00:33:46 +01:00

66 lines
No EOL
2.6 KiB
Transact-SQL

--felülírt ALAP- oszlopok visszaírása a helyes értékre
SET DATEFIRST 1;
DECLARE @tanevRendje TABLE (
C_DATUM datetime PRIMARY KEY
,C_HETNAPJA int
,C_NAPTIPUSA int
,C_ORARENDINAP char(1)
)
INSERT @tanevRendje
([C_DATUM], [C_HETNAPJA], [C_NAPTIPUSA], [C_ORARENDINAP])
VALUES
('20170901', dbo.fnGetHetNapja('20170901'), 1394, N'F'),
('20171023', dbo.fnGetHetNapja('20171023'), 1386, N'F'),
('20171030', dbo.fnGetHetNapja('20171030'), 1399, N'F'),
('20171031', dbo.fnGetHetNapja('20171031'), 1399, N'F'),
('20171101', dbo.fnGetHetNapja('20171101'), 1386, N'F'),
('20171102', dbo.fnGetHetNapja('20171102'), 1399, N'F'),
('20171103', dbo.fnGetHetNapja('20171103'), 1399, N'F'),
('20171225', dbo.fnGetHetNapja('20171225'), 1386, N'F'),
('20171226', dbo.fnGetHetNapja('20171226'), 1386, N'F'),
('20171227', dbo.fnGetHetNapja('20171227'), 1397, N'F'),
('20171228', dbo.fnGetHetNapja('20171228'), 1397, N'F'),
('20171229', dbo.fnGetHetNapja('20171229'), 1397, N'F'),
('20180101', dbo.fnGetHetNapja('20180101'), 1386, N'F'),
('20180102', dbo.fnGetHetNapja('20180102'), 1397, N'F'),
('20180126', dbo.fnGetHetNapja('20180126'), 1400, N'T'),
('20180310', dbo.fnGetHetNapja('20180310'), 1385, N'F'),
('20180315', dbo.fnGetHetNapja('20180315'), 1386, N'F'),
('20180316', dbo.fnGetHetNapja('20180316'), 6833, N'F'),
('20180329', dbo.fnGetHetNapja('20180329'), 1398, N'F'),
('20180330', dbo.fnGetHetNapja('20180330'), 1386, N'F'),
('20180402', dbo.fnGetHetNapja('20180402'), 1386, N'F'),
('20180403', dbo.fnGetHetNapja('20180403'), 1398, N'F'),
('20180421', dbo.fnGetHetNapja('20180421'), 1385, N'F'),
('20180430', dbo.fnGetHetNapja('20180430'), 6833, N'F'),
('20180501', dbo.fnGetHetNapja('20180501'), 1386, N'F'),
('20180503', dbo.fnGetHetNapja('20180503'), 1402, N'T'),
('20180521', dbo.fnGetHetNapja('20180521'), 1386, N'F'),
('20180615', dbo.fnGetHetNapja('20180615'), 1395, N'T')
UPDATE nn
SET
nn.C_ALAPHETNAPJA = ISNULL(tr.C_HETNAPJA, dbo.fnGetHetNapja(C_NAPDATUMA))
,nn.C_ALAPNAPTIPUSA = ISNULL(tr.C_NAPTIPUSA,
CASE
WHEN DATEPART(dw, nn.C_NAPDATUMA) IN (6, 7)
THEN 1386 -- 'Munkaszüneti nap'
WHEN nn.C_NAPDATUMA > te.C_UTOLSONAP
THEN 1392
ELSE 1385 -- 'Tanítási nap'
END)
,nn.C_ALAPORARENDINAP = ISNULL(tr.C_ORARENDINAP,
CASE
WHEN DATEPART(dw, nn.C_NAPDATUMA) IN (6, 7)
THEN 'F' -- 'Munkaszüneti nap'
WHEN nn.C_NAPDATUMA > te.C_UTOLSONAP
THEN 'F'
ELSE 'T' -- 'Tanítási nap'
END)
FROM T_NAPTARINAP nn
LEFT JOIN @tanevRendje tr ON nn.C_NAPDATUMA = tr.C_DATUM
INNER JOIN T_TANEV te ON te.ID = nn.C_TANEVID
WHERE te.C_NEV = '2017/2018'
AND te.TOROLT = 'F'