kreta/Kreta.DataAccess.Migrations/DBScripts/Database/dbo/Stored procedures/uspGetTanoraData.sql
2024-03-13 00:33:46 +01:00

325 lines
46 KiB
Transact-SQL
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

DROP PROCEDURE IF EXISTS uspGetTanoraData
GO
CREATE PROCEDURE uspGetTanoraData
@pTanevId int
,@pIntezmenyId int
,@pOktNevKategoriaId int = NULL
,@pFeladatEllatasiHelyId int = NULL
,@pIdoszakTol datetime = NULL
,@pIdoszakIg datetime = NULL
,@pOsztalyCsoportId int = NULL
,@pKapcsolodoCsoportok bit = 0
,@pCsoportTipusId int = NULL
,@pTantargyId int = NULL
,@pPedagogusId int = NULL
,@pTeremId int = NULL
,@pSorszamozando bit = NULL
,@pFoglalkozasId int = NULL
,@pElmaradt bit = NULL
,@pParhuzamosOra bit = NULL
,@pTulora bit = NULL
,@pTamopOra bit = NULL
,@pKipOra bit = NULL
,@pVekop73317 bit = NULL
,@pKapOra bit = NULL
,@pMultikulturalisOra bit = NULL
,@pKomplexOra bit = NULL
,@pNemSzakrendszeruOra bit = NULL
,@pIktTanora bit = NULL
,@pNemzetisegiOra bit = NULL
,@pIsFelnottoktatasiSzerzodes bit = NULL
,@pOnlineOra bit = NULL
,@pMindennaposTestneveles bit = NULL
,@pIprTanora bit = NULL
,@pDifferencialt bit = NULL
,@pKooperativ bit = NULL
,@pMeres bit = NULL
,@pDrama bit = NULL
,@pTiop bit = NULL
,@pBontott bit = NULL
,@pHelyettesitett bit = NULL
,@pEfop32317 bit = NULL
,@pGinop623 bit = NULL
,@pEfop31716EselyteremtesAKoznevelesben bit = NULL
,@pEfop33717 bit = NULL
,@pTiop11112120120001 bit = NULL
,@pDfhtOra bit = NULL
,@pRahangolodas bit = NULL
,@pTestmozgasAlapuAlprogram bit = NULL
,@pMuveszetAlapuAlprogram bit = NULL
,@pEletgyakorlatAlapuAlprogram bit = NULL
,@pLogikaAlapuAlprogram bit = NULL
,@pTeOrad bit = NULL
,@pDigitalisAlapuAlprogram bit = NULL
,@pEfop23517201700038Miapalya bit = NULL
,@pHfRogzitve bit = NULL
,@pTanevTananyaganakIsmetlese bit = NULL
,@pTanevTananyaganakKiegeszitese bit = NULL
,@pTanulokDigitalisKeszsegfejlesztese bit = NULL
,@pProjektmunka bit = NULL
,@pTanulokKompenzaciosIraskeszsegFejlesztese bit = NULL
,@pTanulokKompenzaciosOlvasasiKepessegFejlesztese bit = NULL
,@pTanulokMatematikaiGondolkodasiKepessegenekKompenzaciosFejlesztese bit = NULL
,@pTanulokNyelviKepessegenekKompenzaciosFejlesztese bit = NULL
,@pTanulokOnmegismeresenekSegitese bit = NULL
,@pTanulokOnallosagraNevelese bit = NULL
,@pTanulokTanulasszervezesiKompenzaciosTechnikajanakErositese bit = NULL
,@pTanulokOrientaciosTamogatasa bit = NULL
,@pTanulokSzocialitasanakFejlesztese bit = NULL
,@pTanulokTovabbhaladasatElokeszitoTevekenysegek bit = NULL
,@pPedagogusAltalJelzettEgyeniEsetkezeles bit = NULL
,@pProjektmunkaTamogatasa bit = NULL
,@pDigitalisKeszsegfejlesztes bit = NULL
,@pKozossegiMunkaTamogatasa bit = NULL
,@pTanoraElokeszitesenekTamogatasa bit = NULL
,@pTanoraLebonyolitasanakTamogatasa bit = NULL
,@pNapkozisTevekenysegKeretebenEgyeniFejlesztes bit = NULL
,@pDigPlatformTipusId int = NUlL
,@pDigEszkozTipusId int = NUll
,@pDigTamEszkozTipus nvarchar(max) = NULL
AS
BEGIN
SET NOCOUNT ON;
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
DECLARE @sql nvarchar(max) = ''
,@whereClause nvarchar(max) = ''
,@Date datetime = CAST(GETDATE() + 1 AS DATE)
,@pEfop31716 bit = @pEfop31716EselyteremtesAKoznevelesben;
-- @pDigTamEszkozTipus paraméter kifejtése
SET @sql += N'
CREATE TABLE #TanoraEszkoz(TanoraId INT NOT NULL INDEX #IX_TanoraEszkoz CLUSTERED);
IF @pDigTamEszkozTipus > ''''
INSERT INTO #TanoraEszkoz(TanoraId)
SELECT todte.C_TANITASIORAID
FROM STRING_SPLIT(@pDigTamEszkozTipus, '','') dte
INNER JOIN T_TANITASIORADIGTAMESZKOZ_OSSZES todte ON CAST(dte.VALUE AS INT) = todte.C_DIGTAMESZKOZTIPUSID
WHERE todte.TOROLT = ''F'';
';
-- fő lekérdezés oszlopai
SET @sql += N'
SELECT
t.ID
,t.C_DATUM AS Datum
,CONVERT(NVARCHAR(10), t.C_DATUM, 102) AS DatumDateST
,t.C_BEJEGYZESIDEJE AS NaplozasDatuma
,CONVERT(NVARCHAR(10), t.C_BEJEGYZESIDEJE, 102) AS NaplozasDatumaDateST
,t.C_OSZTALYCSOPORTID AS OsztCsop
,osztcsop.C_NEV AS OsztCsopNev
,csop.C_TIPUSA AS CsopTip
,t.C_FOGLALKOZASID AS Fogl
,t.C_TANTARGYID AS Targy
,tantargy.C_NEV AS TargyNev
,ISNULL(t.C_HELYETTESITOTANARID, t.C_TANARID) AS Tanar
,t.C_HELYETTESITESOKA AS Helyettesitesoka
,t.C_MEGJEGYZES AS Megjegyzes
,fh.C_NYOMTATASINEV AS TanarNev
,IIF(fh.C_NEVSORREND = ''T'', fh.C_UTONEV + '' '' + fh.C_VEZETEKNEV, fh.C_VEZETEKNEV + '' '' + fh.C_UTONEV) AS TanarNevElotagNelkul
,t.C_TEREMID AS Hely
,terem.C_NEV AS HelyNev
,t.C_ORASZAM AS Ora
,IIF(t.C_MEGTARTOTT = ''F'', -1, IIF(t.C_SORSZAMOZANDO = ''F'', 0, t.C_ORAEVESSORSZAMA)) AS OraSorsz
,t.C_TEMA AS Tema -- az ''Elmaradt óra'' szöveget c# oldalon tesszük bele
,t.C_HETNAPJA AS HetNapja
,t.C_SORSZAMOZANDO AS Sorszamozando
,t.C_PARHUZAMOSORA AS Parhuzamos
,t.C_TULORA AS Tulora
,t.C_TAMOPORA AS Tamop
,t.C_NEMSZAKRENDSZERUORA AS Nemszakrend
,t.C_IKTTANORA AS IKT
,t.C_NEMZETISEGIORA AS Nemzetisegi
,t.C_ISFELNOTTOKTATASISZERZODES AS IsFelnottoktatasiSzerzodes
,t.C_MINDENNAPOSTESTNEVELES AS MinennaposTestNev
,t.C_IPRTANORA AS IPR
,t.C_DIFFERENCIALT AS Diff
,t.C_KOOPERATIV AS Koop
,t.C_MERES AS Meres
,t.C_DRAMA AS Drama
,t.C_TIOP12 AS Tiop12
,t.C_BONTOTT AS Bontott
,t.C_KIPORA AS KIPOra
,t.C_VEKOP73317 AS VEKOP73317
,t.C_KAPORA AS KAPOra';
-- óra tulajdonság oszlopok
SET @sql += N'
,ISNULL(C_ISTANARROGZITETTE,''F'') AS HFRogzitve
,ISNULL(TT.[8615], OT.[8615]) AS OnlineOra
,ISNULL(TT.[8356], OT.[8356]) AS TanevTananyaganakIsmetlese
,ISNULL(TT.[8357], OT.[8357]) AS TanevTananyaganakKiegeszitese
,ISNULL(TT.[8358], OT.[8358]) AS TanulokDigitalisKeszsegfejlesztese
,ISNULL(TT.[8359], OT.[8359]) AS Projektmunka
,ISNULL(TT.[8360], OT.[8360]) AS TanulokKompenzaciosIraskeszsegFejlesztese
,ISNULL(TT.[8361], OT.[8361]) AS TanulokKompenzaciosOlvasasiKepessegFejlesztese
,ISNULL(TT.[8362], OT.[8362]) AS TanulokMatematikaiGondolkodasiKepessegenekKompenzaciosFejlesztese
,ISNULL(TT.[8363], OT.[8363]) AS TanulokNyelviKepessegenekKompenzaciosFejlesztese
,ISNULL(TT.[8364], OT.[8364]) AS TanulokOnmegismeresenekSegitese
,ISNULL(TT.[8365], OT.[8365]) AS TanulokOnallosagraNevelese
,ISNULL(TT.[8366], OT.[8366]) AS TanulokTanulasszervezesiKompenzaciosTechnikajanakErositese
,ISNULL(TT.[8367], OT.[8367]) AS TanulokOrientaciosTamogatasa
,ISNULL(TT.[8368], OT.[8368]) AS TanulokSzocialitasanakFejlesztese
,ISNULL(TT.[8369], OT.[8369]) AS TanulokTovabbhaladasatElokeszitoTevekenysegek
,ISNULL(TT.[8377], OT.[8377]) AS PedagogusAltalJelzettEgyeniEsetkezeles
,ISNULL(TT.[8378], OT.[8378]) AS ProjektmunkaTamogatasa
,ISNULL(TT.[8379], OT.[8379]) AS DigitalisKeszsegfejlesztes
,ISNULL(TT.[8380], OT.[8380]) AS KozossegiMunkaTamogatasa
,ISNULL(TT.[8381], OT.[8381]) AS TanoraElokeszitesenekTamogatasa
,ISNULL(TT.[8382], OT.[8382]) AS TanoraLebonyolitasanakTamogatasa
,ISNULL(TT.[8383], OT.[8383]) AS NapkozisTevekenysegKeretebenEgyeniFejlesztes';
SET @sql += N'
FROM T_TANITASIORA_OSSZES t
LEFT JOIN T_OSZTALYCSOPORT_OSSZES osztcsop ON osztcsop.ID = t.C_OSZTALYCSOPORTID --AND osztcsop.TOROLT = ''F'' AND osztcsop.C_TANEVID = t.C_TANEVID
LEFT JOIN T_CSOPORT_OSSZES csop ON csop.ID = osztcsop.ID --AND csop.TOROLT = ''F''
LEFT JOIN T_TANTARGY_OSSZES tantargy ON tantargy.ID = t.C_TANTARGYID --AND tantargy.TOROLT = ''F'' AND tantargy.C_TANEVID = t.C_TANEVID
LEFT JOIN T_TEREM_OSSZES terem ON terem.ID = t.C_TEREMID --AND terem.TOROLT = ''F'' AND terem.C_TANEVID = t.C_TANEVID
LEFT JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = ISNULL(t.C_HELYETTESITOTANARID, t.C_TANARID) --AND fh.TOROLT = ''F'' AND fh.C_TANEVID = t.C_TANEVID AND fh.C_INTEZMENYID = t.C_INTEZMENYID
LEFT JOIN T_HAZIFELADATOK_OSSZES hf ON hf.C_TANITASIORAID = t.ID --AND hf.TOROLT = ''F'' AND hf.C_TANEVID = t.C_TANEVID';
-- óra tulajdonságok
SET @sql += N'
LEFT JOIN (
SELECT C_TANITASIORAID, [8615], [8356], [8357], [8358], [8359], [8360], [8361], [8362], [8363], [8364], [8365], [8366], [8367], [8368], [8369], [8377], [8378], [8379], [8380], [8381], [8382], [8383]
FROM (
SELECT C_TANITASIORAID, C_ORATULAJDONSAGID, C_BOOLERTEK
FROM T_TANITASIORATULAJDONSAG_OSSZES tot --WITH (INDEX = [NCI_TanitasiOraTulajdonsag_IntezmenyId_TanevId_TanitasioraId_OraTulajdonsagId2])
WHERE tot.C_INTEZMENYID = @intezmenyId
AND tot.C_TANEVID = @tanevId
AND tot.TOROLT = ''F''
) T
PIVOT (MAX(C_BOOLERTEK) FOR C_ORATULAJDONSAGID in ([8615], [8356], [8357], [8358], [8359], [8360], [8361], [8362], [8363], [8364], [8365], [8366], [8367], [8368], [8369], [8377], [8378], [8379], [8380], [8381], [8382], [8383])) P
) TT ON TT.C_TANITASIORAID = t.ID
CROSS JOIN (
SELECT [8615], [8356], [8357], [8358], [8359], [8360], [8361], [8362], [8363], [8364], [8365], [8366], [8367], [8368], [8369], [8377], [8378], [8379], [8380], [8381], [8382], [8383]
FROM (
SELECT ID, C_BOOLDEFAULT
FROM T_ORATULAJDONSAGTIPUS_OSSZES ot --WITH (INDEX = [NCI_OraTulajdonsag_IntezmenyId_TanevId])
WHERE C_ALINTEZMENYID = @intezmenyId
AND C_ALTANEVID = @tanevId
AND TOROLT = ''F''
) ott
PIVOT (MAX(C_BOOLDEFAULT) FOR ID IN ([8615], [8356], [8357], [8358], [8359], [8360], [8361], [8362], [8363], [8364], [8365], [8366], [8367], [8368], [8369], [8377], [8378], [8379], [8380], [8381], [8382], [8383])) P
) OT
WHERE t.TOROLT = ''F''
AND t.C_INTEZMENYID = @intezmenyId
AND t.C_TANEVID = @tanevId
';
-- szűrési feltételek
IF @pOktNevKategoriaId IS NOT NULL SET @whereClause += 'AND osztcsop.C_FELADATKATEGORIAID = @oktNevKategoriaId' + CHAR(13);
IF @pFeladatEllatasiHelyId IS NOT NULL SET @whereClause += 'AND osztcsop.C_FELADATELLATASIHELYID = @feladatEllatasiHelyId' + CHAR(13);
IF @pIdoszakTol IS NOT NULL SET @whereClause += 'AND t.C_DATUM >= CAST(@idoszakTol as date)' + CHAR(13);
IF @pIdoszakIg IS NOT NULL SET @whereClause += 'AND t.C_DATUM <= CAST(@idoszakIg as date)' + CHAR(13);
IF @pOsztalyCsoportId IS NOT NULL SET @whereClause += IIF(@pKapcsolodoCsoportok = 1, 'AND t.C_OSZTALYCSOPORTID IN (SELECT ID FROM fnGetKapcsolodoOsztalycsoportok(@osztalyCsoportId))', N'AND t.C_OSZTALYCSOPORTID = @osztalyCsoportId') + CHAR(13);
IF @pCsoportTipusId IS NOT NULL SET @whereClause += 'AND csop.C_TIPUSA = @csoportTipusId' + CHAR(13);
IF @pTantargyId IS NOT NULL SET @whereClause += 'AND t.C_TANTARGYID = @tantargyId' + CHAR(13);
IF @pPedagogusId IS NOT NULL SET @whereClause += 'AND ISNULL(t.C_HELYETTESITOTANARID, t.C_TANARID) = @pedagogusId' + CHAR(13);
IF @pTeremId IS NOT NULL SET @whereClause += 'AND t.C_TEREMID = @teremId' + CHAR(13);
IF @pSorszamozando IS NOT NULL SET @whereClause += 'AND t.C_SORSZAMOZANDO = ''' + IIF(@pSorszamozando = 1, 'T', 'F') + '''' + CHAR(13);
IF @pFoglalkozasId IS NOT NULL SET @whereClause += 'AND t.C_FOGLALKOZASID = @foglalkozasId' + CHAR(13);
IF @pElmaradt IS NOT NULL SET @whereClause += 'AND t.C_MEGTARTOTT = ''' + IIF(@pElmaradt = 1, 'F', 'T') + '''' + CHAR(13);
IF @pParhuzamosOra IS NOT NULL SET @whereClause += 'AND t.C_PARHUZAMOSORA = ''' + IIF(@pParhuzamosOra = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTulora IS NOT NULL SET @whereClause += 'AND t.C_TULORA = ''' + IIF(@pTulora = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTamopOra IS NOT NULL SET @whereClause += 'AND t.C_TAMOPORA = ''' + IIF(@pTamopOra = 1, 'T', 'F') + '''' + CHAR(13);
IF @pKipOra IS NOT NULL SET @whereClause += 'AND t.C_KIPORA = ''' + IIF(@pKipOra = 1, 'T', 'F') + '''' + CHAR(13);
IF @pVekop73317 IS NOT NULL SET @whereClause += 'AND t.C_VEKOP73317 = ''' + IIF(@pVekop73317 = 1, 'T', 'F') + '''' + CHAR(13);
IF @pKapOra IS NOT NULL SET @whereClause += 'AND t.C_KAPORA = ''' + IIF(@pKapOra = 1, 'T', 'F') + '''' + CHAR(13);
IF @pMultikulturalisOra IS NOT NULL SET @whereClause += 'AND t.C_MULTIKULTURALISORA = ''' + IIF(@pMultikulturalisOra = 1, 'T', 'F') + '''' + CHAR(13);
IF @pKomplexOra IS NOT NULL SET @whereClause += 'AND t.C_KOMPLEXORA = ''' + IIF(@pKomplexOra = 1, 'T', 'F') + '''' + CHAR(13);
IF @pNemSzakrendszeruOra IS NOT NULL SET @whereClause += 'AND t.C_NEMSZAKRENDSZERUORA = ''' + IIF(@pNemSzakrendszeruOra = 1, 'T', 'F') + '''' + CHAR(13);
IF @pIktTanora IS NOT NULL SET @whereClause += 'AND t.C_IKTTANORA = ''' + IIF(@pIktTanora = 1, 'T', 'F') + '''' + CHAR(13);
IF @pNemzetisegiOra IS NOT NULL SET @whereClause += 'AND t.C_NEMZETISEGIORA = ''' + IIF(@pNemzetisegiOra = 1, 'T', 'F') + '''' + CHAR(13);
IF @pIsFelnottoktatasiSzerzodes IS NOT NULL SET @whereClause += 'AND t.C_ISFELNOTTOKTATASISZERZODES = ''' + IIF(@pIsFelnottoktatasiSzerzodes = 1, 'T', 'F') + '''' + CHAR(13);
IF @pMindennaposTestneveles IS NOT NULL SET @whereClause += 'AND t.C_MINDENNAPOSTESTNEVELES = ''' + IIF(@pMindennaposTestneveles = 1, 'T', 'F') + '''' + CHAR(13);
IF @pIprTanora IS NOT NULL SET @whereClause += 'AND t.C_IPRTANORA = ''' + IIF(@pIprTanora = 1, 'T', 'F') + '''' + CHAR(13);
IF @pDifferencialt IS NOT NULL SET @whereClause += 'AND t.C_DIFFERENCIALT = ''' + IIF(@pDifferencialt = 1, 'T', 'F') + '''' + CHAR(13);
IF @pKooperativ IS NOT NULL SET @whereClause += 'AND t.C_KOOPERATIV = ''' + IIF(@pKooperativ = 1, 'T', 'F') + '''' + CHAR(13);
IF @pMeres IS NOT NULL SET @whereClause += 'AND t.C_MERES = ''' + IIF(@pMeres = 1, 'T', 'F') + '''' + CHAR(13);
IF @pDrama IS NOT NULL SET @whereClause += 'AND t.C_DRAMA = ''' + IIF(@pDrama = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTiop IS NOT NULL SET @whereClause += 'AND t.C_TIOP12 = ''' + IIF(@pTiop = 1, 'T', 'F') + '''' + CHAR(13);
IF @pBontott IS NOT NULL SET @whereClause += 'AND t.C_BONTOTT = ''' + IIF(@pBontott = 1, 'T', 'F') + '''' + CHAR(13);
IF @pHelyettesitett IS NOT NULL SET @whereClause += IIF(@pHelyettesitett = 1, 'AND t.C_HELYETTESITOTANARID IS NOT NULL', 'AND t.C_HELYETTESITOTANARID IS NULL') + CHAR(13);
IF @pEfop32317 IS NOT NULL SET @whereClause += 'AND t.C_EFOP32317 = ''' + IIF(@pEfop32317 = 1, 'T', 'F') + '''' + CHAR(13);
IF @pGinop623 IS NOT NULL SET @whereClause += 'AND t.C_GINOP623 = ''' + IIF(@pGinop623 = 1, 'T', 'F') + '''' + CHAR(13);
IF @pEfop31716 IS NOT NULL SET @whereClause += 'AND t.C_EFOP31716 = ''' + IIF(@pEfop31716EselyteremtesAKoznevelesben = 1, 'T', 'F') + '''' + CHAR(13);
IF @pEfop33717 IS NOT NULL SET @whereClause += 'AND t.C_EFOP33717 = ''' + IIF(@pEfop33717 = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTiop11112120120001 IS NOT NULL SET @whereClause += 'AND t.C_TIOP1111212012001 = ''' + IIF(@pTiop11112120120001 = 1, 'T', 'F') + '''' + CHAR(13);
IF @pDfhtOra IS NOT NULL SET @whereClause += 'AND t.C_ISDFHTORA = ''' + IIF(@pDfhtOra = 1, 'T', 'F') + '''' + CHAR(13);
IF @pRahangolodas IS NOT NULL SET @whereClause += 'AND t.C_ISRAHANGOLODAS = ''' + IIF(@pRahangolodas = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTestmozgasAlapuAlprogram IS NOT NULL SET @whereClause += 'AND t.C_ISTESTMOZGASALAPUALPROGRAM = ''' + IIF(@pTestmozgasAlapuAlprogram = 1, 'T', 'F') + '''' + CHAR(13);
IF @pMuveszetAlapuAlprogram IS NOT NULL SET @whereClause += 'AND t.C_ISMUVESZETALAPUALPROGRAM = ''' + IIF(@pMuveszetAlapuAlprogram = 1, 'T', 'F') + '''' + CHAR(13);
IF @pEletgyakorlatAlapuAlprogram IS NOT NULL SET @whereClause += 'AND t.C_ISELETGYAKORLATALAPUALPROGRA = ''' + IIF(@pEletgyakorlatAlapuAlprogram = 1, 'T', 'F') + '''' + CHAR(13);
IF @pLogikaAlapuAlprogram IS NOT NULL SET @whereClause += 'AND t.C_ISLOGIKAALAPUALPROGRAM = ''' + IIF(@pLogikaAlapuAlprogram = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTeOrad IS NOT NULL SET @whereClause += 'AND t.C_ISTEORAD = ''' + IIF(@pTeOrad = 1, 'T', 'F') + '''' + CHAR(13);
IF @pDigitalisAlapuAlprogram IS NOT NULL SET @whereClause += 'AND t.C_ISDIGITALISALAPUALPROGRAM = ''' + IIF(@pDigitalisAlapuAlprogram = 1, 'T', 'F') + '''' + CHAR(13);
IF @pEfop23517201700038Miapalya IS NOT NULL SET @whereClause += 'AND t.C_EFOP23517 = ''' + IIF(@pEfop23517201700038Miapalya = 1, 'T', 'F') + '''' + CHAR(13);
IF @pHfRogzitve IS NOT NULL SET @whereClause += IIF(@pHfRogzitve = 1, 'AND hf.C_ISTANARROGZITETTE = ''T''', 'AND (hf.C_ISTANARROGZITETTE = ''F'' OR hf.C_ISTANARROGZITETTE IS NULL)') + CHAR(13);
IF @pDigPlatformTipusId IS NOT NULL SET @whereClause += 'AND t.C_DIGPLATFORMTIPUSID = @pDigPlatformTipusId' + CHAR(13);
IF @pDigEszkozTipusId IS NOT NULL SET @whereClause += 'AND t.C_DIGESZKOZTIPUSID = @pDigEszkozTipusId' + CHAR(13);
IF @pDigTamEszkozTipus IS NOT NULL SET @whereClause += 'AND EXISTS(SELECT * FROM #TanoraEszkoz d WHERE d.TanoraId = t.ID)' + CHAR(13);
IF @pOnlineOra IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8615], OT.[8615]) = ''' + IIF(@pOnlineOra = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanevTananyaganakIsmetlese IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8356], OT.[8356]) = ''' + IIF(@pTanevTananyaganakIsmetlese = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanevTananyaganakKiegeszitese IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8357], OT.[8357]) = ''' + IIF(@pTanevTananyaganakKiegeszitese = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanulokDigitalisKeszsegfejlesztese IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8358], OT.[8358]) = ''' + IIF(@pTanulokDigitalisKeszsegfejlesztese = 1, 'T', 'F') + '''' + CHAR(13);
IF @pProjektmunka IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8359], OT.[8359]) = ''' + IIF(@pProjektmunka = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanulokKompenzaciosIraskeszsegFejlesztese IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8360], OT.[8360]) = ''' + IIF(@pTanulokKompenzaciosIraskeszsegFejlesztese = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanulokKompenzaciosOlvasasiKepessegFejlesztese IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8361], OT.[8361]) = ''' + IIF(@pTanulokKompenzaciosOlvasasiKepessegFejlesztese = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanulokMatematikaiGondolkodasiKepessegenekKompenzaciosFejlesztese IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8362], OT.[8362]) = ''' + IIF(@pTanulokMatematikaiGondolkodasiKepessegenekKompenzaciosFejlesztese = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanulokNyelviKepessegenekKompenzaciosFejlesztese IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8363], OT.[8363]) = ''' + IIF(@pTanulokNyelviKepessegenekKompenzaciosFejlesztese = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanulokOnmegismeresenekSegitese IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8364], OT.[8364]) = ''' + IIF(@pTanulokOnmegismeresenekSegitese = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanulokOnallosagraNevelese IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8365], OT.[8365]) = ''' + IIF(@pTanulokOnallosagraNevelese = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanulokTanulasszervezesiKompenzaciosTechnikajanakErositese IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8366], OT.[8366]) = ''' + IIF(@pTanulokTanulasszervezesiKompenzaciosTechnikajanakErositese = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanulokOrientaciosTamogatasa IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8367], OT.[8367]) = ''' + IIF(@pTanulokOrientaciosTamogatasa = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanulokSzocialitasanakFejlesztese IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8368], OT.[8368]) = ''' + IIF(@pTanulokSzocialitasanakFejlesztese = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanulokTovabbhaladasatElokeszitoTevekenysegek IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8369], OT.[8369]) = ''' + IIF(@pTanulokTovabbhaladasatElokeszitoTevekenysegek = 1, 'T', 'F') + '''' + CHAR(13);
IF @pPedagogusAltalJelzettEgyeniEsetkezeles IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8377], OT.[8377]) = ''' + IIF(@pPedagogusAltalJelzettEgyeniEsetkezeles = 1, 'T', 'F') + '''' + CHAR(13);
IF @pProjektmunkaTamogatasa IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8378], OT.[8378]) = ''' + IIF(@pProjektmunkaTamogatasa = 1, 'T', 'F') + '''' + CHAR(13);
IF @pDigitalisKeszsegfejlesztes IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8379], OT.[8379]) = ''' + IIF(@pDigitalisKeszsegfejlesztes = 1, 'T', 'F') + '''' + CHAR(13);
IF @pKozossegiMunkaTamogatasa IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8380], OT.[8380]) = ''' + IIF(@pKozossegiMunkaTamogatasa = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanoraElokeszitesenekTamogatasa IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8381], OT.[8381]) = ''' + IIF(@pTanoraElokeszitesenekTamogatasa = 1, 'T', 'F') + '''' + CHAR(13);
IF @pTanoraLebonyolitasanakTamogatasa IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8382], OT.[8382]) = ''' + IIF(@pTanoraLebonyolitasanakTamogatasa = 1, 'T', 'F') + '''' + CHAR(13);
IF @pNapkozisTevekenysegKeretebenEgyeniFejlesztes IS NOT NULL SET @whereClause += 'AND ISNULL(TT.[8383], OT.[8383]) = ''' + IIF(@pNapkozisTevekenysegKeretebenEgyeniFejlesztes = 1, 'T', 'F') + '''' + CHAR(13);
SET @sql += @whereClause
SET @sql += 'OPTION (MAXDOP 1)'
--select @sql
EXEC sp_executesql @sql, N'
@intezmenyId int
,@tanevId int
,@oktNevKategoriaId int
,@feladatEllatasiHelyId int
,@idoszakTol datetime
,@idoszakIg datetime
,@osztalyCsoportId int
,@csoportTipusId int
,@tantargyId int
,@pedagogusId int
,@teremId int
,@sorszamozando bit
,@foglalkozasId int
,@pDigPlatformTipusId int
,@pDigEszkozTipusId int
,@pDigTamEszkozTipus nvarchar(max)'
,@intezmenyId = @pIntezmenyId
,@tanevId = @pTanevId
,@oktNevKategoriaId = @pOktNevKategoriaId
,@feladatEllatasiHelyId = @pFeladatEllatasiHelyId
,@idoszakTol = @pIdoszakTol
,@idoszakIg = @pIdoszakIg
,@osztalyCsoportId = @pOsztalyCsoportId
,@csoportTipusId = @pCsoportTipusId
,@tantargyId = @pTantargyId
,@pedagogusId = @pPedagogusId
,@teremId = @pTeremId
,@sorszamozando = @pSorszamozando
,@foglalkozasId = @pFoglalkozasId
,@pDigPlatformTipusId = @pDigPlatformTipusId
,@pDigEszkozTipusId = @pDigEszkozTipusId
,@pDigTamEszkozTipus = @pDigTamEszkozTipus
END
GO