init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,63 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_CheckTanuloEgyszerAdhatoTanuloErtekelesValidation]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_CheckTanuloEgyszerAdhatoTanuloErtekelesValidation]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: <Ellenőrizzuk, hogy a tanulónak van-e már egyszer adható tanuló értékelése, ha nincs akkor true, ha van akkor false>
|
||||
-- =============================================
|
||||
CREATE PROCEDURE [dbo].[sp_CheckTanuloEgyszerAdhatoTanuloErtekelesValidation]
|
||||
@pId INT
|
||||
,@pTipusId INT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets frominterfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @TanuloId INT
|
||||
DECLARE @TantargyId INT
|
||||
|
||||
SELECT
|
||||
@TanuloId = T_TANULOERTEKELES_OSSZES.C_TANULOID
|
||||
,@TantargyId = T_TANULOERTEKELES_OSSZES.C_TANTARGYID
|
||||
FROM
|
||||
T_TANULOERTEKELES_OSSZES
|
||||
WHERE
|
||||
T_TANULOERTEKELES_OSSZES.ID = @pId
|
||||
|
||||
SET @TanuloId = (
|
||||
SELECT
|
||||
T_TANULOERTEKELES_OSSZES.C_TANULOID
|
||||
FROM
|
||||
T_TANULOERTEKELES_OSSZES
|
||||
WHERE
|
||||
T_TANULOERTEKELES_OSSZES.ID = @pId
|
||||
)
|
||||
|
||||
IF EXISTS (
|
||||
SELECT 1
|
||||
FROM
|
||||
T_TANULOERTEKELES_OSSZES
|
||||
WHERE
|
||||
T_TANULOERTEKELES_OSSZES.TOROLT = 'F'
|
||||
AND T_TANULOERTEKELES_OSSZES.C_TIPUSID = @pTipusId
|
||||
AND T_TANULOERTEKELES_OSSZES.C_TANULOID = @TanuloId
|
||||
AND ((@TantargyId IS NOT NULL AND T_TANULOERTEKELES_OSSZES.C_TANTARGYID = @TantargyId) OR (@TantargyId IS NULL AND T_TANULOERTEKELES_OSSZES.C_TANTARGYID IS NULL))
|
||||
AND T_TANULOERTEKELES_OSSZES.ID != @pId
|
||||
)
|
||||
SELECT 1
|
||||
ELSE
|
||||
SELECT 0
|
||||
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
|
|
@ -0,0 +1,248 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GenerateErtekelesekTempTabla]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GenerateErtekelesekTempTabla]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: <Előszedi a tanuló értékeléseket, havi bontásban tantárgy és osztálycsoport alapján>
|
||||
-- NOTE: EZT A HÁROM TÁROLT ELJÁRÁST EGYBEN KELL KEZELNI, HA MÓDOSÍTJUK!!!
|
||||
-- - sp_GenerateErtekelesekTempTabla
|
||||
-- - sp_GenerateErtekelesekMagatartasSzorgalomTempTabla
|
||||
-- - sp_GenerateErtekelesekTempTablaByTanulo
|
||||
-- =============================================
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GenerateErtekelesekTempTabla]
|
||||
@pTantargyId INT
|
||||
,@pOsztalyCsoportId INT
|
||||
,@pFelevVegeDatum DATE
|
||||
,@pErtekelesTipusEvkozi INT
|
||||
,@pErtekelesTipusFelevi INT
|
||||
,@pErtekelesTipusEvvegi 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 = GETDATE()
|
||||
|
||||
DECLARE @TempDictionaryItem TABLE (
|
||||
ID INT PRIMARY KEY
|
||||
,C_VALUE INT
|
||||
,C_ORDER INT
|
||||
,C_INTEZMENYID INT
|
||||
,C_TANEVID INT
|
||||
)
|
||||
|
||||
INSERT INTO @TempDictionaryItem
|
||||
SELECT
|
||||
ID
|
||||
,C_VALUE
|
||||
,C_ORDER
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
FROM
|
||||
T_DICTIONARYITEMBASE
|
||||
WHERE
|
||||
C_TYPE IN ('OsztalyzatTipus')
|
||||
AND TOROLT = 'F'
|
||||
|
||||
DECLARE @TempTanuloErtekeles TABLE (
|
||||
ID INT
|
||||
,Datum NVARCHAR(255)
|
||||
,TipusId INT
|
||||
,Honap NVARCHAR(2)
|
||||
,TanuloId INT
|
||||
,Nev NVARCHAR(255)
|
||||
,ErtekelesOsztalyzat INT
|
||||
,ErtekelesSzoveg NVARCHAR(MAX)
|
||||
,ErtekelesSzovegRovidNev NVARCHAR(3)
|
||||
,ErtekelesSzazalek INT
|
||||
,Suly INT
|
||||
)
|
||||
|
||||
INSERT INTO @TempTanuloErtekeles
|
||||
SELECT DISTINCT *
|
||||
FROM (
|
||||
SELECT DISTINCT
|
||||
tanuloErtekeles.ID ID
|
||||
,tanuloErtekeles.C_DATUM Datum
|
||||
,tanuloErtekeles.C_TIPUSID TipusId
|
||||
,CASE WHEN tanuloErtekeles.C_TIPUSID = @pErtekelesTipusFelevi
|
||||
THEN 'I'
|
||||
WHEN tanuloErtekeles.C_TIPUSID = @pErtekelesTipusEvvegi
|
||||
THEN 'II'
|
||||
ELSE
|
||||
CASE
|
||||
WHEN CAST(tanuloErtekeles.C_DATUM AS DATE) > @pFelevVegeDatum
|
||||
THEN CAST(MONTH(tanuloErtekeles.C_DATUM) + 1 AS NVARCHAR(2))
|
||||
ELSE CAST(MONTH(tanuloErtekeles.C_DATUM) AS NVARCHAR(2))
|
||||
END
|
||||
END Honap
|
||||
,tanuloCsoport.C_TANULOID TanuloId
|
||||
,felhasznalo.C_NYOMTATASINEV Nev
|
||||
,ertekelesOsztalyzat.C_VALUE ErtekelesOsztalyzat
|
||||
,tanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg
|
||||
,tanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV ErtekelesSzovegRovidNev
|
||||
,tanuloErtekeles.C_ERTEKELESSZAZALEK ErtekelesSzazalek
|
||||
,tanariAtlagSuly.C_SULY Suly
|
||||
FROM (
|
||||
SELECT
|
||||
C_TANULOID
|
||||
FROM
|
||||
T_TANULOCSOPORT
|
||||
WHERE
|
||||
TOROLT = 'F'
|
||||
AND C_BELEPESDATUM <= @pDatum
|
||||
AND (C_KILEPESDATUM IS NULL OR C_KILEPESDATUM >= @pDatum)
|
||||
AND C_OSZTALYCSOPORTID = @pOsztalyCsoportId
|
||||
) AS tanuloCsoport
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
ID
|
||||
,C_NYOMTATASINEV
|
||||
FROM
|
||||
T_FELHASZNALO
|
||||
WHERE
|
||||
TOROLT = 'F'
|
||||
) AS felhasznalo ON
|
||||
felhasznalo.ID = tanuloCsoport.C_TANULOID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
ID
|
||||
,C_DATUM
|
||||
,C_TIPUSID
|
||||
,C_TANULOID
|
||||
,C_ERTEKELESOSZTALYZATID
|
||||
,C_ERTEKELESSZOVEG
|
||||
,C_ERTEKELESSZOVEGROVIDNEV
|
||||
,C_ERTEKELESSZAZALEK
|
||||
,C_ERTEKELESMODID
|
||||
FROM
|
||||
T_TANULOERTEKELES
|
||||
WHERE
|
||||
TOROLT = 'F'
|
||||
AND C_TANTARGYID = @pTantargyId
|
||||
) AS tanuloErtekeles ON
|
||||
tanuloErtekeles.C_TANULOID = tanuloCsoport.C_TANULOID
|
||||
LEFT JOIN @TempDictionaryItem AS ertekelesOsztalyzat ON ertekelesOsztalyzat.ID = tanuloErtekeles.C_ERTEKELESOSZTALYZATID
|
||||
LEFT JOIN T_TANARIATLAGSULY tanariAtlagSuly ON
|
||||
tanariAtlagSuly.C_ERTEKELESMODID = tanuloErtekeles.C_ERTEKELESMODID
|
||||
AND tanuloErtekeles.C_ERTEKELESOSZTALYZATID IS NOT NULL
|
||||
AND tanariAtlagSuly.TOROLT = 'F'
|
||||
) AS temp
|
||||
|
||||
SELECT
|
||||
result.*
|
||||
,result2.ErtkelesMentesseg
|
||||
,result2.SzovegesenErtekelheto
|
||||
FROM (
|
||||
SELECT
|
||||
pivotErtekelesek.TanuloId ID
|
||||
,Nev Nev
|
||||
,[9] [09]
|
||||
,[10] [10]
|
||||
,[11] [11]
|
||||
,[12] [12]
|
||||
,[1] [01I]
|
||||
,[2] [01II]
|
||||
,[3] [02]
|
||||
,[4] [03]
|
||||
,[5] [04]
|
||||
,[6] [05]
|
||||
,[7] [06]
|
||||
,[I] [I]
|
||||
,[II] [II]
|
||||
,atlag.Jegy Atlag
|
||||
,@pTantargyId TantargyId
|
||||
FROM (
|
||||
SELECT DISTINCT
|
||||
tempErtekeles1.Nev
|
||||
,STUFF (
|
||||
(SELECT
|
||||
','
|
||||
+ ISNULL(CAST(tempErtekeles2.ErtekelesOsztalyzat AS VARCHAR(1)), '')
|
||||
+ ISNULL(CAST(
|
||||
CASE
|
||||
WHEN tempErtekeles2.ErtekelesSzoveg IS NULL OR LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(tempErtekeles2.ErtekelesSzoveg, CHAR(9), ''), CHAR(10), ''), CHAR(13), ''))) = ''
|
||||
THEN NULL
|
||||
ELSE
|
||||
ISNULL(tempErtekeles2.ErtekelesSzovegRovidNev, 'sz')
|
||||
END AS VARCHAR(3)), '')
|
||||
+ ISNULL(CAST(tempErtekeles2.ErtekelesSzazalek AS VARCHAR(3)), '')
|
||||
FROM
|
||||
@TempTanuloErtekeles tempErtekeles2
|
||||
WHERE
|
||||
tempErtekeles1.TanuloId = tempErtekeles2.TanuloId AND
|
||||
tempErtekeles1.Honap = tempErtekeles2.Honap
|
||||
FOR XML PATH ('')
|
||||
), 1, 1, ''
|
||||
) TanuloErtekelesList
|
||||
,tempErtekeles1.Honap
|
||||
,tempErtekeles1.TanuloId
|
||||
FROM
|
||||
@TempTanuloErtekeles tempErtekeles1
|
||||
) AS erdemjegyek
|
||||
PIVOT (
|
||||
MAX(TanuloErtekelesList)
|
||||
FOR Honap
|
||||
IN ([I], [II], [9] ,[10] ,[11] ,[12] ,[1] ,[2] ,[3] ,[4] ,[5] ,[6], [7])
|
||||
) AS pivotErtekelesek
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
TanuloId TanuloId
|
||||
,ROUND (
|
||||
SUM(CAST(ErtekelesOsztalyzat AS FLOAT) * CAST(ISNULL(Suly, 100) AS FLOAT) / 100) / SUM(CAST(ISNULL(Suly, 100) AS FLOAT) / 100), 2
|
||||
) Jegy
|
||||
FROM
|
||||
@TempTanuloErtekeles
|
||||
WHERE
|
||||
TipusId = @pErtekelesTipusEvkozi
|
||||
AND ErtekelesOsztalyzat IS NOT NULL
|
||||
GROUP BY
|
||||
TanuloId
|
||||
) AS atlag ON
|
||||
pivotErtekelesek.TanuloId = atlag.TanuloId
|
||||
) AS result
|
||||
INNER JOIN (
|
||||
SELECT DISTINCT
|
||||
felhasznalo.ID ID
|
||||
,tanuloMentesseg.C_ERTEKELESMENTESITES ErtkelesMentesseg
|
||||
,tanuloMentesseg.C_SZOVEGESENERTEKELHETO SzovegesenErtekelheto
|
||||
FROM
|
||||
T_TANULOCSOPORT AS tanuloCsoport
|
||||
INNER JOIN T_FELHASZNALO felhasznalo ON
|
||||
felhasznalo.ID = tanuloCsoport.C_TANULOID
|
||||
LEFT JOIN T_TANULOMENTESSEG tanuloMentesseg ON
|
||||
tanuloMentesseg.C_TANULOID = felhasznalo.ID
|
||||
AND tanuloMentesseg.TOROLT = 'F'
|
||||
AND tanuloMentesseg.C_TANTARGYID = @pTantargyId
|
||||
AND (tanuloMentesseg.C_KEZDETE IS NULL OR tanuloMentesseg.C_KEZDETE <= @pDatum)
|
||||
AND (tanuloMentesseg.C_VEGE IS NULL OR tanuloMentesseg.C_VEGE >= @pDatum)
|
||||
WHERE
|
||||
tanuloCsoport.TOROLT = 'F'
|
||||
AND tanuloCsoport.C_OSZTALYCSOPORTID = @pOsztalyCsoportId
|
||||
AND tanuloCsoport.C_BELEPESDATUM <= @pDatum
|
||||
AND (tanuloCsoport.C_KILEPESDATUM IS NULL OR tanuloCsoport.C_KILEPESDATUM >= @pDatum)
|
||||
) AS result2 ON
|
||||
result2.ID = result.ID
|
||||
ORDER BY
|
||||
result.Nev
|
||||
|
||||
IF OBJECT_ID('tempdb..#TempDictionaryItem') IS NOT NULL DROP TABLE #TempDictionaryItem
|
||||
IF OBJECT_ID('tempdb..#TempTanuloErtekeles') IS NOT NULL DROP TABLE #TempTanuloErtekeles
|
||||
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
|
||||
|
|
@ -0,0 +1,361 @@
|
|||
IF OBJECT_ID('[dbo].[sp_GenerateErtekelesekTempTablaByTanulo]') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GenerateErtekelesekTempTablaByTanulo]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: <Előszedi a tanulú értékeléseket, havi bontásban tanuló alapján>
|
||||
-- NOTE: EZT A HÁROM TÁROLT ELJÁRÁST EGYBEN KELL KEZELNI, HA MÓDOSÍTJUK!!!
|
||||
-- - sp_GenerateErtekelesekTempTabla
|
||||
-- - sp_GenerateErtekelesekMagatartasSzorgalomTempTabla
|
||||
-- - sp_GenerateErtekelesekTempTablaByTanulo
|
||||
-- =============================================
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GenerateErtekelesekTempTablaByTanulo]
|
||||
@pTanuloId INT
|
||||
,@pFotargyAltargyId INT = NULL
|
||||
,@pFelevVegeDatum DATE
|
||||
,@pErtekelesTipusEvkozi INT
|
||||
,@pErtekelesTipusFelevi INT
|
||||
,@pErtekelesTipusEvvegi INT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @TempDictionaryItem TABLE (
|
||||
ID INT PRIMARY KEY
|
||||
,C_VALUE INT
|
||||
,C_ORDER INT
|
||||
,C_INTEZMENYID INT
|
||||
,C_TANEVID INT
|
||||
)
|
||||
|
||||
INSERT INTO @TempDictionaryItem
|
||||
SELECT
|
||||
ID
|
||||
,C_VALUE
|
||||
,C_ORDER
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
FROM
|
||||
T_DICTIONARYITEMBASE
|
||||
WHERE
|
||||
C_TYPE IN ('OsztalyzatTipus', 'MagatartasErtekelesTipus', 'SzorgalomErtekelesTipus', 'TargyKategoriaTipus')
|
||||
AND TOROLT = 'F'
|
||||
|
||||
DECLARE @TempTanuloErtekeles TABLE (
|
||||
ID INT
|
||||
,Datum NVARCHAR(255)
|
||||
,TipusId INT
|
||||
,Honap NVARCHAR(2)
|
||||
,TanuloId INT
|
||||
,Nev NVARCHAR(255)
|
||||
,ErtekelesOsztalyzat INT
|
||||
,ErtekelesSzoveg NVARCHAR(MAX)
|
||||
,ErtekelesSzovegRovidNev NVARCHAR(3)
|
||||
,ErtekelesSzazalek INT
|
||||
,MagatartasOsztalyzat INT
|
||||
,MagatartasSzoveg NVARCHAR(MAX)
|
||||
,MagatartasSzovegRovidNev NVARCHAR(3)
|
||||
,MagatartasErtek INT
|
||||
,SzorgalomOsztalyzat INT
|
||||
,SzorgalomSzoveg NVARCHAR(MAX)
|
||||
,SzorgalomSzovegRovidNev NVARCHAR(3)
|
||||
,SzorgalomErtek INT
|
||||
,Suly INT
|
||||
,TantargyId INT
|
||||
,TantargyKategoria INT
|
||||
,FotargyId INT
|
||||
)
|
||||
|
||||
INSERT INTO @TempTanuloErtekeles (
|
||||
ID
|
||||
,Datum
|
||||
,TipusId
|
||||
,Honap
|
||||
,TanuloId
|
||||
,Nev
|
||||
,ErtekelesOsztalyzat
|
||||
,ErtekelesSzoveg
|
||||
,ErtekelesSzovegRovidNev
|
||||
,ErtekelesSzazalek
|
||||
,MagatartasOsztalyzat
|
||||
,MagatartasSzoveg
|
||||
,MagatartasSzovegRovidNev
|
||||
,MagatartasErtek
|
||||
,SzorgalomOsztalyzat
|
||||
,SzorgalomSzoveg
|
||||
,SzorgalomSzovegRovidNev
|
||||
,SzorgalomErtek
|
||||
,Suly
|
||||
,TantargyId
|
||||
,TantargyKategoria
|
||||
,FotargyId
|
||||
)
|
||||
SELECT DISTINCT *
|
||||
FROM (
|
||||
SELECT DISTINCT
|
||||
tanuloErtekeles.ID ID
|
||||
,tanuloErtekeles.C_DATUM Datum
|
||||
,tanuloErtekeles.C_TIPUSID TipusId
|
||||
,CASE
|
||||
WHEN tanuloErtekeles.C_TIPUSID = @pErtekelesTipusFelevi
|
||||
THEN 'I'
|
||||
WHEN tanuloErtekeles.C_TIPUSID = @pErtekelesTipusEvvegi
|
||||
THEN 'II'
|
||||
ELSE
|
||||
CASE
|
||||
WHEN CAST(tanuloErtekeles.C_DATUM AS DATE) > @pFelevVegeDatum
|
||||
THEN CAST(MONTH(tanuloErtekeles.C_DATUM) + 1 AS NVARCHAR(2))
|
||||
ELSE CAST(MONTH(tanuloErtekeles.C_DATUM) AS NVARCHAR(2))
|
||||
END
|
||||
END Honap
|
||||
,tanuloCsoport.C_TANULOID TanuloId
|
||||
,tantargy.C_NEV Nev
|
||||
,ertekelesOsztalyzat.C_VALUE ErtekelesOsztalyzat
|
||||
,tanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg
|
||||
,tanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV ErtekelesSzovegRovidNev
|
||||
,tanuloErtekeles.C_ERTEKELESSZAZALEK ErtekelesSzazalek
|
||||
,NULL AS MagatartasOsztalyzat
|
||||
,NULL AS MagatartasSzoveg
|
||||
,NULL AS MagatartasSzovegRovidNev
|
||||
,NULL AS MagatartasErtek
|
||||
,NULL AS SzorgalomOsztalyzat
|
||||
,NULL AS SzorgalomSzoveg
|
||||
,NULL AS SzorgalomSzovegRovidNev
|
||||
,NULL AS SzorgalomErtek
|
||||
,tanariAtlagSuly.C_SULY Suly
|
||||
,tantargy.ID TantargyId
|
||||
,tantargyKategoria.C_ORDER TantargyKategoria
|
||||
,tantargy.C_FOTARGYID FotargyId
|
||||
FROM T_TANULOCSOPORT AS tanuloCsoport
|
||||
INNER JOIN T_ORARENDIORA orarendiOra ON orarendiOra.C_OSZTALYCSOPORTID = tanulocsoport.C_OSZTALYCSOPORTID AND orarendiOra.TOROLT = 'F'
|
||||
INNER JOIN dbo.fnGetKapcsolodoTantargyak(@pFotargyAltargyId) AS tantargy ON
|
||||
(@pFotargyAltargyId IS NULL AND tantargy.ID = orarendiOra.C_TANTARGYID)
|
||||
OR (@pFotargyAltargyId IS NOT NULL AND tantargy.ID <> @pFotargyAltargyId)
|
||||
OR (tantargy.ID IN (
|
||||
SELECT
|
||||
C_FOTARGYID
|
||||
FROM
|
||||
T_TANTARGY
|
||||
WHERE
|
||||
ID = orarendiOra.C_TANTARGYID
|
||||
AND @pFotargyAltargyId IS NULL
|
||||
AND TOROLT = 'F'
|
||||
)
|
||||
)
|
||||
LEFT JOIN @TempDictionaryItem AS tantargyKategoria ON tantargyKategoria.ID = tantargy.C_TARGYKATEGORIA
|
||||
LEFT JOIN T_TANULOERTEKELES tanuloErtekeles
|
||||
ON tanuloErtekeles.C_TANULOID = @pTanuloId
|
||||
AND tanuloErtekeles.C_TANTARGYID = tantargy.ID
|
||||
AND tanuloErtekeles.TOROLT = 'F'
|
||||
AND tanuloErtekeles.C_ISMAGATARTASSZORGALOM = 'F'
|
||||
LEFT JOIN @TempDictionaryItem AS ertekelesOsztalyzat ON ertekelesOsztalyzat.ID = tanuloErtekeles.C_ERTEKELESOSZTALYZATID
|
||||
LEFT JOIN T_TANARIATLAGSULY tanariAtlagSuly
|
||||
ON tanariAtlagSuly.C_ERTEKELESMODID = tanuloErtekeles.C_ERTEKELESMODID
|
||||
AND tanuloErtekeles.C_ERTEKELESOSZTALYZATID IS NOT NULL
|
||||
AND tanariAtlagSuly.TOROLT = 'F'
|
||||
WHERE tanuloCsoport.TOROLT = 'F'
|
||||
AND tanuloCsoport.C_TANULOID = @pTanuloId
|
||||
) AS temp
|
||||
|
||||
IF @pFotargyAltargyId IS NULL BEGIN
|
||||
|
||||
INSERT INTO @TempTanuloErtekeles (
|
||||
ID
|
||||
,Datum
|
||||
,TipusId
|
||||
,Honap
|
||||
,TanuloId
|
||||
,Nev
|
||||
,ErtekelesOsztalyzat
|
||||
,ErtekelesSzoveg
|
||||
,ErtekelesSzovegRovidNev
|
||||
,ErtekelesSzazalek
|
||||
,MagatartasOsztalyzat
|
||||
,MagatartasSzoveg
|
||||
,MagatartasSzovegRovidNev
|
||||
,MagatartasErtek
|
||||
,SzorgalomOsztalyzat
|
||||
,SzorgalomSzoveg
|
||||
,SzorgalomSzovegRovidNev
|
||||
,SzorgalomErtek
|
||||
,Suly
|
||||
,TantargyId
|
||||
,TantargyKategoria
|
||||
,FotargyId
|
||||
)
|
||||
SELECT DISTINCT
|
||||
tanuloErtekeles.ID ID
|
||||
,tanuloErtekeles.C_DATUM Datum
|
||||
,tanuloErtekeles.C_TIPUSID TipusId
|
||||
,CASE
|
||||
WHEN tanuloErtekeles.C_TIPUSID = @pErtekelesTipusFelevi
|
||||
THEN 'I'
|
||||
WHEN tanuloErtekeles.C_TIPUSID = @pErtekelesTipusEvvegi
|
||||
THEN 'II'
|
||||
ELSE
|
||||
CASE
|
||||
WHEN CAST(tanuloErtekeles.C_DATUM AS DATE) > @pFelevVegeDatum
|
||||
THEN CAST(MONTH(tanuloErtekeles.C_DATUM) + 1 AS NVARCHAR(2))
|
||||
ELSE CAST(MONTH(tanuloErtekeles.C_DATUM) AS NVARCHAR(2))
|
||||
END
|
||||
END Honap
|
||||
,tanuloErtekeles.C_TANULOID TanuloId
|
||||
,'Magatartás/Szorgalom' Nev
|
||||
,NULL AS ErtekelesOsztalyzat
|
||||
,NULL AS ErtekelesSzoveg
|
||||
,NULL AS ErtekelesSzovegRovidNev
|
||||
,NULL AS ErtekelesSzazalek
|
||||
,magatartasOsztalyzat.C_VALUE AS MagatartasOsztalyzat
|
||||
,tanuloErtekeles.C_MAGATARTASSZOVEG AS MagatartasSzoveg
|
||||
,tanuloErtekeles.C_MAGATARTASSZOVEGROVIDNEV AS MagatartasSzovegRovidNev
|
||||
,magatartasErtek.C_VALUE AS MagatartasErtek
|
||||
,szorgalomOsztalyzat.C_VALUE AS SzorgalomOsztalyzat
|
||||
,tanuloErtekeles.C_SZORGALOMSZOVEG AS SzorgalomSzoveg
|
||||
,tanuloErtekeles.C_SZORGALOMSZOVEGROVIDNEV AS SzorgalomSzovegRovidNev
|
||||
,szorgalomErtek.C_VALUE AS SzorgalomErtek
|
||||
,100 AS Suly
|
||||
,0 AS TantargyId
|
||||
,0 AS TantargyKategoria
|
||||
,NULL AS FotargyId
|
||||
FROM T_TANULOERTEKELES tanuloErtekeles
|
||||
LEFT JOIN @TempDictionaryItem AS magatartasOsztalyzat ON magatartasOsztalyzat.ID = tanuloErtekeles.C_MAGATARTASOSZTALYZATID
|
||||
LEFT JOIN @TempDictionaryItem AS szorgalomOsztalyzat ON szorgalomOsztalyzat.ID = tanuloErtekeles.C_SZORGALOMOSZTALYZATID
|
||||
LEFT JOIN @TempDictionaryItem AS magatartasErtek ON magatartasErtek.ID = tanuloErtekeles.C_MAGATARTASERTEKID
|
||||
LEFT JOIN @TempDictionaryItem AS szorgalomErtek ON szorgalomErtek.ID = tanuloErtekeles.C_SZORGALOMERTEKID
|
||||
WHERE tanuloErtekeles.C_TANULOID = @pTanuloId
|
||||
AND tanuloErtekeles.TOROLT = 'F'
|
||||
AND tanuloErtekeles.C_ISMAGATARTASSZORGALOM = 'T'
|
||||
END
|
||||
|
||||
SELECT
|
||||
result.ID
|
||||
,Nev
|
||||
,[09]
|
||||
,[10]
|
||||
,[11]
|
||||
,[12]
|
||||
,[01I]
|
||||
,[01II]
|
||||
,[02]
|
||||
,[03]
|
||||
,[04]
|
||||
,[05]
|
||||
,[06]
|
||||
,[I]
|
||||
,[II]
|
||||
,Atlag
|
||||
,TantargyKategoria
|
||||
,FotargyId
|
||||
FROM (
|
||||
SELECT
|
||||
pivotErtekelesek.TantargyId ID
|
||||
,Nev Nev
|
||||
,[9] [09]
|
||||
,[10] [10]
|
||||
,[11] [11]
|
||||
,[12] [12]
|
||||
,[1] [01I]
|
||||
,[2] [01II]
|
||||
,[3] [02]
|
||||
,[4] [03]
|
||||
,[5] [04]
|
||||
,[6] [05]
|
||||
,[7] [06]
|
||||
,[I] [I]
|
||||
,[II] [II]
|
||||
,atlag.Jegy Atlag
|
||||
,pivotErtekelesek.TantargyKategoria TantargyKategoria
|
||||
,pivotErtekelesek.FotargyId FotargyId
|
||||
FROM (
|
||||
SELECT DISTINCT
|
||||
tempErtekeles1.Nev
|
||||
,STUFF (
|
||||
(SELECT
|
||||
','
|
||||
+ ISNULL(CAST(tempErtekeles2.ErtekelesOsztalyzat AS VARCHAR(1)), '')
|
||||
+ ISNULL(CAST(
|
||||
CASE
|
||||
WHEN tempErtekeles2.ErtekelesSzoveg IS NULL OR LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(tempErtekeles2.ErtekelesSzoveg, CHAR(9), ''), CHAR(10), ''), CHAR(13), ''))) = ''
|
||||
THEN NULL
|
||||
ELSE
|
||||
ISNULL(tempErtekeles2.ErtekelesSzovegRovidNev, 'sz')
|
||||
END AS VARCHAR(3)), '')
|
||||
+ ISNULL(CAST(tempErtekeles2.ErtekelesSzazalek AS VARCHAR(3)), '')
|
||||
+ ISNULL(CAST(tempErtekeles2.MagatartasOsztalyzat AS VARCHAR(1)), '') + ','
|
||||
+ ISNULL(CAST(tempErtekeles2.SzorgalomOsztalyzat AS VARCHAR(1)), '')
|
||||
+ ISNULL(CAST(
|
||||
CASE
|
||||
WHEN tempErtekeles2.MagatartasSzoveg IS NULL OR LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(tempErtekeles2.MagatartasSzoveg, CHAR(9), ''), CHAR(10), ''), CHAR(13), ''))) = ''
|
||||
THEN NULL
|
||||
ELSE
|
||||
ISNULL(tempErtekeles2.MagatartasSzovegRovidNev, 'sz')
|
||||
END AS VARCHAR(3)), '') + ','
|
||||
+ ISNULL(CAST(
|
||||
CASE
|
||||
WHEN tempErtekeles2.SzorgalomSzoveg IS NULL OR LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(tempErtekeles2.SzorgalomSzoveg, CHAR(9), ''), CHAR(10), ''), CHAR(13), ''))) = ''
|
||||
THEN NULL
|
||||
ELSE
|
||||
ISNULL(tempErtekeles2.SzorgalomSzovegRovidNev, 'sz')
|
||||
END AS VARCHAR(3)), '')
|
||||
+ ISNULL(CAST(tempErtekeles2.MagatartasErtek AS VARCHAR(1)), '') + ','
|
||||
+ ISNULL(CAST(tempErtekeles2.SzorgalomErtek AS VARCHAR(1)), '')
|
||||
FROM @TempTanuloErtekeles tempErtekeles2
|
||||
WHERE tempErtekeles1.TantargyId = tempErtekeles2.TantargyId
|
||||
AND tempErtekeles1.Honap = tempErtekeles2.Honap
|
||||
FOR XML PATH ('')
|
||||
), 1, 1, ''
|
||||
) TanuloErtekelesList
|
||||
,tempErtekeles1.Honap
|
||||
,tempErtekeles1.TanuloId
|
||||
,tempErtekeles1.TantargyId
|
||||
,tempErtekeles1.TantargyKategoria
|
||||
,tempErtekeles1.FotargyId
|
||||
FROM @TempTanuloErtekeles tempErtekeles1
|
||||
) AS erdemjegyek
|
||||
PIVOT (
|
||||
MAX(TanuloErtekelesList)
|
||||
FOR Honap
|
||||
IN ([I], [II], [9] ,[10] ,[11] ,[12] ,[1] ,[2] ,[3] ,[4] ,[5] ,[6], [7])
|
||||
) AS pivotErtekelesek
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
TantargyId TantargyId
|
||||
,ROUND (
|
||||
SUM(CAST(ErtekelesOsztalyzat AS FLOAT) * CAST(ISNULL(Suly, 100) AS FLOAT) / 100) / SUM(CAST(ISNULL(Suly, 100) AS FLOAT) / 100), 2
|
||||
) Jegy
|
||||
FROM
|
||||
@TempTanuloErtekeles
|
||||
WHERE
|
||||
TipusId = @pErtekelesTipusEvkozi
|
||||
AND ErtekelesOsztalyzat IS NOT NULL
|
||||
GROUP BY
|
||||
TantargyId
|
||||
) AS atlag ON
|
||||
pivotErtekelesek.TantargyId = atlag.TantargyId
|
||||
) AS result
|
||||
LEFT JOIN
|
||||
T_TANTARGY fotargy ON
|
||||
result.FotargyId = fotargy.ID
|
||||
LEFT JOIN @TempDictionaryItem targykategoria
|
||||
ON targykategoria.ID = fotargy.C_TARGYKATEGORIA
|
||||
AND targykategoria.C_INTEZMENYID = fotargy.C_INTEZMENYID
|
||||
AND targykategoria.C_TANEVID = fotargy.C_TANEVID
|
||||
ORDER BY
|
||||
CASE WHEN result.FotargyId IS NULL THEN result.TantargyKategoria ELSE ISNULL(targykategoria.C_ORDER, 10000) END
|
||||
,ISNULL(fotargy.C_NEV, result.Nev)
|
||||
,ISNULL(result.FotargyId, result.ID)
|
||||
,result.FotargyId
|
||||
,result.Nev
|
||||
|
||||
IF OBJECT_ID('tempdb..#TempDictionaryItem') IS NOT NULL DROP TABLE #TempDictionaryItem
|
||||
IF OBJECT_ID('tempdb..#TempTanuloErtekeles') IS NOT NULL DROP TABLE #TempTanuloErtekeles
|
||||
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
|
|
@ -0,0 +1,222 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GenerateMagatartasSzorgalomTempTabla]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GenerateMagatartasSzorgalomTempTabla]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: <Előszedi a magatartás/szorgalom tanuló értékeléseket, havi bontásban osztálycsoport alapján>
|
||||
-- NOTE: EZT A HÁROM TÁROLT ELJÁRÁST EGYBEN KELL KEZELNI, HA MÓDOSÍTJUK!!!
|
||||
-- - sp_GenerateErtekelesekTempTabla
|
||||
-- - sp_GenerateErtekelesekMagatartasSzorgalomTempTabla
|
||||
-- - sp_GenerateErtekelesekTempTablaByTanulo
|
||||
-- =============================================
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GenerateMagatartasSzorgalomTempTabla]
|
||||
@pOsztalyCsoportId INT
|
||||
,@pFelevVegeDatum DATE
|
||||
,@pErtekelesTipusEvkozi INT
|
||||
,@pErtekelesTipusFelevi INT
|
||||
,@pErtekelesTipusEvvegi 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 = GETDATE()
|
||||
|
||||
DECLARE @TempDictionaryItem TABLE (
|
||||
ID INT PRIMARY KEY
|
||||
,C_VALUE INT
|
||||
,C_ORDER INT
|
||||
,C_INTEZMENYID INT
|
||||
,C_TANEVID INT
|
||||
)
|
||||
|
||||
INSERT INTO @TempDictionaryItem
|
||||
SELECT
|
||||
ID
|
||||
,C_VALUE
|
||||
,C_ORDER
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
FROM
|
||||
T_DICTIONARYITEMBASE
|
||||
WHERE
|
||||
C_TYPE IN ('OsztalyzatTipus', 'MagatartasErtekelesTipus', 'SzorgalomErtekelesTipus')
|
||||
AND TOROLT = 'F'
|
||||
|
||||
DECLARE @TempTanuloErtekeles TABLE (
|
||||
ID INT
|
||||
,Datum NVARCHAR(255)
|
||||
,TipusId INT
|
||||
,Honap NVARCHAR(2)
|
||||
,TanuloId INT
|
||||
,Nev NVARCHAR(255)
|
||||
,MagatartasOsztalyzat INT
|
||||
,MagatartasSzoveg NVARCHAR(MAX)
|
||||
,MagatartasSzovegRovidNev NVARCHAR(3)
|
||||
,MagatartasErtek INT
|
||||
,SzorgalomOsztalyzat INT
|
||||
,SzorgalomSzoveg NVARCHAR(MAX)
|
||||
,SzorgalomSzovegRovidNev NVARCHAR(3)
|
||||
,SzorgalomErtek INT
|
||||
)
|
||||
|
||||
INSERT INTO @TempTanuloErtekeles
|
||||
SELECT DISTINCT *
|
||||
FROM (
|
||||
SELECT DISTINCT
|
||||
tanuloErtekeles.ID ID
|
||||
,tanuloErtekeles.C_DATUM Datum
|
||||
,tanuloErtekeles.C_TIPUSID TipusId
|
||||
,CASE WHEN tanuloErtekeles.C_TIPUSID = @pErtekelesTipusFelevi
|
||||
THEN 'I'
|
||||
WHEN tanuloErtekeles.C_TIPUSID = @pErtekelesTipusEvvegi
|
||||
THEN 'II'
|
||||
ELSE
|
||||
CASE
|
||||
WHEN CAST(tanuloErtekeles.C_DATUM AS DATE) > @pFelevVegeDatum
|
||||
THEN CAST(MONTH(tanuloErtekeles.C_DATUM) + 1 AS NVARCHAR(2))
|
||||
ELSE CAST(MONTH(tanuloErtekeles.C_DATUM) AS NVARCHAR(2))
|
||||
END
|
||||
END Honap
|
||||
,tanuloCsoport.C_TANULOID TanuloId
|
||||
,felhasznalo.C_NYOMTATASINEV Nev
|
||||
,magatartasOsztalyzat.C_VALUE MagatartasOsztalyzat
|
||||
,tanuloErtekeles.C_MAGATARTASSZOVEG MagatartasSzoveg
|
||||
,tanuloErtekeles.C_MAGATARTASSZOVEGROVIDNEV MagatartasSzovegRovidNev
|
||||
,magatartasErtek.C_VALUE MagatartasErtek
|
||||
,szorgalomOsztalyzat.C_VALUE SzorgalomOsztalyzat
|
||||
,tanuloErtekeles.C_SZORGALOMSZOVEG SzorgalomSzoveg
|
||||
,tanuloErtekeles.C_SZORGALOMSZOVEGROVIDNEV SzorgalomSzovegRovidNev
|
||||
,szorgalomErtek.C_VALUE SzorgalomErtek
|
||||
FROM (
|
||||
SELECT
|
||||
C_TANULOID
|
||||
FROM
|
||||
T_TANULOCSOPORT
|
||||
WHERE
|
||||
TOROLT = 'F'
|
||||
AND C_BELEPESDATUM <= @pDatum
|
||||
AND (C_KILEPESDATUM IS NULL OR C_KILEPESDATUM >= @pDatum)
|
||||
AND C_OSZTALYCSOPORTID = @pOsztalyCsoportId
|
||||
) AS tanuloCsoport
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
ID
|
||||
,C_NYOMTATASINEV
|
||||
FROM
|
||||
T_FELHASZNALO
|
||||
WHERE
|
||||
TOROLT = 'F'
|
||||
) AS felhasznalo ON
|
||||
felhasznalo.ID = tanuloCsoport.C_TANULOID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
ID
|
||||
,C_DATUM
|
||||
,C_TIPUSID
|
||||
,C_TANULOID
|
||||
,C_MAGATARTASOSZTALYZATID
|
||||
,C_MAGATARTASSZOVEG
|
||||
,C_MAGATARTASSZOVEGROVIDNEV
|
||||
,C_MAGATARTASERTEKID
|
||||
,C_SZORGALOMOSZTALYZATID
|
||||
,C_SZORGALOMSZOVEG
|
||||
,C_SZORGALOMSZOVEGROVIDNEV
|
||||
,C_SZORGALOMERTEKID
|
||||
FROM
|
||||
T_TANULOERTEKELES
|
||||
WHERE
|
||||
TOROLT = 'F'
|
||||
AND C_TANTARGYID IS NULL
|
||||
) AS tanuloErtekeles ON
|
||||
tanuloErtekeles.C_TANULOID = tanuloCsoport.C_TANULOID
|
||||
LEFT JOIN @TempDictionaryItem AS magatartasOsztalyzat ON magatartasOsztalyzat.ID = tanuloErtekeles.C_MAGATARTASOSZTALYZATID
|
||||
LEFT JOIN @TempDictionaryItem AS szorgalomOsztalyzat ON szorgalomOsztalyzat.ID = tanuloErtekeles.C_SZORGALOMOSZTALYZATID
|
||||
LEFT JOIN @TempDictionaryItem AS magatartasErtek ON magatartasErtek.ID = tanuloErtekeles.C_MAGATARTASERTEKID
|
||||
LEFT JOIN @TempDictionaryItem AS szorgalomErtek ON szorgalomErtek.ID = tanuloErtekeles.C_SZORGALOMERTEKID
|
||||
) AS temp
|
||||
|
||||
SELECT *
|
||||
FROM (
|
||||
SELECT
|
||||
pivotErtekelesek.TanuloId ID
|
||||
,Nev Nev
|
||||
,[9] [09]
|
||||
,[10] [10]
|
||||
,[11] [11]
|
||||
,[12] [12]
|
||||
,[1] [01I]
|
||||
,[2] [01II]
|
||||
,[3] [02]
|
||||
,[4] [03]
|
||||
,[5] [04]
|
||||
,[6] [05]
|
||||
,[7] [06]
|
||||
,[I] [I]
|
||||
,[II] [II]
|
||||
FROM (
|
||||
SELECT DISTINCT
|
||||
tempErtekeles1.Nev
|
||||
,STUFF (
|
||||
(SELECT
|
||||
','
|
||||
+ ISNULL(CAST(tempErtekeles2.MagatartasOsztalyzat AS VARCHAR(1)), '') + ','
|
||||
+ ISNULL(CAST(tempErtekeles2.SzorgalomOsztalyzat AS varchar(1)), '')
|
||||
+ ISNULL(CAST(
|
||||
CASE
|
||||
WHEN tempErtekeles2.MagatartasSzoveg IS NULL OR LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(tempErtekeles2.MagatartasSzoveg, CHAR(9), ''), CHAR(10), ''), CHAR(13), ''))) = ''
|
||||
THEN NULL
|
||||
ELSE
|
||||
ISNULL(tempErtekeles2.MagatartasSzovegRovidNev, 'sz')
|
||||
END AS VARCHAR(3)), '') + ','
|
||||
+ ISNULL(CAST(
|
||||
CASE
|
||||
WHEN tempErtekeles2.SzorgalomSzoveg IS NULL OR LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(tempErtekeles2.SzorgalomSzoveg, CHAR(9), ''), CHAR(10), ''), CHAR(13), ''))) = ''
|
||||
THEN NULL
|
||||
ELSE
|
||||
ISNULL(tempErtekeles2.SzorgalomSzovegRovidNev, 'sz')
|
||||
END AS VARCHAR(3)), '')
|
||||
+ ISNULL(CAST(tempErtekeles2.MagatartasErtek AS varchar(1)), '') + ','
|
||||
+ ISNULL(CAST(tempErtekeles2.SzorgalomErtek AS varchar(1)), '')
|
||||
FROM
|
||||
@TempTanuloErtekeles tempErtekeles2
|
||||
WHERE
|
||||
tempErtekeles1.TanuloId = tempErtekeles2.TanuloId AND
|
||||
tempErtekeles1.Honap = tempErtekeles2.Honap
|
||||
FOR XML PATH ('')
|
||||
), 1, 1, ''
|
||||
) TanuloErtekelesList
|
||||
,tempErtekeles1.Honap
|
||||
,tempErtekeles1.TanuloId
|
||||
FROM
|
||||
@TempTanuloErtekeles tempErtekeles1
|
||||
) AS erdemjegyek
|
||||
PIVOT (
|
||||
MAX(TanuloErtekelesList)
|
||||
FOR Honap
|
||||
IN ([I], [II], [9] ,[10] ,[11] ,[12] ,[1] ,[2] ,[3] ,[4] ,[5] ,[6], [7])
|
||||
) AS pivotErtekelesek
|
||||
) AS result
|
||||
ORDER BY
|
||||
result.Nev
|
||||
|
||||
IF OBJECT_ID('tempdb..#TempDictionaryItem') IS NOT NULL DROP TABLE #TempDictionaryItem
|
||||
IF OBJECT_ID('tempdb..#TempTanuloErtekeles') IS NOT NULL DROP TABLE #TempTanuloErtekeles
|
||||
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
|
||||
|
|
@ -0,0 +1,143 @@
|
|||
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
|
||||
ID
|
||||
,C_DATUM
|
||||
,C_TIPUSID
|
||||
,C_ERTEKELESOSZTALYZATID
|
||||
,C_ERTEKELESSZOVEG
|
||||
,C_ERTEKELESSZOVEGROVIDNEV
|
||||
,C_ERTEKELESSZAZALEK
|
||||
,C_ERTEKELESMODID
|
||||
,C_ERTEKELESTEMA
|
||||
,C_MAGATARTASOSZTALYZATID
|
||||
,C_MAGATARTASSZOVEG
|
||||
,C_MAGATARTASSZOVEGROVIDNEV
|
||||
,C_MAGATARTASERTEKID
|
||||
,C_SZORGALOMOSZTALYZATID
|
||||
,C_SZORGALOMSZOVEG
|
||||
,C_SZORGALOMSZOVEGROVIDNEV
|
||||
,C_SZORGALOMERTEKID
|
||||
,C_ISMAGATARTASSZORGALOM
|
||||
,C_TANULOID
|
||||
,C_ERTEKELOID
|
||||
,C_TANORAID
|
||||
,TOROLT
|
||||
,CREATOR
|
||||
FROM
|
||||
T_TANULOERTEKELES_OSSZES
|
||||
WHERE
|
||||
(
|
||||
(@pErtekelesMegjelenesFajtaId = @pErtekelesMegjelenesFajtaEnumTantargyId AND C_ISMAGATARTASSZORGALOM = 'F' AND C_TANTARGYID = @pTantargyId) OR
|
||||
(@pErtekelesMegjelenesFajtaId = @pErtekelesMegjelenesFajtaEnumMagatartasSzorgalomId AND C_ISMAGATARTASSZORGALOM = 'T' AND C_TANTARGYID IS NULL) OR
|
||||
(@pErtekelesMegjelenesFajtaId = @pErtekelesMegjelenesFajtaEnumTanuloId AND (C_ISMAGATARTASSZORGALOM = 'F' AND @pTantargyId IS NOT NULL AND C_TANTARGYID = @pTantargyId) OR (C_ISMAGATARTASSZORGALOM = 'T' AND C_TANTARGYID IS NULL AND @pTantargyId IS NULL))
|
||||
)
|
||||
--Ha a @pShowToroltElemek változó True, akkor a törölt elemeket is visszaadjuk!
|
||||
AND TOROLT = IIF(@pShowToroltElemek = 1, TOROLT, 'F')
|
||||
AND C_INTEZMENYID = @pIntezmenyId
|
||||
AND C_TANEVID = @pTanevId
|
||||
) AS TanuloErtekeles
|
||||
ON TanuloCsoport.C_TANULOID = TanuloErtekeles.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
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue