37 lines
No EOL
1.4 KiB
Transact-SQL
37 lines
No EOL
1.4 KiB
Transact-SQL
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
IF OBJECT_ID('fnGetDokumentumTanulokTanultTantargyai') IS NOT NULL
|
|
BEGIN
|
|
DROP FUNCTION fnGetDokumentumTanulokTanultTantargyai
|
|
END
|
|
GO
|
|
|
|
CREATE FUNCTION fnGetDokumentumTanulokTanultTantargyai (@tanevId INT, @osztalyCsoportId INT)
|
|
RETURNS @retTanuloTantargyai TABLE
|
|
(
|
|
TanuloId INT,
|
|
TanuloCsoportId INT,
|
|
TantargyNev NVARCHAR(MAX)
|
|
)
|
|
AS
|
|
BEGIN
|
|
DECLARE @UtolsoNapTanevRendje DATE = (SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = 1395 AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
|
|
|
INSERT INTO @retTanuloTantargyai
|
|
SELECT DISTINCT
|
|
OsztalyTanuloi.TanuloId TanuloId
|
|
,OsztalyTanuloi.TanuloCsoportId TanuloCsoportId
|
|
,Tantargy.C_NEV TantargyNev
|
|
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyCsoportId, 'T') OsztalyTanuloi
|
|
INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON OsztalyTanuloi.TanuloId = TanuloCsoport.C_TANULOID AND TanuloCsoport.TOROLT = 'F'
|
|
INNER JOIN T_FOGLALKOZAS_OSSZES Foglalkozas on TanuloCsoport.C_OSZTALYCSOPORTID = Foglalkozas.C_OSZTALYCSOPORTID AND Foglalkozas.TOROLT = 'F'
|
|
INNER JOIN T_TANTARGY_OSSZES Tantargy ON Tantargy.ID = Foglalkozas.C_TANTARGYID AND Tantargy.TOROLT = 'F'
|
|
WHERE
|
|
(TanuloCsoport.C_KILEPESDATUM IS NULL OR TanuloCsoport.C_KILEPESDATUM BETWEEN OsztalyTanuloi.BelepesDatum AND ISNULL(OsztalyTanuloi.KilepesDatum, @UtolsoNapTanevRendje))
|
|
|
|
RETURN
|
|
END
|
|
GO |