This commit is contained in:
skidoodle 2024-03-13 00:33:46 +01:00
commit e124a47765
19374 changed files with 9806149 additions and 0 deletions

View file

@ -0,0 +1,97 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('dbo.sp_GetDokumentumTanitasiNapokSorszama') IS NOT NULL
BEGIN
DROP PROCEDURE dbo.sp_GetDokumentumTanitasiNapokSorszama
END
GO
CREATE PROCEDURE dbo.sp_GetDokumentumTanitasiNapokSorszama
@tanevId INT,
@osztalyId INT
AS
BEGIN
SET NOCOUNT ON;
--Tanítás nélküli hétköznapok
DECLARE @TanitasNelkuliNapokTanevRendjeTable TABLE (Datum DATE)
INSERT INTO @TanitasNelkuliNapokTanevRendjeTable
SELECT
TanevRendje.C_DATUM
FROM T_TANEVRENDJE_OSSZES TanevRendje
INNER JOIN T_NAPTARINAP_OSSZES NaptariNap ON NaptariNap.C_NAPDATUMA = TanevRendje.C_DATUM AND NaptariNap.C_TANEVID = @tanevId AND NaptariNap.TOROLT = 'F'
INNER JOIN T_NAPTIPUS_OSSZES Naptipus ON Naptipus.ID = TanevRendje.C_NAPTIPUSA AND Naptipus.TOROLT = 'F' AND Naptipus.C_ALTANEVID = @tanevId
WHERE
TanevRendje.C_TANEVID = @tanevId
AND TanevRendje.TOROLT = 'F'
AND TanevRendje.C_OSSZESCSOPORTRAVONATKOZIK = 'T'
AND Naptipus.C_ISSORSZAMOZANDO = 'F'
AND (NaptariNap.C_ALAPHETNAPJA IS NULL OR NaptariNap.C_ALAPHETNAPJA BETWEEN 1408 AND 1412)
UNION
SELECT
TanevRendje.C_DATUM
FROM T_TANEVRENDJE_OSSZES TanevRendje
INNER JOIN T_NAPTARINAP_OSSZES NaptariNap ON NaptariNap.C_NAPDATUMA = TanevRendje.C_DATUM AND NaptariNap.C_TANEVID = @tanevId AND NaptariNap.TOROLT = 'F'
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE OsztalyCsoportTanevRendje ON OsztalyCsoportTanevRendje.C_TANEVRENDJEID = TanevRendje.ID
INNER JOIN T_NAPTIPUS_OSSZES Naptipus ON Naptipus.ID = TanevRendje.C_NAPTIPUSA AND Naptipus.TOROLT = 'F' AND Naptipus.C_ALTANEVID = @tanevId
WHERE
TanevRendje.C_TANEVID = @tanevId
AND TanevRendje.TOROLT = 'F'
AND TanevRendje.C_OSSZESCSOPORTRAVONATKOZIK = 'F'
AND Naptipus.C_ISSORSZAMOZANDO = 'F'
AND OsztalyCsoportTanevRendje.C_OSZTALYCSOPORTID = @osztalyId
AND (NaptariNap.C_ALAPHETNAPJA IS NULL OR NaptariNap.C_ALAPHETNAPJA BETWEEN 1408 AND 1412)
--Hétvégi tanítási napok
DECLARE @HetvegiTanitasiNapokTanevRendjeTable TABLE (Datum DATE)
INSERT INTO @HetvegiTanitasiNapokTanevRendjeTable
SELECT
TanevRendje.C_DATUM
FROM T_TANEVRENDJE_OSSZES TanevRendje
INNER JOIN T_NAPTARINAP_OSSZES NaptariNap ON NaptariNap.C_NAPDATUMA = TanevRendje.C_DATUM AND NaptariNap.C_TANEVID = @tanevId AND NaptariNap.TOROLT = 'F'
INNER JOIN T_NAPTIPUS_OSSZES Naptipus ON Naptipus.ID = TanevRendje.C_NAPTIPUSA AND Naptipus.TOROLT = 'F' AND Naptipus.C_ALTANEVID = @tanevId
WHERE
TanevRendje.c_tanevid = @tanevId
AND TanevRendje.TOROLT = 'F'
AND TanevRendje.C_OSSZESCSOPORTRAVONATKOZIK = 'T'
AND Naptipus.C_ISSORSZAMOZANDO = 'T'
AND (NaptariNap.C_ALAPHETNAPJA IS NULL OR NaptariNap.C_ALAPHETNAPJA IN (1413, 1414))
UNION
SELECT
TanevRendje.C_DATUM
FROM T_TANEVRENDJE_OSSZES TanevRendje
INNER JOIN T_NAPTARINAP_OSSZES NaptariNap ON NaptariNap.C_NAPDATUMA = TanevRendje.C_DATUM AND NaptariNap.C_TANEVID = @tanevId AND NaptariNap.TOROLT = 'F'
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE OsztalyCsoportTanevRendje ON OsztalyCsoportTanevRendje.C_TANEVRENDJEID = TanevRendje.ID
INNER JOIN T_NAPTIPUS_OSSZES Naptipus ON Naptipus.ID = TanevRendje.C_NAPTIPUSA AND Naptipus.TOROLT = 'F' AND Naptipus.C_ALTANEVID = @tanevId
WHERE
TanevRendje.C_TANEVID = @tanevId
AND TanevRendje.TOROLT = 'F'
AND TanevRendje.C_OSSZESCSOPORTRAVONATKOZIK = 'F'
AND Naptipus.C_ISSORSZAMOZANDO = 'T'
AND OsztalyCsoportTanevRendje.C_OSZTALYCSOPORTID = @osztalyId
AND (NaptariNap.C_ALAPHETNAPJA IS NULL OR NaptariNap.C_ALAPHETNAPJA IN (1413, 1414))
--Result
SELECT
C_NAPDATUMA
FROM T_NAPTARINAP_OSSZES NaptariNap
WHERE
NaptariNap.TOROLT = 'F'
AND C_TANEVID = @tanevId
AND C_NAPDATUMA NOT IN (SELECT Datum FROM @TanitasNelkuliNapokTanevRendjeTable)
AND C_ALAPHETNAPJA BETWEEN 1408 AND 1412
UNION
SELECT
Datum
FROM @HetvegiTanitasiNapokTanevRendjeTable
END