Files
kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20171114102605_KRETA_4111/fnGetDokumentumMulasztasokOsztalyonkentReszletes.sql
2024-03-13 00:33:46 +01:00

39 lines
1.6 KiB
Transact-SQL

IF OBJECT_ID('fnGetDokumentumMulasztasokOsztalyonkentReszletes') IS NOT NULL BEGIN
DROP FUNCTION fnGetDokumentumMulasztasokOsztalyonkentReszletes
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE FUNCTION fnGetDokumentumMulasztasokOsztalyonkentReszletes (@tanevId INT, @osztalyCsoportId INT, @iskolaErdekuSzamit BIT)
RETURNS TABLE
RETURN (
SELECT
C_ORATANULOIID TanuloId
,C_OSZTALYCSOPORTID OsztalyCsoportId
,OsztalyCsoport.C_NEV OsztalyCsoportNev
,C_TIPUS Tipusa
,C_IGAZOLT Igazolt
,C_IGAZOLASTIPUSA IgazolasTipusa
,C_KESESPERCBEN KesesPercben
,C_DATUM Datum
,C_ORASZAM Oraszam
,C_TANTARGYID TantargyId
,ISNULL(t.C_NEVNYOMTATVANYBAN, t.C_NEV) TantargyNev
,NaptariHetek.C_HETSORSZAMA HetSorszama
FROM T_TANULOMULASZTAS_OSSZES TanuloMulasztas
INNER JOIN T_TANITASIORA_OSSZES TanitasiOra ON TanitasiOra.ID = TanuloMulasztas.C_TANITASIORAKID
INNER JOIN T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON OsztalyCsoport.ID = TanitasiOra.C_OSZTALYCSOPORTID
INNER JOIN T_TANTARGY_OSSZES t on t.ID = TanitasiOra.C_TANTARGYID
INNER JOIN T_NAPTARIHET_OSSZES NaptariHetek ON TanitasiOra.C_DATUM BETWEEN NaptariHetek.C_HETKEZDONAPJA AND NaptariHetek.C_HETUTOLSONAPJA
WHERE
C_ORATANULOIID IN (SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyCsoportId, 'T'))
AND TanuloMulasztas.C_TIPUS IN (1499, 1500)
AND TanitasiOra.C_OSZTALYCSOPORTID IN (SELECT Id FROM fnGetDokumentumOsztalyVagyTanoraiCsoport(@tanevId))
AND (@iskolaErdekuSzamit = 1 OR (C_IGAZOLASTIPUSA IS NULL OR C_IGAZOLASTIPUSA <> 1533))
AND TanuloMulasztas.TOROLT = 'F'
AND NaptariHetek.C_TANEVID = @tanevId
)