init
This commit is contained in:
@@ -0,0 +1,116 @@
|
||||
DROP PROCEDURE IF EXISTS dbo.uspGetDokumentumTanarKapcsolodoOsztalyai
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE dbo.uspGetDokumentumTanarKapcsolodoOsztalyai
|
||||
@pTanarId int
|
||||
,@pTanevId int
|
||||
,@pOsztalyKell bit = 1
|
||||
,@pCsoportKell bit = 1
|
||||
,@pTartottOraKell bit = 1
|
||||
,@pFeladatKategoriaId int = null
|
||||
AS
|
||||
BEGIN
|
||||
DECLARE @sql nvarchar(max)
|
||||
|
||||
IF (1758 IN (SELECT C_SZEREPKORTIPUS FROM T_FELHASZNALO_SZEREPKOR INNER JOIN T_SZEREPKOR ON T_SZEREPKOR.ID = T_FELHASZNALO_SZEREPKOR.C_SZEREPKORID WHERE T_FELHASZNALO_SZEREPKOR.C_FELHASZNALOID = @pTanarId))
|
||||
OR ((SELECT C_MUNKAKORTIPUSA FROM T_MUNKAUGYIADATOK WHERE C_ALKALMAZOTTID = @pTanarId) IN (1762, 1763, 3027, 3028))
|
||||
OR ((SELECT C_VEZETOIORASZAMOK FROM T_MUNKAUGYIADATOK WHERE C_ALKALMAZOTTID = @pTanarId) IN (6572, 6573, 6574)) -- 6572 - Int<6E>zm<7A>nyvezet<65>, 6573 - Tagint<6E>zm<7A>ny-vezet<65>, 6574 - Int<6E>zm<7A>nyegys<79>g-vezet<65>
|
||||
BEGIN
|
||||
IF @pOsztalyKell = 1 BEGIN
|
||||
SET @sql = CONCAT(N'
|
||||
SELECT o.ID
|
||||
FROM T_OSZTALY_OSSZES o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON OsztalyCsoport.ID = o.ID',
|
||||
IIF(@pFeladatKategoriaId IS NOT NULL
|
||||
,N'
|
||||
AND OsztalyCsoport.C_FELADATKATEGORIAID = @pFeladatKategoriaId'
|
||||
,'')
|
||||
,N'
|
||||
AND OsztalyCsoport.C_TANEVID = o.C_ALTANEVID
|
||||
AND OsztalyCsoport.TOROLT = ''F''
|
||||
WHERE o.C_ALTANEVID = @pTanevId
|
||||
AND o.TOROLT = ''F''')
|
||||
END
|
||||
IF @pCsoportKell = 1 BEGIN
|
||||
SET @sql = ISNULL(@sql + CHAR(13) + CHAR(10) + N'UNION ALL' + CHAR(13) + CHAR(10), N'') + CONCAT(N'
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT_OSSZES cs
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON OsztalyCsoport.ID = cs.ID',
|
||||
IIF(@pFeladatKategoriaId IS NOT NULL
|
||||
,N'
|
||||
AND OsztalyCsoport.C_FELADATKATEGORIAID = @pFeladatKategoriaId'
|
||||
,'')
|
||||
,N'
|
||||
AND OsztalyCsoport.C_TANEVID = cs.C_ALTANEVID
|
||||
AND OsztalyCsoport.TOROLT = ''F''
|
||||
WHERE cs.C_ALTANEVID = @pTanevId
|
||||
AND cs.TOROLT = ''F''')
|
||||
END
|
||||
END
|
||||
ELSE BEGIN
|
||||
IF @pOsztalyKell = 1 BEGIN
|
||||
SET @sql = CONCAT(N'
|
||||
SELECT ocs.ID
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID
|
||||
AND o.C_ALTANEVID = ocs.C_TANEVID
|
||||
AND o.TOROLT = ''F''
|
||||
WHERE (o.C_OSZTALYFONOKID = @pTanarId OR o.C_OFOHELYETTESID = @pTanarId)',
|
||||
IIF(@pFeladatKategoriaId IS NOT NULL
|
||||
,N'
|
||||
AND ocs.C_FELADATKATEGORIAID = @pFeladatKategoriaId'
|
||||
,'')
|
||||
,N'
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
AND ocs.TOROLT = ''F''')
|
||||
END
|
||||
|
||||
IF @pCsoportKell = 1 BEGIN
|
||||
SET @sql = ISNULL(@sql + CHAR(13) + CHAR(10) + N'UNION ALL' + CHAR(13) + CHAR(10), N'') + CONCAT(N'
|
||||
SELECT ocs.ID
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.ID = ocs.ID
|
||||
AND cs.C_ALTANEVID = ocs.C_TANEVID
|
||||
AND cs.TOROLT = ''F''
|
||||
WHERE cs.C_CSOPORTVEZETOID = @pTanarId',
|
||||
IIF(@pFeladatKategoriaId IS NOT NULL
|
||||
,N'
|
||||
AND ocs.C_FELADATKATEGORIAID = @pFeladatKategoriaId'
|
||||
,'')
|
||||
,N'
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
AND ocs.TOROLT = ''F''')
|
||||
END
|
||||
|
||||
IF @pTartottOraKell = 1 BEGIN
|
||||
IF @pOsztalyKell = 1 BEGIN
|
||||
SET @sql = ISNULL(@sql + CHAR(13) + CHAR(10) + 'UNION' + CHAR(13) + CHAR(10), '') + '
|
||||
SELECT f.C_OSZTALYCSOPORTID
|
||||
FROM T_FOGLALKOZAS_OSSZES f
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.id = f.C_OSZTALYCSOPORTID
|
||||
AND o.C_ALTANEVID = f.C_TANEVID
|
||||
AND o.TOROLT = ''F''
|
||||
WHERE f.C_TANARID = @pTanarId
|
||||
AND f.C_TANEVID = @pTanevId
|
||||
AND f.TOROLT = ''F'''
|
||||
END
|
||||
IF @pCsoportKell = 1 BEGIN
|
||||
SET @sql = ISNULL(@sql + CHAR(13) + CHAR(10) + 'UNION' + CHAR(13) + CHAR(10), '') + '
|
||||
SELECT f.C_OSZTALYCSOPORTID
|
||||
FROM T_FOGLALKOZAS_OSSZES f
|
||||
INNER JOIN T_CSOPORT cs ON cs.id = f.C_OSZTALYCSOPORTID
|
||||
AND cs.C_ALTANEVID = f.C_TANEVID
|
||||
AND cs.TOROLT = ''F''
|
||||
WHERE f.C_TANARID = @pTanarId
|
||||
AND f.C_TANEVID = @pTanevId
|
||||
AND f.TOROLT = ''F'''
|
||||
END
|
||||
END
|
||||
END
|
||||
|
||||
EXEC sp_executesql @sql, N'@pTanarId int, @pFeladatKategoriaId int, @pTanevId int', @pTanarId, @pFeladatKategoriaId, @pTanevId
|
||||
|
||||
END
|
||||
GO
|
||||
|
||||
|
Reference in New Issue
Block a user