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,57 @@
-- =============================================
-- Description: <Előszedjük a tanuló osztályát(Jó lenne a jövőben ezt használni egységesen, ezért ésszerűen ezt ki lehet egészíteni, egyelőre csak azzal tér vissza, ami épp most kell)>
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
DROP FUNCTION IF EXISTS [dbo].[fnGetTanuloOsztaly]
GO
CREATE FUNCTION [dbo].[fnGetTanuloOsztaly](
@pTanuloId INT
,@pDatum DATE = NULL
,@pFeladatKategoriaId INT = NULL
)
RETURNS @ResultTable TABLE(
ID INT
,EvfolyamTipusId INT
,OsztalyNev NVARCHAR(255)
)
AS
BEGIN
IF @pDatum IS NULL
SET @pDatum = CONVERT(DATE, GETDATE())
INSERT @ResultTable
SELECT /*TODO:Tobb Osztaly*//*OM-1585*/
OsztalyCsoport.ID ID
,OsztalyCsoport.C_EVFOLYAMTIPUSA EvfolyamTipusId
,OsztalyCsoport.C_NEV OsztalyNev
FROM
T_TANULOCSOPORT_OSSZES TanuloCsoport
INNER JOIN
T_OSZTALY_OSSZES Osztaly ON
Osztaly.ID = TanuloCsoport.C_OSZTALYCSOPORTID
AND Osztaly.TOROLT = 'F'
INNER JOIN
T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON
OsztalyCsoport.ID = Osztaly.ID
AND OsztalyCsoport.TOROLT = 'F'
AND (OsztalyCsoport.C_FELADATKATEGORIAID = @pFeladatKategoriaId OR @pFeladatKategoriaId IS NULL)
WHERE
TanuloCsoport.C_TANULOID = @pTanuloId
AND TanuloCsoport.TOROLT = 'F'
--TODO: Aktuális tanév első napja előtt és utolsó napja után valszeg nem lesz !
AND TanuloCsoport.C_BELEPESDATUM <= @pDatum
AND (TanuloCsoport.C_KILEPESDATUM IS NULL OR TanuloCsoport.C_KILEPESDATUM >= @pDatum)
RETURN
END
GO

View file

@ -0,0 +1,82 @@
-- =============================================
-- Description: <Ellenőrizzuk, hogy a tanulóknak van-e már egyszer adható tanuló értékelése, ha nincs akkor true, ha van akkor false>
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
DROP PROCEDURE IF EXISTS [dbo].[uspCheckTanuloListEgyszerAdhatoTanuloErtekelesValidation]
GO
CREATE PROCEDURE [dbo].[uspCheckTanuloListEgyszerAdhatoTanuloErtekelesValidation]
@pTanuloErtekelesList XML
,@pTipusId INT
,@pAlapKategoriaId INT
,@pTantargyId INT = NULL
,@pDatum DATE = NULL
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
SET NOCOUNT ON;
IF @pDatum IS NULL
SET @pDatum = CONVERT(DATE, GETDATE())
DECLARE @TempTanuloErtekelesList TABLE (C_TANULOID INT, ID INT)
INSERT INTO @TempTanuloErtekelesList
SELECT DISTINCT
C_TANULOID = tanuloErtekeles.value('(./tanuloId)[1]', 'INT')
,ID = tanuloErtekeles.value('(./id)[1]', 'INT')
FROM @pTanuloErtekelesList.nodes('tanuloErtekelesList') AS tanuloErtekelesList(tanuloErtekeles)
IF EXISTS (
SELECT 1
FROM
T_TANULOERTEKELES_OSSZES TanuloErtekeles
INNER JOIN
T_OSZTALYCSOPORT_OSSZES Osztaly ON
Osztaly.ID = TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID
AND Osztaly.TOROLT = 'F'
AND Osztaly.C_EVFOLYAMTIPUSA = (SELECT EvfolyamTipusId FROM dbo.fnGetTanuloOsztaly(TanuloErtekeles.C_TANULOID, @pDatum, @pAlapKategoriaId)) /*TODO:Tobb Osztaly*//*OM-1588*/
LEFT JOIN
@TempTanuloErtekelesList TanuloErtekelesToEdit ON
TanuloErtekeles.C_TANULOID = TanuloErtekelesToEdit.C_TANULOID
WHERE
TanuloErtekeles.TOROLT = 'F'
AND TanuloErtekeles.C_TIPUSID = @pTipusId
AND TanuloErtekeles.C_TANULOID = TanuloErtekelesToEdit.C_TANULOID
AND (TanuloErtekelesToEdit.ID IS NULL OR
TanuloErtekeles.ID != TanuloErtekelesToEdit.ID)
AND (@pTantargyId IS NOT NULL AND @pTantargyId = TanuloErtekeles.C_TANTARGYID OR
@pTantargyId IS NULL AND TanuloErtekeles.C_TANTARGYID IS NULL)
UNION ALL
--NOTE: ami-s értékelések miatt, ott nincs mentve C_ROGZITESKORITANULOOSZTALYID
SELECT 1
FROM
T_TANULOERTEKELES_OSSZES TanuloErtekeles
LEFT JOIN
@TempTanuloErtekelesList TanuloErtekelesToEdit ON
TanuloErtekeles.C_TANULOID = TanuloErtekelesToEdit.C_TANULOID
WHERE
TanuloErtekeles.TOROLT = 'F'
AND TanuloErtekeles.C_TIPUSID = @pTipusId
AND TanuloErtekeles.C_TANULOID = TanuloErtekelesToEdit.C_TANULOID
AND (TanuloErtekelesToEdit.ID IS NULL OR
TanuloErtekeles.ID != TanuloErtekelesToEdit.ID)
AND (@pTantargyId IS NOT NULL AND @pTantargyId = TanuloErtekeles.C_TANTARGYID OR
@pTantargyId IS NULL AND TanuloErtekeles.C_TANTARGYID IS NULL)
AND TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID IS NULL
)
SELECT 1
ELSE
SELECT 0
END
GO

View file

@ -0,0 +1,292 @@
-- =============================================
-- Description: <Előszedjük a tanuló értékeléseket főtárgy/altárgy alapján>
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
DROP PROCEDURE IF EXISTS [dbo].[uspGetTanuloErtekelesDataSetByFotargyAltargy]
GO
CREATE PROCEDURE [dbo].[uspGetTanuloErtekelesDataSetByFotargyAltargy]
@pIntezmenyId INT
,@pTanevId INT
,@pTanarId INT
,@pTanuloId INT
,@pFotargyAltargyId INT
,@pAlapKategoriaId INT
,@pDatum DATE = NULL
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
SET NOCOUNT ON;
IF @pDatum IS NULL
SET @pDatum = CONVERT(DATE, GETDATE())
DECLARE @evfolyamTipusId INT = (SELECT EvfolyamTipusId FROM dbo.fnGetTanuloOsztaly(@pTanuloId, @pDatum, @pAlapKategoriaId)) /*TODO:Tobb Osztaly*//*OM-1642*/
CREATE TABLE #KapcsopodoTantargyak(
ID INT
,C_FOTARGYID INT
,C_NEV NVARCHAR(255)
,C_TARGYKATEGORIA INT
,C_INTEZMENYID INT
,C_TANEVID INT
)
INSERT INTO
#KapcsopodoTantargyak
SELECT
ID
,C_FOTARGYID
,C_NEV
,C_TARGYKATEGORIA
,C_INTEZMENYID
,C_TANEVID
FROM
fnGetKapcsolodoTantargyak(@pIntezmenyId, @pTanevId, @pFotargyAltargyId)
CREATE TABLE #OsztalyCsoportIdList(
ID INT PRIMARY KEY
)
INSERT INTO
#OsztalyCsoportIdList (ID)
SELECT
OsztalyCsoport.ID
FROM
T_TANULOCSOPORT_OSSZES TanuloCsoport
INNER JOIN
T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON
OsztalyCsoport.C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID
AND OsztalyCsoport.C_TANEVID = TanuloCsoport.C_TANEVID
AND OsztalyCsoport.TOROLT = 'F'
AND OsztalyCsoport.ID = TanuloCsoport.C_OSZTALYCSOPORTID
WHERE
TanuloCsoport.C_INTEZMENYID = @pIntezmenyId
AND TanuloCsoport.C_TANEVID = @pTanevId
AND TanuloCsoport.TOROLT = 'F'
AND TanuloCsoport.C_TANULOID = @pTanuloId
AND TanuloCsoport.C_BELEPESDATUM <= GETDATE()
AND (TanuloCsoport.C_KILEPESDATUM IS NULL OR TanuloCsoport.C_KILEPESDATUM >= GETDATE())
CREATE TABLE #Tantargyak(
ID INT
,C_FOTARGYID INT
,C_NEV NVARCHAR(255)
,C_TARGYKATEGORIA INT
,C_INTEZMENYID INT
,C_TANEVID INT
);
WITH tantargy_CTE (C_TANTARGYID, C_FOTARGYID, C_INTEZMENYID, C_TANEVID)
AS (
SELECT DISTINCT
Foglalkozas.C_TANTARGYID,
Tantargy.C_FOTARGYID,
Tantargy.C_INTEZMENYID,
Tantargy.C_TANEVID
FROM
T_FOGLALKOZAS_OSSZES Foglalkozas
INNER JOIN
T_TANTARGY_OSSZES Tantargy ON
Tantargy.C_INTEZMENYID = Foglalkozas.C_INTEZMENYID
AND Tantargy.C_TANEVID = Foglalkozas.C_TANEVID
AND Tantargy.TOROLT = 'F'
AND Tantargy.ID = Foglalkozas.C_TANTARGYID
INNER JOIN
#OsztalyCsoportIdList OsztalyCsoport ON
OsztalyCsoport.ID = Foglalkozas.C_OSZTALYCSOPORTID
WHERE
Foglalkozas.C_INTEZMENYID = @pIntezmenyId
AND Foglalkozas.C_TANEVID = @pTanevId
AND Foglalkozas.TOROLT = 'F'
UNION
SELECT DISTINCT
OrarendiOra.C_TANTARGYID,
Tantargy.C_FOTARGYID,
Tantargy.C_INTEZMENYID,
Tantargy.C_TANEVID
FROM
T_ORARENDIORA_OSSZES OrarendiOra
INNER JOIN
T_TANTARGY_OSSZES Tantargy ON
Tantargy.C_INTEZMENYID = OrarendiOra.C_INTEZMENYID
AND Tantargy.C_TANEVID = OrarendiOra.C_TANEVID
AND Tantargy.TOROLT = 'F'
AND Tantargy.ID = OrarendiOra.C_TANTARGYID
INNER JOIN
#OsztalyCsoportIdList OsztalyCsoport ON
OsztalyCsoport.ID = OrarendiOra.C_OSZTALYCSOPORTID
WHERE
OrarendiOra.C_INTEZMENYID = @pIntezmenyId
AND OrarendiOra.C_TANEVID = @pTanevId
AND OrarendiOra.TOROLT = 'F'
UNION
SELECT DISTINCT
TanuloErtekeles.C_TANTARGYID,
Tantargy.C_FOTARGYID,
Tantargy.C_INTEZMENYID,
Tantargy.C_TANEVID
FROM
T_TANULOERTEKELES_OSSZES TanuloErtekeles
INNER JOIN
T_TANTARGY_OSSZES Tantargy ON
Tantargy.C_INTEZMENYID = TanuloErtekeles.C_INTEZMENYID
AND Tantargy.C_TANEVID = TanuloErtekeles.C_TANEVID
AND Tantargy.TOROLT = 'F'
AND Tantargy.ID = TanuloErtekeles.C_TANTARGYID
INNER JOIN
T_OSZTALYCSOPORT_OSSZES Osztaly ON
Osztaly.C_INTEZMENYID = TanuloErtekeles.C_INTEZMENYID
AND Osztaly.C_TANEVID = TanuloErtekeles.C_TANEVID
AND Osztaly.TOROLT = 'F'
AND Osztaly.ID = TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID
AND Osztaly.C_EVFOLYAMTIPUSA = @evfolyamTipusId
WHERE
TanuloErtekeles.C_INTEZMENYID = @pIntezmenyId
AND TanuloErtekeles.C_TANEVID = @pTanevId
AND TanuloErtekeles.TOROLT = 'F'
AND TanuloErtekeles.C_TANULOID = @pTanuloId
AND TanuloErtekeles.C_TANTARGYID IS NOT NULL
UNION ALL
--NOTE: ami-s értékelések miatt, ott nincs mentve C_ROGZITESKORITANULOOSZTALYID
SELECT DISTINCT
TanuloErtekeles.C_TANTARGYID,
Tantargy.C_FOTARGYID,
Tantargy.C_INTEZMENYID,
Tantargy.C_TANEVID
FROM
T_TANULOERTEKELES_OSSZES TanuloErtekeles
INNER JOIN
T_TANTARGY_OSSZES Tantargy ON
Tantargy.C_INTEZMENYID = TanuloErtekeles.C_INTEZMENYID
AND Tantargy.C_TANEVID = TanuloErtekeles.C_TANEVID
AND Tantargy.TOROLT = 'F'
AND Tantargy.ID = TanuloErtekeles.C_TANTARGYID
WHERE
TanuloErtekeles.C_INTEZMENYID = @pIntezmenyId
AND TanuloErtekeles.C_TANEVID = @pTanevId
AND TanuloErtekeles.TOROLT = 'F'
AND TanuloErtekeles.C_TANULOID = @pTanuloId
AND TanuloErtekeles.C_TANTARGYID IS NOT NULL
AND TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID IS NULL
)
INSERT INTO
#Tantargyak (ID, C_FOTARGYID, C_NEV, C_TARGYKATEGORIA, C_INTEZMENYID, C_TANEVID)
SELECT DISTINCT
KapcsopodoTantargy.ID,
KapcsopodoTantargy.C_FOTARGYID,
KapcsopodoTantargy.C_NEV,
KapcsopodoTantargy.C_TARGYKATEGORIA,
KapcsopodoTantargy.C_INTEZMENYID,
KapcsopodoTantargy.C_TANEVID
FROM
tantargy_CTE
INNER JOIN
#KapcsopodoTantargyak KapcsopodoTantargy ON
tantargy_CTE.C_TANTARGYID = KapcsopodoTantargy.ID
OR tantargy_CTE.C_FOTARGYID = KapcsopodoTantargy.ID
WHERE
(KapcsopodoTantargy.ID <> @pFotargyAltargyId)
SELECT
@pTanuloId TanuloId
,Tantargy.ID TantargyId
,Tantargy.C_NEV TantargyNev
,TanuloErtekeles.ID ID
,TanuloErtekeles.C_DATUM Datum
,TanuloErtekeles.C_ROGZITESDATUM RogzitesDatum
,TanuloErtekeles.C_TIPUSID TipusId
,FelhasznaloErtekelo.C_NYOMTATASINEV ErtekeloNyomtatasiNev
,IIF(TanuloErtekeles.ID IS NULL, --
NULL, --
CASE --
WHEN TanuloErtekeles.C_ERTEKELOID = @pTanarId --
THEN 'T' --
ELSE 'F' --
END --
) Modosithato
,TanuloErtekeles.CREATED Created
,TanuloErtekeles.C_ISMAGATARTASSZORGALOM IsMagatartasSzorgalom
,TanuloErtekeles.C_ISERTESITESELKULDVE IsErtesitesElkuldve
,TanuloErtekeles.C_ERTEKELESOSZTALYZATID ErtekelesOsztalyzatId
,TanariAtlagSuly.C_SULY Suly
,TanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg
,TanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV ErtekelesSzovegRovidNev
,TanuloErtekeles.C_ERTEKELESSZAZALEK ErtekelesSzazalek
,TanuloErtekeles.C_ERTEKELESMODID ErtekelesModId
,TanuloErtekeles.C_ERTEKELESTEMA ErtekelesTema
,Tantargy.C_TARGYKATEGORIA TantargyKategoriaId
,Fotargy.ID FotargyId
,Fotargy.C_NEV FotargyNev
,Fotargy.C_TARGYKATEGORIA FotargyTantargyKategoriaId
FROM
#Tantargyak Tantargy
LEFT JOIN(
SELECT
TanuloErtekeles.*
FROM
T_TANULOERTEKELES_OSSZES TanuloErtekeles
INNER JOIN
T_OSZTALYCSOPORT_OSSZES Osztaly ON
Osztaly.C_INTEZMENYID = TanuloErtekeles.C_INTEZMENYID
AND Osztaly.C_TANEVID = TanuloErtekeles.C_TANEVID
AND Osztaly.TOROLT = 'F'
AND Osztaly.ID = TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID
AND Osztaly.C_EVFOLYAMTIPUSA = @evfolyamTipusId
WHERE
TanuloErtekeles.C_INTEZMENYID = @pIntezmenyId
AND TanuloErtekeles.C_TANEVID = @pTanevId
AND TanuloErtekeles.TOROLT = 'F'
AND TanuloErtekeles.C_TANULOID = @pTanuloId
UNION ALL
--NOTE: ami-s értékelések miatt, ott nincs mentve C_ROGZITESKORITANULOOSZTALYID
SELECT
TanuloErtekeles.*
FROM
T_TANULOERTEKELES_OSSZES TanuloErtekeles
WHERE
TanuloErtekeles.C_INTEZMENYID = @pIntezmenyId
AND TanuloErtekeles.C_TANEVID = @pTanevId
AND TanuloErtekeles.TOROLT = 'F'
AND TanuloErtekeles.C_TANULOID = @pTanuloId
AND TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID IS NULL
) AS TanuloErtekeles ON
TanuloErtekeles.C_TANTARGYID = Tantargy.ID
LEFT JOIN
T_FELHASZNALO_OSSZES FelhasznaloErtekelo ON
FelhasznaloErtekelo.C_INTEZMENYID = Tantargy.C_INTEZMENYID
AND FelhasznaloErtekelo.C_TANEVID = Tantargy.C_TANEVID
AND FelhasznaloErtekelo.TOROLT = 'F'
AND FelhasznaloErtekelo.ID = TanuloErtekeles.C_ERTEKELOID
LEFT JOIN
T_TANARIATLAGSULY_OSSZES TanariAtlagSuly ON
TanariAtlagSuly.C_INTEZMENYID = Tantargy.C_INTEZMENYID
AND TanariAtlagSuly.C_TANEVID = Tantargy.C_TANEVID
AND TanariAtlagSuly.TOROLT = 'F'
AND TanariAtlagSuly.C_ERTEKELESMODID = TanuloErtekeles.C_ERTEKELESMODID
AND TanuloErtekeles.C_ISMAGATARTASSZORGALOM = 'F'
AND TanuloErtekeles.C_ERTEKELESOSZTALYZATID IS NOT NULL
LEFT JOIN
T_TANTARGY_OSSZES Fotargy ON
Fotargy.C_INTEZMENYID = Tantargy.C_INTEZMENYID
AND Fotargy.C_TANEVID = Tantargy.C_TANEVID
AND Fotargy.TOROLT = 'F'
AND Fotargy.ID = Tantargy.C_FOTARGYID
END
GO

View file

@ -0,0 +1,367 @@
-- =============================================
-- Description: <Előszedjük a tanuló étrékeléseket tanuló alapján>
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
DROP PROCEDURE IF EXISTS [dbo].[uspGetTanuloErtekelesDataSetByTanulo]
GO
CREATE PROCEDURE [dbo].[uspGetTanuloErtekelesDataSetByTanulo]
@pIntezmenyId INT
,@pTanevId INT
,@pTanarId INT
,@pTanuloId INT
,@pDatum DATE = NULL
,@pFeladatKategoriaId INT
,@pAmiKategoriaId INT
,@pAlapKategoriaId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
SET NOCOUNT ON;
IF @pDatum IS NULL
SET @pDatum = CONVERT(DATE, GETDATE())
DECLARE @evfolyamTipusId INT = (SELECT EvfolyamTipusId FROM dbo.fnGetTanuloOsztaly(@pTanuloId, @pDatum, @pAlapKategoriaId)) /*TODO:Tobb Osztaly*//*OM-1641*/
DECLARE @sql NVARCHAR(MAX)
SET @sql = N'
CREATE TABLE #KapcsopodoTantargyak(
ID INT
,C_FOTARGYID INT
,C_NEV NVARCHAR(255)
,C_TARGYKATEGORIA INT
,C_INTEZMENYID INT
,C_TANEVID INT
)
INSERT INTO
#KapcsopodoTantargyak
SELECT
ID
,C_FOTARGYID
,C_NEV
,C_TARGYKATEGORIA
,C_INTEZMENYID
,C_TANEVID
FROM
fnGetKapcsolodoTantargyak(@pIntezmenyId, @pTanevId, NULL)
CREATE TABLE #OsztalyCsoportIdList(
ID INT PRIMARY KEY
)
INSERT INTO
#OsztalyCsoportIdList (ID)
SELECT
OsztalyCsoport.ID
FROM
T_TANULOCSOPORT_OSSZES TanuloCsoport
INNER JOIN
T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON
OsztalyCsoport.C_INTEZMENYID = TanuloCsoport.C_INTEZMENYID
AND OsztalyCsoport.C_TANEVID = TanuloCsoport.C_TANEVID
AND OsztalyCsoport.TOROLT = ''F''
AND OsztalyCsoport.ID = TanuloCsoport.C_OSZTALYCSOPORTID
WHERE
TanuloCsoport.C_INTEZMENYID = @pIntezmenyId
AND TanuloCsoport.C_TANEVID = @pTanevId
AND TanuloCsoport.TOROLT = ''F''
AND TanuloCsoport.C_TANULOID = @pTanuloId
AND TanuloCsoport.C_BELEPESDATUM <= GETDATE()
AND (TanuloCsoport.C_KILEPESDATUM IS NULL OR TanuloCsoport.C_KILEPESDATUM >= GETDATE()) '
SET @sql += N'
CREATE TABLE #Tantargyak(
ID INT
,C_FOTARGYID INT
,C_NEV NVARCHAR(255)
,C_TARGYKATEGORIA INT
,C_INTEZMENYID INT
,C_TANEVID INT
);
--NOTE: A Magatartást/Szorgalmat beszúrjuk mint tantárgy
INSERT INTO
#Tantargyak (ID, C_FOTARGYID, C_NEV, C_TARGYKATEGORIA, C_INTEZMENYID, C_TANEVID)
SELECT
NULL,
NULL,
''Magatartás/Szorgalom'',
0,
@pIntezmenyId,
@pTanevID;
WITH tantargy_CTE (C_TANTARGYID, C_FOTARGYID, C_INTEZMENYID, C_TANEVID)
AS (
SELECT DISTINCT
Foglalkozas.C_TANTARGYID,
Tantargy.C_FOTARGYID,
Tantargy.C_INTEZMENYID,
Tantargy.C_TANEVID
FROM
T_FOGLALKOZAS_OSSZES Foglalkozas
INNER JOIN
T_TANTARGY_OSSZES Tantargy ON
Tantargy.C_INTEZMENYID = Foglalkozas.C_INTEZMENYID
AND Tantargy.C_TANEVID = Foglalkozas.C_TANEVID
AND Tantargy.TOROLT = ''F''
AND Tantargy.ID = Foglalkozas.C_TANTARGYID
INNER JOIN
#OsztalyCsoportIdList OsztalyCsoport ON
OsztalyCsoport.ID = Foglalkozas.C_OSZTALYCSOPORTID
WHERE
Foglalkozas.C_INTEZMENYID = @pIntezmenyId
AND Foglalkozas.C_TANEVID = @pTanevId
AND Foglalkozas.TOROLT = ''F'' '
SET @sql += N'
UNION
SELECT DISTINCT
OrarendiOra.C_TANTARGYID,
Tantargy.C_FOTARGYID,
Tantargy.C_INTEZMENYID,
Tantargy.C_TANEVID
FROM
T_ORARENDIORA_OSSZES OrarendiOra
INNER JOIN
T_TANTARGY_OSSZES Tantargy ON
Tantargy.C_INTEZMENYID = OrarendiOra.C_INTEZMENYID
AND Tantargy.C_TANEVID = OrarendiOra.C_TANEVID
AND Tantargy.TOROLT = ''F''
AND Tantargy.ID = OrarendiOra.C_TANTARGYID
INNER JOIN
#OsztalyCsoportIdList OsztalyCsoport ON
OsztalyCsoport.ID = OrarendiOra.C_OSZTALYCSOPORTID
WHERE
OrarendiOra.C_INTEZMENYID = @pIntezmenyId
AND OrarendiOra.C_TANEVID = @pTanevId
AND OrarendiOra.TOROLT = ''F'' '
IF @pFeladatKategoriaId = @pAlapKategoriaId OR @pFeladatKategoriaId IS NULL
BEGIN
SET @sql += N'
UNION
SELECT DISTINCT
TanuloErtekeles.C_TANTARGYID,
Tantargy.C_FOTARGYID,
Tantargy.C_INTEZMENYID,
Tantargy.C_TANEVID
FROM
T_TANULOERTEKELES_OSSZES TanuloErtekeles
INNER JOIN
T_TANTARGY_OSSZES Tantargy ON
Tantargy.C_INTEZMENYID = TanuloErtekeles.C_INTEZMENYID
AND Tantargy.C_TANEVID = TanuloErtekeles.C_TANEVID
AND Tantargy.TOROLT = ''F''
AND Tantargy.ID = TanuloErtekeles.C_TANTARGYID
INNER JOIN
T_OSZTALYCSOPORT_OSSZES Osztaly ON
Osztaly.C_INTEZMENYID = TanuloErtekeles.C_INTEZMENYID
AND Osztaly.C_TANEVID = TanuloErtekeles.C_TANEVID
AND Osztaly.TOROLT = ''F''
AND Osztaly.ID = TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID
AND Osztaly.C_EVFOLYAMTIPUSA = @evfolyamTipusId
WHERE
TanuloErtekeles.C_INTEZMENYID = @pIntezmenyId
AND TanuloErtekeles.C_TANEVID = @pTanevId
AND TanuloErtekeles.TOROLT = ''F''
AND TanuloErtekeles.C_TANULOID = @pTanuloId
AND TanuloErtekeles.C_TANTARGYID IS NOT NULL '
END
IF @pFeladatKategoriaId = @pAmiKategoriaId OR @pFeladatKategoriaId IS NULL
BEGIN
-- NOTE: Ami-s értékelésnél a C_ROGZITESKORITANULOOSZTALYID null, ezeket mindig meg kell jeleníteni
SET @sql += N'
UNION ALL
SELECT DISTINCT
TanuloErtekeles.C_TANTARGYID,
Tantargy.C_FOTARGYID,
Tantargy.C_INTEZMENYID,
Tantargy.C_TANEVID
FROM
T_TANULOERTEKELES_OSSZES TanuloErtekeles
INNER JOIN
T_TANTARGY_OSSZES Tantargy ON
Tantargy.C_INTEZMENYID = TanuloErtekeles.C_INTEZMENYID
AND Tantargy.C_TANEVID = TanuloErtekeles.C_TANEVID
AND Tantargy.TOROLT = ''F''
AND Tantargy.ID = TanuloErtekeles.C_TANTARGYID
WHERE
TanuloErtekeles.C_INTEZMENYID = @pIntezmenyId
AND TanuloErtekeles.C_TANEVID = @pTanevId
AND TanuloErtekeles.TOROLT = ''F''
AND TanuloErtekeles.C_TANULOID = @pTanuloId
AND TanuloErtekeles.C_TANTARGYID IS NOT NULL
AND TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID IS NULL '
END
SET @sql += N'
)
INSERT INTO
#Tantargyak (ID, C_FOTARGYID, C_NEV, C_TARGYKATEGORIA, C_INTEZMENYID, C_TANEVID)
SELECT DISTINCT
KapcsopodoTantargy.ID,
KapcsopodoTantargy.C_FOTARGYID,
KapcsopodoTantargy.C_NEV,
KapcsopodoTantargy.C_TARGYKATEGORIA,
KapcsopodoTantargy.C_INTEZMENYID,
KapcsopodoTantargy.C_TANEVID
FROM
tantargy_CTE
INNER JOIN
#KapcsopodoTantargyak KapcsopodoTantargy ON
tantargy_CTE.C_TANTARGYID = KapcsopodoTantargy.ID
OR tantargy_CTE.C_FOTARGYID = KapcsopodoTantargy.ID
SELECT
@pTanuloId TanuloId
,Tantargy.ID TantargyId
,Tantargy.C_NEV TantargyNev
,TanuloErtekeles.ID ID
,TanuloErtekeles.C_DATUM Datum
,TanuloErtekeles.C_ROGZITESDATUM RogzitesDatum
,TanuloErtekeles.C_TIPUSID TipusId
,FelhasznaloErtekelo.C_NYOMTATASINEV ErtekeloNyomtatasiNev
,IIF(TanuloErtekeles.ID IS NULL, --
NULL, --
CASE --
WHEN TanuloErtekeles.C_ERTEKELOID = @pTanarId --
THEN ''T'' --
ELSE ''F'' --
END --
) Modosithato
,TanuloErtekeles.CREATED Created
,IIF(TanuloErtekeles.C_ISMAGATARTASSZORGALOM IS NOT NULL, --
TanuloErtekeles.C_ISMAGATARTASSZORGALOM, --
IIF (Tantargy.ID IS NOT NULL, ''F'', ''T'') --
) IsMagatartasSzorgalom
,TanuloErtekeles.C_ISERTESITESELKULDVE IsErtesitesElkuldve
,TanuloErtekeles.C_ERTEKELESOSZTALYZATID ErtekelesOsztalyzatId
,TanariAtlagSuly.C_SULY Suly
,TanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg
,TanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV ErtekelesSzovegRovidNev
,TanuloErtekeles.C_ERTEKELESSZAZALEK ErtekelesSzazalek
,TanuloErtekeles.C_ERTEKELESMODID ErtekelesModId
,TanuloErtekeles.C_ERTEKELESTEMA ErtekelesTema
,TanuloErtekeles.C_MAGATARTASOSZTALYZATID MagatartasOsztalyzatId
,TanuloErtekeles.C_MAGATARTASSZOVEG MagatartasSzoveg
,TanuloErtekeles.C_MAGATARTASSZOVEGROVIDNEV MagatartasSzovegRovidNev
,TanuloErtekeles.C_MAGATARTASERTEKID MagatartasErtekId
,TanuloErtekeles.C_SZORGALOMOSZTALYZATID SzorgalomOsztalyzatId
,TanuloErtekeles.C_SZORGALOMSZOVEG SzorgalomSzoveg
,TanuloErtekeles.C_SZORGALOMSZOVEGROVIDNEV SzorgalomSzovegRovidNev
,TanuloErtekeles.C_SZORGALOMERTEKID SzorgalomErtekId
,Tantargy.C_TARGYKATEGORIA TantargyKategoriaId
,Fotargy.ID FotargyId
,Fotargy.C_NEV FotargyNev
,Fotargy.C_TARGYKATEGORIA FotargyTantargyKategoriaId
FROM
#Tantargyak Tantargy
LEFT JOIN( '
IF @pFeladatKategoriaId = @pAlapKategoriaId OR @pFeladatKategoriaId IS NULL
BEGIN
SET @sql += N'
SELECT
TanuloErtekeles.*
FROM
T_TANULOERTEKELES_OSSZES TanuloErtekeles
INNER JOIN
T_OSZTALYCSOPORT_OSSZES Osztaly ON
Osztaly.C_INTEZMENYID = TanuloErtekeles.C_INTEZMENYID
AND Osztaly.C_TANEVID = TanuloErtekeles.C_TANEVID
AND Osztaly.TOROLT = ''F''
AND Osztaly.ID = TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID
AND Osztaly.C_EVFOLYAMTIPUSA = @evfolyamTipusId
WHERE
TanuloErtekeles.C_INTEZMENYID = @pIntezmenyId
AND TanuloErtekeles.C_TANEVID = @pTanevId
AND TanuloErtekeles.TOROLT = ''F''
AND TanuloErtekeles.C_TANULOID = @pTanuloId '
END
IF @pFeladatKategoriaId IS NULL
BEGIN
SET @sql += N'
UNION ALL '
END
IF @pFeladatKategoriaId = @pAmiKategoriaId OR @pFeladatKategoriaId IS NULL
BEGIN
-- NOTE: Ami-s értékelésnél a C_ROGZITESKORITANULOOSZTALYID null, ezeket mindig meg kell jeleníteni
SET @sql += N'
SELECT
TanuloErtekeles.*
FROM
T_TANULOERTEKELES_OSSZES TanuloErtekeles
WHERE
TanuloErtekeles.C_INTEZMENYID = @pIntezmenyId
AND TanuloErtekeles.C_TANEVID = @pTanevId
AND TanuloErtekeles.TOROLT = ''F''
AND TanuloErtekeles.C_TANULOID = @pTanuloId
AND TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID IS NULL '
END
SET @sql += N'
) AS TanuloErtekeles ON
(TanuloErtekeles.C_TANTARGYID = Tantargy.ID OR (TanuloErtekeles.C_TANTARGYID IS NULL AND Tantargy.ID IS NULL))
LEFT JOIN
T_FELHASZNALO_OSSZES FelhasznaloErtekelo ON
FelhasznaloErtekelo.C_INTEZMENYID = Tantargy.C_INTEZMENYID
AND FelhasznaloErtekelo.C_TANEVID = Tantargy.C_TANEVID
AND FelhasznaloErtekelo.TOROLT = ''F''
AND FelhasznaloErtekelo.ID = TanuloErtekeles.C_ERTEKELOID
LEFT JOIN
T_TANARIATLAGSULY_OSSZES TanariAtlagSuly ON
TanariAtlagSuly.C_INTEZMENYID = Tantargy.C_INTEZMENYID
AND TanariAtlagSuly.C_TANEVID = Tantargy.C_TANEVID
AND TanariAtlagSuly.TOROLT = ''F''
AND TanariAtlagSuly.C_ERTEKELESMODID = TanuloErtekeles.C_ERTEKELESMODID
AND TanuloErtekeles.C_ISMAGATARTASSZORGALOM = ''F''
AND TanuloErtekeles.C_ERTEKELESOSZTALYZATID IS NOT NULL
LEFT JOIN
T_TANTARGY_OSSZES Fotargy ON
Fotargy.C_INTEZMENYID = Tantargy.C_INTEZMENYID
AND Fotargy.C_TANEVID = Tantargy.C_TANEVID
AND Fotargy.TOROLT = ''F''
AND Fotargy.ID = Tantargy.C_FOTARGYID '
EXEC sp_executesql @sql, N'
@pIntezmenyId INT
,@pTanevId INT
,@pTanarId INT
,@pTanuloId INT
,@pDatum DATE
,@pFeladatKategoriaId INT
,@evfolyamTipusId INT
,@pAmiKategoriaId INT
,@pAlapKategoriaId INT'
,@pIntezmenyId = @pIntezmenyId
,@pTanevId = @pTanevId
,@pTanarId = @pTanarId
,@pTanuloId = @pTanuloId
,@pDatum = @pDatum
,@pFeladatKategoriaId = @pFeladatKategoriaId
,@evfolyamTipusId = @evfolyamTipusId
,@pAmiKategoriaId = @pAmiKategoriaId
,@pAlapKategoriaId = @pAlapKategoriaId
END
GO

View file

@ -0,0 +1,219 @@
-- =============================================
-- Description: <Előszedjük a tanuló értékeléseket részletesen>
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
DROP PROCEDURE IF EXISTS [dbo].[uspGetTanuloErtekelesDetailDataSet]
GO
CREATE PROCEDURE [dbo].[uspGetTanuloErtekelesDetailDataSet]
@pIntezmenyId INT
,@pTanevId INT
,@pTanuloId INT
,@pTantargyId INT = NULL
,@pShowToroltElemek BIT
,@pTanarId INT
,@pErtekelesMegjelenesFajtaEnumTantargyId INT
,@pErtekelesMegjelenesFajtaEnumMagatartasSzorgalomId INT
,@pErtekelesMegjelenesFajtaId INT
,@pDatum DATE = NULL
,@pFeladatKategoriaId INT
,@pAmiKategoriaId INT
,@pAlapKategoriaId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
SET NOCOUNT ON;
IF @pDatum IS NULL
SET @pDatum = CONVERT(DATE, GETDATE())
DECLARE @evfolyamTipusId INT = (SELECT EvfolyamTipusId FROM dbo.fnGetTanuloOsztaly(@pTanuloId, @pDatum, @pAlapKategoriaId)) /*TODO:Tobb Osztaly*//*OM-1643*/
DECLARE @sql NVARCHAR(MAX) = ''
IF @pFeladatKategoriaId = @pAlapKategoriaId OR @pFeladatKategoriaId IS NULL
BEGIN
SET @sql += N'
SELECT
TanuloErtekeles.ID ID
,TanuloErtekeles.C_DATUM Datum
,TanuloErtekeles.C_ROGZITESDATUM RogzitesDatum
,TanuloErtekeles.C_TIPUSID TipusId
,TanuloErtekeles.C_ISERTESITESELKULDVE IsErtesitesElkuldve
,TanuloErtekeles.C_TANORAID TanoraId
,TanuloErtekeles.C_ERTEKELESOSZTALYZATID ErtekelesOsztalyzatId
,TanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg
,TanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV ErtekelesSzovegRovidNev
,TanuloErtekeles.C_ERTEKELESSZAZALEK ErtekelesSzazalek
,TanuloErtekeles.C_ERTEKELESMODID ErtekelesModId
,TanuloErtekeles.C_ERTEKELESTEMA ErtekelesTema
,TanuloErtekeles.C_MAGATARTASOSZTALYZATID MagatartasOsztalyzatId
,TanuloErtekeles.C_MAGATARTASSZOVEG MagatartasSzoveg
,TanuloErtekeles.C_MAGATARTASSZOVEGROVIDNEV MagatartasSzovegRovidNev
,TanuloErtekeles.C_MAGATARTASERTEKID MagatartasErtekId
,TanuloErtekeles.C_SZORGALOMOSZTALYZATID SzorgalomOsztalyzatId
,TanuloErtekeles.C_SZORGALOMSZOVEG SzorgalomSzoveg
,TanuloErtekeles.C_SZORGALOMSZOVEGROVIDNEV SzorgalomSzovegRovidNev
,TanuloErtekeles.C_SZORGALOMERTEKID SzorgalomErtekId
,TanuloErtekeles.C_ISMAGATARTASSZORGALOM IsMagatartasSzorgalom
,TanuloErtekeles.CREATED Created
,TanuloErtekeles.TOROLT Torolt
,TanuloErtekeles.C_TANULOID TanuloId
,TanariAtlagSuly.C_SULY Suly
,Felhasznalo.C_NYOMTATASINEV ErtekeloNyomtatasiNev
,CASE
WHEN TanuloErtekeles.C_ERTEKELOID = @pTanarId
THEN ''T''
ELSE ''F''
END Modosithato
FROM
T_TANULOERTEKELES_OSSZES AS TanuloErtekeles
INNER JOIN
T_OSZTALYCSOPORT Osztaly ON
Osztaly.ID = TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID
AND Osztaly.TOROLT = ''F''
AND Osztaly.C_INTEZMENYID = @pIntezmenyId
AND Osztaly.C_TANEVID = @pTanevId
AND Osztaly.C_EVFOLYAMTIPUSA = @evfolyamTipusId
INNER JOIN
T_FELHASZNALO_OSSZES AS Felhasznalo ON
Felhasznalo.TOROLT = ''F''
AND Felhasznalo.C_INTEZMENYID = @pIntezmenyId
AND Felhasznalo.C_TANEVID = @pTanevId
AND Felhasznalo.ID = TanuloErtekeles.C_ERTEKELOID
LEFT JOIN
T_TANARIATLAGSULY_OSSZES AS TanariAtlagSuly ON
TanariAtlagSuly.TOROLT = ''F''
AND TanariAtlagSuly.C_INTEZMENYID = @pIntezmenyId
AND TanariAtlagSuly.C_TANEVID = @pTanevId
AND TanuloErtekeles.C_ISMAGATARTASSZORGALOM = ''F''
AND TanariAtlagSuly.C_ERTEKELESMODID = TanuloErtekeles.C_ERTEKELESMODID
WHERE
--Ha a @pShowToroltElemek változó True, akkor a törölt elemeket is visszaadjuk!
TanuloErtekeles.TOROLT = IIF(@pShowToroltElemek = 1, TanuloErtekeles.TOROLT, ''F'')
AND TanuloErtekeles.C_INTEZMENYID = @pIntezmenyId
AND TanuloErtekeles.C_TANEVID = @pTanevId
AND TanuloErtekeles.C_TANULOID = @pTanuloId
AND TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID IS NOT NULL
'
SET @sql +=
CASE
WHEN @pErtekelesMegjelenesFajtaId = @pErtekelesMegjelenesFajtaEnumTantargyId
THEN N' AND (TanuloErtekeles.C_ISMAGATARTASSZORGALOM = ''F'' AND TanuloErtekeles.C_TANTARGYID = @pTantargyId)'
WHEN @pErtekelesMegjelenesFajtaId = @pErtekelesMegjelenesFajtaEnumMagatartasSzorgalomId
THEN N' AND (TanuloErtekeles.C_ISMAGATARTASSZORGALOM = ''T'' AND TanuloErtekeles.C_TANTARGYID IS NULL)'
ELSE N' AND ((TanuloErtekeles.C_ISMAGATARTASSZORGALOM = ''F''AND TanuloErtekeles.C_TANTARGYID = @pTantargyId AND @pTantargyId IS NOT NULL) OR
(TanuloErtekeles.C_ISMAGATARTASSZORGALOM = ''T'' AND TanuloErtekeles.C_TANTARGYID IS NULL AND @pTantargyId IS NULL)) '
END
END
IF @pFeladatKategoriaId IS NULL
BEGIN
SET @sql += N'
UNION ALL '
END
IF @pFeladatKategoriaId = @pAmiKategoriaId OR @pFeladatKategoriaId IS NULL
BEGIN
-- NOTE: Ami-s értékelésnél a C_ROGZITESKORITANULOOSZTALYID null, ezeket mindig meg kell jeleníteni
SET @sql += N'
SELECT
TanuloErtekeles.ID ID
,TanuloErtekeles.C_DATUM Datum
,TanuloErtekeles.C_ROGZITESDATUM RogzitesDatum
,TanuloErtekeles.C_TIPUSID TipusId
,TanuloErtekeles.C_ISERTESITESELKULDVE IsErtesitesElkuldve
,TanuloErtekeles.C_TANORAID TanoraId
,TanuloErtekeles.C_ERTEKELESOSZTALYZATID ErtekelesOsztalyzatId
,TanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg
,TanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV ErtekelesSzovegRovidNev
,TanuloErtekeles.C_ERTEKELESSZAZALEK ErtekelesSzazalek
,TanuloErtekeles.C_ERTEKELESMODID ErtekelesModId
,TanuloErtekeles.C_ERTEKELESTEMA ErtekelesTema
,TanuloErtekeles.C_MAGATARTASOSZTALYZATID MagatartasOsztalyzatId
,TanuloErtekeles.C_MAGATARTASSZOVEG MagatartasSzoveg
,TanuloErtekeles.C_MAGATARTASSZOVEGROVIDNEV MagatartasSzovegRovidNev
,TanuloErtekeles.C_MAGATARTASERTEKID MagatartasErtekId
,TanuloErtekeles.C_SZORGALOMOSZTALYZATID SzorgalomOsztalyzatId
,TanuloErtekeles.C_SZORGALOMSZOVEG SzorgalomSzoveg
,TanuloErtekeles.C_SZORGALOMSZOVEGROVIDNEV SzorgalomSzovegRovidNev
,TanuloErtekeles.C_SZORGALOMERTEKID SzorgalomErtekId
,TanuloErtekeles.C_ISMAGATARTASSZORGALOM IsMagatartasSzorgalom
,TanuloErtekeles.CREATED Created
,TanuloErtekeles.TOROLT Torolt
,TanuloErtekeles.C_TANULOID TanuloId
,TanariAtlagSuly.C_SULY Suly
,Felhasznalo.C_NYOMTATASINEV ErtekeloNyomtatasiNev
,CASE
WHEN TanuloErtekeles.C_ERTEKELOID = @pTanarId
THEN ''T''
ELSE ''F''
END Modosithato
FROM
T_TANULOERTEKELES_OSSZES AS TanuloErtekeles
INNER JOIN
T_FELHASZNALO_OSSZES AS Felhasznalo ON
Felhasznalo.TOROLT = ''F''
AND Felhasznalo.C_INTEZMENYID = @pIntezmenyId
AND Felhasznalo.C_TANEVID = @pTanevId
AND Felhasznalo.ID = TanuloErtekeles.C_ERTEKELOID
LEFT JOIN
T_TANARIATLAGSULY_OSSZES AS TanariAtlagSuly ON
TanariAtlagSuly.TOROLT = ''F''
AND TanariAtlagSuly.C_INTEZMENYID = @pIntezmenyId
AND TanariAtlagSuly.C_TANEVID = @pTanevId
AND TanuloErtekeles.C_ISMAGATARTASSZORGALOM = ''F''
AND TanariAtlagSuly.C_ERTEKELESMODID = TanuloErtekeles.C_ERTEKELESMODID
WHERE
--Ha a @pShowToroltElemek változó True, akkor a törölt elemeket is visszaadjuk!
TanuloErtekeles.TOROLT = IIF(@pShowToroltElemek = 1, TanuloErtekeles.TOROLT, ''F'')
AND TanuloErtekeles.C_INTEZMENYID = @pIntezmenyId
AND TanuloErtekeles.C_TANEVID = @pTanevId
AND TanuloErtekeles.C_TANULOID = @pTanuloId
AND TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID IS NULL
'
SET @sql +=
CASE
WHEN @pErtekelesMegjelenesFajtaId = @pErtekelesMegjelenesFajtaEnumTantargyId
THEN N' AND (TanuloErtekeles.C_ISMAGATARTASSZORGALOM = ''F'' AND TanuloErtekeles.C_TANTARGYID = @pTantargyId)'
WHEN @pErtekelesMegjelenesFajtaId = @pErtekelesMegjelenesFajtaEnumMagatartasSzorgalomId
THEN N' AND (TanuloErtekeles.C_ISMAGATARTASSZORGALOM = ''T'' AND TanuloErtekeles.C_TANTARGYID IS NULL)'
ELSE N' AND ((TanuloErtekeles.C_ISMAGATARTASSZORGALOM = ''F''AND TanuloErtekeles.C_TANTARGYID = @pTantargyId AND @pTantargyId IS NOT NULL) OR
(TanuloErtekeles.C_ISMAGATARTASSZORGALOM = ''T'' AND TanuloErtekeles.C_TANTARGYID IS NULL AND @pTantargyId IS NULL))'
END
END
SET @sql += ' ORDER BY
Datum DESC
,RogzitesDatum DESC'
EXEC sp_executesql @sql, N'
@pIntezmenyId INT
,@pTanevId INT
,@pTanuloId INT
,@pTantargyId INT = NULL
,@pShowToroltElemek BIT
,@pTanarId INT
,@evfolyamTipusId INT'
,@pIntezmenyId = @pIntezmenyId
,@pTanevId = @pTanevId
,@pTanuloId = @pTanuloId
,@pTantargyId = @pTantargyId
,@pShowToroltElemek = @pShowToroltElemek
,@pTanarId = @pTanarId
,@evfolyamTipusId = @evfolyamTipusId
END
GO