148 lines
5.4 KiB
Transact-SQL
148 lines
5.4 KiB
Transact-SQL
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
IF OBJECT_ID('[dbo].[sp_GetTanuloErtekelesDetailDataSet]') IS NOT NULL
|
|
BEGIN
|
|
DROP PROCEDURE [dbo].[sp_GetTanuloErtekelesDetailDataSet]
|
|
END
|
|
GO
|
|
|
|
-- =============================================
|
|
-- Description: <Előszedjük a tanuló értékeléseket részletesen>
|
|
-- =============================================
|
|
CREATE PROCEDURE [dbo].[sp_GetTanuloErtekelesDetailDataSet]
|
|
@pIntezmenyId INT
|
|
,@pTanevId INT
|
|
,@pTanuloId INT
|
|
,@pTantargyId INT = NULL
|
|
,@pShowToroltElemek BIT
|
|
,@pIsFotargyAltargyLekerdezes BIT
|
|
,@pTanarId INT
|
|
,@pErtekelesMegjelenesFajtaEnumTantargyId INT
|
|
,@pErtekelesMegjelenesFajtaEnumMagatartasSzorgalomId INT
|
|
,@pErtekelesMegjelenesFajtaEnumTanuloId INT
|
|
,@pErtekelesMegjelenesFajtaId INT
|
|
AS
|
|
BEGIN
|
|
|
|
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
|
|
SET NOCOUNT ON;
|
|
|
|
SELECT
|
|
TanuloErtekeles.ID ID
|
|
,TanuloErtekeles.C_DATUM Datum
|
|
,TanuloErtekeles.C_TIPUSID TipusId
|
|
,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.TOROLT Torolt
|
|
,TanuloCsoport.C_TANULOID TanuloId
|
|
,TanariAtlagSuly.C_SULY Suly
|
|
,Felhasznalo.C_NYOMTATASINEV ErtekeloNyomtatasiNev
|
|
,CASE
|
|
WHEN TanuloErtekeles.C_ERTEKELOID = @pTanarId
|
|
THEN 'T'
|
|
ELSE 'F'
|
|
END Modosithato
|
|
FROM (
|
|
SELECT DISTINCT
|
|
C_TANULOID
|
|
FROM
|
|
T_TANULOCSOPORT
|
|
WHERE
|
|
TOROLT = 'F'
|
|
AND C_TANULOID = @pTanuloId
|
|
AND C_INTEZMENYID = @pIntezmenyId
|
|
AND C_TANEVID = @pTanevId
|
|
) AS TanuloCsoport
|
|
INNER JOIN (
|
|
SELECT
|
|
TanuloErtekeles.ID
|
|
,TanuloErtekeles.C_DATUM
|
|
,TanuloErtekeles.C_TIPUSID
|
|
,TanuloErtekeles.C_ERTEKELESOSZTALYZATID
|
|
,TanuloErtekeles.C_ERTEKELESSZOVEG
|
|
,TanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV
|
|
,TanuloErtekeles.C_ERTEKELESSZAZALEK
|
|
,TanuloErtekeles.C_ERTEKELESMODID
|
|
,TanuloErtekeles.C_ERTEKELESTEMA
|
|
,TanuloErtekeles.C_MAGATARTASOSZTALYZATID
|
|
,TanuloErtekeles.C_MAGATARTASSZOVEG
|
|
,TanuloErtekeles.C_MAGATARTASSZOVEGROVIDNEV
|
|
,TanuloErtekeles.C_MAGATARTASERTEKID
|
|
,TanuloErtekeles.C_SZORGALOMOSZTALYZATID
|
|
,TanuloErtekeles.C_SZORGALOMSZOVEG
|
|
,TanuloErtekeles.C_SZORGALOMSZOVEGROVIDNEV
|
|
,TanuloErtekeles.C_SZORGALOMERTEKID
|
|
,TanuloErtekeles.C_ISMAGATARTASSZORGALOM
|
|
,TanuloErtekeles.C_OSZTALYCSOPORTID
|
|
,TanuloErtekeles.C_TANULOID
|
|
,TanuloErtekeles.C_ERTEKELOID
|
|
,TanuloErtekeles.C_TANORAID
|
|
,TanuloErtekeles.TOROLT
|
|
,TanuloErtekeles.CREATOR
|
|
FROM
|
|
T_TANULOERTEKELES_OSSZES TanuloErtekeles
|
|
INNER JOIN T_OSZTALYCSOPORT Osztaly ON
|
|
Osztaly.ID = TanuloErtekeles.C_ROGZITESKORITANULOOSZTALYID
|
|
AND Osztaly.TOROLT = 'F'
|
|
AND Osztaly.C_EVFOLYAMTIPUSA = (SELECT EvfolyamTipusId FROM dbo.fnGetTanuloOsztaly(TanuloErtekeles.C_TANULOID))
|
|
WHERE
|
|
(
|
|
(@pErtekelesMegjelenesFajtaId = @pErtekelesMegjelenesFajtaEnumTantargyId AND TanuloErtekeles.C_ISMAGATARTASSZORGALOM = 'F' AND TanuloErtekeles.C_TANTARGYID = @pTantargyId) OR
|
|
(@pErtekelesMegjelenesFajtaId = @pErtekelesMegjelenesFajtaEnumMagatartasSzorgalomId AND TanuloErtekeles.C_ISMAGATARTASSZORGALOM = 'T' AND TanuloErtekeles.C_TANTARGYID IS NULL) OR
|
|
(@pErtekelesMegjelenesFajtaId = @pErtekelesMegjelenesFajtaEnumTanuloId AND (TanuloErtekeles.C_ISMAGATARTASSZORGALOM = 'F' AND @pTantargyId IS NOT NULL AND TanuloErtekeles.C_TANTARGYID = @pTantargyId) OR (TanuloErtekeles.C_ISMAGATARTASSZORGALOM = 'T' AND TanuloErtekeles.C_TANTARGYID IS NULL AND @pTantargyId IS NULL))
|
|
)
|
|
--Ha a @pShowToroltElemek változó True, akkor a törölt elemeket is visszaadjuk!
|
|
AND TanuloErtekeles.TOROLT = IIF(@pShowToroltElemek = 1, TanuloErtekeles.TOROLT, 'F')
|
|
AND TanuloErtekeles.C_INTEZMENYID = @pIntezmenyId
|
|
AND TanuloErtekeles.C_TANEVID = @pTanevId
|
|
) AS TanuloErtekeles
|
|
ON TanuloErtekeles.C_TANULOID = TanuloCsoport.C_TANULOID
|
|
INNER JOIN (
|
|
SELECT
|
|
ID
|
|
,C_NYOMTATASINEV
|
|
FROM
|
|
T_FELHASZNALO
|
|
WHERE
|
|
TOROLT = 'F'
|
|
AND C_INTEZMENYID = @pIntezmenyId
|
|
AND C_TANEVID = @pTanevId
|
|
) AS Felhasznalo
|
|
ON Felhasznalo.ID = TanuloErtekeles.C_ERTEKELOID
|
|
LEFT JOIN (
|
|
SELECT
|
|
C_SULY
|
|
,C_ERTEKELESMODID
|
|
FROM
|
|
T_TANARIATLAGSULY_OSSZES
|
|
WHERE
|
|
TOROLT = 'F'
|
|
AND C_INTEZMENYID = @pIntezmenyId
|
|
AND C_TANEVID = @pTanevId
|
|
) AS TanariAtlagSuly ON
|
|
TanuloErtekeles.C_ISMAGATARTASSZORGALOM = 'F'
|
|
AND TanariAtlagSuly.C_ERTEKELESMODID = TanuloErtekeles.C_ERTEKELESMODID
|
|
|
|
|
|
END
|
|
|
|
|
|
GO
|
|
|