init
This commit is contained in:
@@ -0,0 +1,410 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
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 @OsztalyCsoportIdList TABLE (
|
||||
ID INT PRIMARY KEY
|
||||
)
|
||||
|
||||
INSERT INTO @OsztalyCsoportIdList (ID)
|
||||
SELECT C_OSZTALYCSOPORTID ID
|
||||
FROM T_TANULOCSOPORT
|
||||
WHERE
|
||||
C_BELEPESDATUM <= GETDATE()
|
||||
AND (C_KILEPESDATUM IS NULL OR C_KILEPESDATUM >= GETDATE())
|
||||
AND TOROLT = 'F'
|
||||
AND C_TANULOID = @pTanuloId
|
||||
|
||||
DECLARE @Tantargyak TABLE (
|
||||
ID INT PRIMARY KEY
|
||||
,C_FOTARGYID INT
|
||||
,C_NEV NVARCHAR(255)
|
||||
,C_TARGYKATEGORIA INT
|
||||
);
|
||||
|
||||
WITH tantargy_CTE (C_TANTARGYID, C_FOTARGYID)
|
||||
AS (
|
||||
SELECT foglalkozas.C_TANTARGYID, tantargy.C_FOTARGYID
|
||||
FROM T_FOGLALKOZAS foglalkozas
|
||||
INNER JOIN T_TANTARGY tantargy ON tantargy.ID = foglalkozas.C_TANTARGYID
|
||||
WHERE
|
||||
foglalkozas.C_OSZTALYCSOPORTID IN (SELECT ID FROM @OsztalyCsoportIdList)
|
||||
AND foglalkozas.TOROLT = 'F'
|
||||
UNION
|
||||
SELECT orarendiOra.C_TANTARGYID, tantargy.C_FOTARGYID
|
||||
FROM T_ORARENDIORA orarendiOra
|
||||
INNER JOIN T_TANTARGY tantargy ON tantargy.ID = orarendiOra.C_TANTARGYID
|
||||
WHERE
|
||||
orarendiOra.C_OSZTALYCSOPORTID IN (SELECT ID FROM @OsztalyCsoportIdList)
|
||||
AND orarendiOra.TOROLT = 'F'
|
||||
UNION
|
||||
SELECT tanuloErtekeles.C_TANTARGYID, tantargy.C_FOTARGYID
|
||||
FROM T_TANULOERTEKELES tanuloErtekeles
|
||||
INNER JOIN T_TANTARGY tantargy ON tantargy.ID = tanuloErtekeles.C_TANTARGYID
|
||||
WHERE
|
||||
tanuloErtekeles.C_TANULOID = @pTanuloId
|
||||
AND tanuloErtekeles.C_TANTARGYID IS NOT NULL
|
||||
AND tanuloErtekeles.TOROLT = 'F'
|
||||
)
|
||||
|
||||
INSERT INTO @Tantargyak (ID, C_FOTARGYID, C_NEV, C_TARGYKATEGORIA)
|
||||
SELECT DISTINCT kapcsopodoTantargy.ID, kapcsopodoTantargy.C_FOTARGYID, kapcsopodoTantargy.C_NEV, kapcsopodoTantargy.C_TARGYKATEGORIA
|
||||
FROM tantargy_CTE
|
||||
INNER JOIN fnGetKapcsolodoTantargyak(@pFotargyAltargyId) kapcsopodoTantargy ON tantargy_CTE.C_TANTARGYID = kapcsopodoTantargy.ID OR tantargy_CTE.C_FOTARGYID = kapcsopodoTantargy.ID
|
||||
WHERE (kapcsopodoTantargy.ID <> @pFotargyAltargyId OR @pFotargyAltargyId IS NULL)
|
||||
|
||||
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
|
||||
,@pTanuloId TanuloId
|
||||
,tantargy.C_NEV Nev
|
||||
,ertekelesOsztalyzat.C_VALUE ErtekelesOsztalyzat
|
||||
,tanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg
|
||||
,tanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV ErtekelesSzovegRovidNev
|
||||
,tanuloErtekeles.C_ERTEKELESSZAZALEK ErtekelesSzazalek
|
||||
,NULL MagatartasOsztalyzat
|
||||
,NULL MagatartasSzoveg
|
||||
,NULL MagatartasSzovegRovidNev
|
||||
,NULL MagatartasErtek
|
||||
,NULL SzorgalomOsztalyzat
|
||||
,NULL SzorgalomSzoveg
|
||||
,NULL SzorgalomSzovegRovidNev
|
||||
,NULL SzorgalomErtek
|
||||
,tanariAtlagSuly.C_SULY Suly
|
||||
,tantargy.ID TantargyId
|
||||
,tantargyKategoria.C_ORDER TantargyKategoria
|
||||
,tantargy.C_FOTARGYID FotargyId
|
||||
FROM
|
||||
@Tantargyak AS tantargy
|
||||
LEFT JOIN
|
||||
T_TANULOERTEKELES tanuloErtekeles ON
|
||||
tanuloErtekeles.C_TANULOID = @pTanuloId
|
||||
AND tanuloErtekeles.TOROLT = 'F'
|
||||
AND tanuloErtekeles.C_ISMAGATARTASSZORGALOM = 'F'
|
||||
AND tanuloErtekeles.C_TANTARGYID = tantargy.ID
|
||||
LEFT JOIN @TempDictionaryItem AS ertekelesOsztalyzat ON ertekelesOsztalyzat.ID = tanuloErtekeles.C_ERTEKELESOSZTALYZATID
|
||||
LEFT JOIN @TempDictionaryItem AS tantargyKategoria ON tantargyKategoria.ID = tantargy.C_TARGYKATEGORIA
|
||||
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
|
||||
|
||||
IF @pFotargyAltargyId IS NULL BEGIN
|
||||
|
||||
DECLARE @MagatartasSzorgalom TABLE (
|
||||
C_NEV NVARCHAR(255)
|
||||
);
|
||||
|
||||
INSERT INTO @MagatartasSzorgalom (C_NEV)
|
||||
SELECT 'Magatartás/Szorgalom'
|
||||
|
||||
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
|
||||
,magatartasSzorgalom.C_NEV Nev
|
||||
,NULL ErtekelesOsztalyzat
|
||||
,NULL ErtekelesSzoveg
|
||||
,NULL ErtekelesSzovegRovidNev
|
||||
,NULL ErtekelesSzazalek
|
||||
,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
|
||||
,100 Suly
|
||||
,0 AS TantargyId
|
||||
,0 AS TantargyKategoria
|
||||
,NULL AS FotargyId
|
||||
FROM
|
||||
@MagatartasSzorgalom magatartasSzorgalom
|
||||
LEFT JOIN
|
||||
T_TANULOERTEKELES tanuloErtekeles ON
|
||||
tanuloErtekeles.C_TANULOID = @pTanuloId
|
||||
AND tanuloErtekeles.TOROLT = 'F'
|
||||
AND tanuloErtekeles.C_ISMAGATARTASSZORGALOM = 'T'
|
||||
AND tanuloErtekeles.C_TANTARGYID IS NULL
|
||||
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
|
||||
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 ISNULL(result.TantargyKategoria, 10000) ELSE ISNULL(targykategoria.C_ORDER, 10000) END
|
||||
,ISNULL(fotargy.C_NEV, result.Nev)
|
||||
,ISNULL(result.FotargyId, result.ID)
|
||||
,result.FotargyId
|
||||
,result.Nev
|
||||
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
|
@@ -0,0 +1,250 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GetDokumentumErtekelesek]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GetDokumentumErtekelesek]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GetDokumentumErtekelesek]
|
||||
@osztalyId INT,
|
||||
@tanevId INT,
|
||||
@ertekelesTipus INT,
|
||||
@isBizonyitvany INT = 0,
|
||||
@isNemet BIT = 0
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
--Osztályhoz tartozó tanulók
|
||||
DECLARE @Tanulok TABLE (TanuloId INT PRIMARY KEY, KilepesDatum DATE)
|
||||
INSERT INTO @Tanulok
|
||||
SELECT TanuloId, KilepesDatum FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T')
|
||||
|
||||
--Osztályhoz tartozó értékelések
|
||||
SELECT
|
||||
Datum
|
||||
,TipusId
|
||||
,ErtekelesSzoveg
|
||||
,ErtekelesOsztalyzatId
|
||||
,ErtekelesOsztalyzatValue
|
||||
,ErtekelesOsztalyzatNev
|
||||
,ErtekelesSzazalek
|
||||
,MagatartasOsztalyzatId
|
||||
,MagatartasOsztalyzatNev
|
||||
,MagatartasSzoveg
|
||||
,MagatartasErtekId
|
||||
,MagatartasErtek
|
||||
,SzorgalomOsztalyzatId
|
||||
,SzorgalomOsztalyzatNev
|
||||
,SzorgalomSzoveg
|
||||
,SzorgalomErtekId
|
||||
,SzorgalomErtek
|
||||
,TanuloId
|
||||
,OsztalyCsoportId
|
||||
,TantargyId
|
||||
,TantargyNevZarojellel
|
||||
,TantargyNev
|
||||
,TantargyNevNyomtatvanyban
|
||||
,TargyKategoriaId
|
||||
,FotargyE
|
||||
,FotargyId
|
||||
,Altantargy
|
||||
,ErtekelesTema
|
||||
,Jeloles
|
||||
,JelolesAndErtekelesTema
|
||||
,isMagatartasSzorgalom
|
||||
INTO #ErtekelesekTemp
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent (@tanevId, @osztalyId, DEFAULT, DEFAULT, DEFAULT, DEFAULT)
|
||||
|
||||
--Tanulóhoz kapcsolódó óraszámok
|
||||
DECLARE @Oraszamok TABLE (TanuloId int, Tantargy INT, Oraszam INT)
|
||||
|
||||
INSERT INTO @Oraszamok
|
||||
SELECT * FROM fnGetDokumentumTanulokEvesOraszamaiOsztalynkonet(@tanevId, @osztalyId)
|
||||
|
||||
--Értékelések
|
||||
CREATE TABLE #temp
|
||||
(
|
||||
TANULOID INT
|
||||
,TARGY NVARCHAR(MAX)
|
||||
,Jegyzet NVARCHAR(MAX)
|
||||
,Ertekeles NVARCHAR(MAX)
|
||||
,ErtekelesJegyzettel NVARCHAR(MAX)
|
||||
,Oraszam INT
|
||||
,RENDEZ1 INT
|
||||
,RENDEZ2 NVARCHAR(MAX)
|
||||
,RENDEZ3 INT
|
||||
,RENDEZ4 INT
|
||||
,RENDEZ5 NVARCHAR(MAX)
|
||||
)
|
||||
|
||||
INSERT INTO #temp
|
||||
SELECT
|
||||
ErtekelesTemp.TanuloId TANULOID
|
||||
,IIF(@isNemet = 0, 'MAGATARTAS', 'Betragen') TARGY
|
||||
,NULL
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@isNemet = 0, MagatartasErtek, dbo.fnGetDokumentumNemet(MagatartasOsztalyzatId))), ISNULL(MagatartasSzoveg, IIF(@isNemet = 0, MagatartasOsztalyzatNev, dbo.fnGetDokumentumNemet(MagatartasOsztalyzatId))))
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@isNemet = 0, MagatartasErtek, dbo.fnGetDokumentumNemet(MagatartasOsztalyzatId))), ISNULL(MagatartasSzoveg, IIF(@isNemet = 0, MagatartasOsztalyzatNev, dbo.fnGetDokumentumNemet(MagatartasOsztalyzatId)))) ErtekelesJegyzettel
|
||||
,NULL Oraszam
|
||||
,-1 RENDEZ1
|
||||
,NULL RENDEZ2
|
||||
,NULL RENDEZ3
|
||||
,NULL RENDEZ4
|
||||
,NULL RENDEZ5
|
||||
FROM #ErtekelesekTemp ErtekelesTemp
|
||||
INNER JOIN @Tanulok TanuloTable ON TanuloTable.TanuloId = ErtekelesTemp.TanuloId
|
||||
WHERE
|
||||
(KilepesDatum IS NULL OR KilepesDatum >= ErtekelesTemp.Datum)
|
||||
AND (MagatartasErtek IS NOT NULL OR MagatartasSzoveg IS NOT NULL OR MagatartasOsztalyzatNev IS NOT NULL)
|
||||
AND TipusId = @ertekelesTipus --????
|
||||
|
||||
|
||||
INSERT INTO #TEMP
|
||||
SELECT
|
||||
ErtekelesTemp.TanuloId TANULOID
|
||||
,IIF(@isNemet = 0, 'SZORGALOM', 'Fleiss') TARGY
|
||||
,NULL
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@isNemet = 0, SzorgalomErtek, dbo.fnGetDokumentumNemet(SzorgalomOsztalyzatId))), ISNULL(SzorgalomSzoveg, IIF(@isNemet = 0, SzorgalomOsztalyzatNev, dbo.fnGetDokumentumNemet(SzorgalomOsztalyzatId))))
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@isNemet = 0, SzorgalomErtek, dbo.fnGetDokumentumNemet(SzorgalomOsztalyzatId))), ISNULL(SzorgalomSzoveg, IIF(@isNemet = 0, SzorgalomOsztalyzatNev, dbo.fnGetDokumentumNemet(SzorgalomOsztalyzatId)))) ErtekelesJegyzettel
|
||||
,NULL Oraszam
|
||||
,0 RENDEZ1
|
||||
,NULL RENDEZ2
|
||||
,NULL RENDEZ3
|
||||
,NULL RENDEZ4
|
||||
,NULL RENDEZ5
|
||||
FROM #ErtekelesekTemp ErtekelesTemp
|
||||
INNER JOIN @Tanulok TanuloTable ON TanuloTable.TanuloId = ErtekelesTemp.TanuloId
|
||||
WHERE
|
||||
(KilepesDatum IS NULL OR KilepesDatum >= ErtekelesTemp.Datum)
|
||||
AND (SzorgalomErtek IS NOT NULL OR SzorgalomSzoveg IS NOT NULL OR SzorgalomOsztalyzatNev IS NOT NULL)
|
||||
AND TipusId = @ertekelesTipus --????
|
||||
|
||||
/*
|
||||
INSERT INTO #TEMP
|
||||
SELECT
|
||||
ERTEKELES.C_TANULOID TANULOID
|
||||
, IIF(@isNemet = 0, 'MAGATARTAS', 'Betragen') TARGY
|
||||
, SUBSTRING(ERTEKELES.C_ERTEKELESSZOVEG, 1, CHARINDEX(',', ERTEKELES.C_ERTEKELESSZOVEG + ',') - 1) Ertekeles
|
||||
, NULL Jegyzet
|
||||
, SUBSTRING(ERTEKELES.C_ERTEKELESSZOVEG, 1, CHARINDEX(',', ERTEKELES.C_ERTEKELESSZOVEG + ',') - 1) ErtekelesJegyzettel
|
||||
, SUBSTRING(ERTEKELES.C_ERTEKELESSZOVEG, 1, CHARINDEX(',', ERTEKELES.C_ERTEKELESSZOVEG + ',') - 1) SzovegesErtekeles
|
||||
, NULL Oraszam
|
||||
, -2 RENDEZ1
|
||||
, NULL RENDEZ2
|
||||
, NULL RENDEZ3
|
||||
, NULL RENDEZ4
|
||||
, NULL RENDEZ5
|
||||
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
|
||||
INNER JOIN T_OSZTALYFONOKIERTEKELES_OSSZES OSZTALYZAT ON OSZTALYZAT.ID = ERTEKELES.ID
|
||||
INNER JOIN @Tanulok TANCSOPORT ON TANCSOPORT.TanuloId = ERTEKELES.C_TANULOID
|
||||
WHERE
|
||||
ERTEKELES.C_ERTEKELESTIPUSA = @ertekelesTipus
|
||||
AND ERTEKELES.C_TANEVID = @TanevId
|
||||
AND (KilepesDatum IS NULL OR KilepesDatum >= C_ERTEKELESDATUM)
|
||||
AND ERTEKELES.TOROLT='F'
|
||||
AND OSZTALYZAT.TOROLT = 'F'
|
||||
AND C_ERTEKELESSZOVEG IS NOT NULL
|
||||
AND SUBSTRING(ERTEKELES.C_ERTEKELESSZOVEG, 1, CHARINDEX(',', ERTEKELES.C_ERTEKELESSZOVEG + ',') - 1) IN ('rossz', 'változó', 'jó', 'példás', 'Vorbildlich', 'Gut', 'Wechselnd', 'Schlecht')
|
||||
AND SUBSTRING (ERTEKELES.C_ERTEKELESSZOVEG, CHARINDEX(',', ERTEKELES.C_ERTEKELESSZOVEG + ',')+ 1, LEN(ERTEKELES.C_ERTEKELESSZOVEG)) IN ('hanyag', 'változó', 'jó', 'példás', 'Vorbildlich', 'Gut', 'Wechselnd', 'Schlecht')
|
||||
|
||||
INSERT INTO #TEMP
|
||||
SELECT
|
||||
ERTEKELES.C_TANULOID TANULOID
|
||||
, IIF(@isNemet = 0, 'SZORGALOM', 'Fleiss') TARGY
|
||||
, SUBSTRING (ERTEKELES.C_ERTEKELESSZOVEG, CHARINDEX(',', ERTEKELES.C_ERTEKELESSZOVEG + ',')+ 1, LEN(ERTEKELES.C_ERTEKELESSZOVEG)) Ertekeles
|
||||
, NULL Jegyzet
|
||||
, SUBSTRING (ERTEKELES.C_ERTEKELESSZOVEG, CHARINDEX(',', ERTEKELES.C_ERTEKELESSZOVEG + ',')+ 1, LEN(ERTEKELES.C_ERTEKELESSZOVEG)) ErtekelesJegyzettel
|
||||
, SUBSTRING (ERTEKELES.C_ERTEKELESSZOVEG, CHARINDEX(',', ERTEKELES.C_ERTEKELESSZOVEG + ',')+ 1, LEN(ERTEKELES.C_ERTEKELESSZOVEG)) SzovegesErtekeles
|
||||
, NULL Oraszam
|
||||
, -1 RENDEZ1
|
||||
, NULL RENDEZ2
|
||||
, NULL RENDEZ3
|
||||
, NULL RENDEZ4
|
||||
, NULL RENDEZ5
|
||||
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
|
||||
INNER JOIN T_OSZTALYFONOKIERTEKELES_OSSZES OSZTALYZAT ON OSZTALYZAT.ID = ERTEKELES.ID
|
||||
INNER JOIN @Tanulok TANCSOPORT ON TANCSOPORT.TanuloId = ERTEKELES.C_TANULOID
|
||||
WHERE
|
||||
ERTEKELES.C_ERTEKELESTIPUSA = @ertekelesTipus
|
||||
AND ERTEKELES.C_TANEVID = @TanevId
|
||||
AND (KilepesDatum IS NULL OR KilepesDatum >= C_ERTEKELESDATUM)
|
||||
AND ERTEKELES.TOROLT='F'
|
||||
AND OSZTALYZAT.TOROLT = 'F'
|
||||
AND C_ERTEKELESSZOVEG IS NOT NULL
|
||||
AND SUBSTRING(ERTEKELES.C_ERTEKELESSZOVEG, 1, CHARINDEX(',', ERTEKELES.C_ERTEKELESSZOVEG + ',') - 1) IN ('rossz', 'változó', 'jó', 'példás', 'Vorbildlich', 'Gut', 'Wechselnd', 'Schlecht')
|
||||
AND SUBSTRING (ERTEKELES.C_ERTEKELESSZOVEG, CHARINDEX(',', ERTEKELES.C_ERTEKELESSZOVEG + ',')+ 1, LEN(ERTEKELES.C_ERTEKELESSZOVEG)) IN ('hanyag', 'változó', 'jó', 'példás', 'Vorbildlich', 'Gut', 'Wechselnd', 'Schlecht')
|
||||
|
||||
|
||||
INSERT INTO #TEMP
|
||||
SELECT
|
||||
ERTEKELES.C_TANULOID TANULOID
|
||||
, IIF(@isNemet = 0, 'Magatartás / Szorgalom', 'Betragen / Fleiss') TARGY
|
||||
, ERTEKELES.C_ERTEKELESSZOVEG Ertekeles
|
||||
, NULL Jegyzet
|
||||
, ERTEKELES.C_ERTEKELESSZOVEG ErtekelesJegyzettel
|
||||
, ERTEKELES.C_ERTEKELESSZOVEG SzovegesErtekeles
|
||||
, NULL Oraszam
|
||||
, -3 RENDEZ1
|
||||
, NULL RENDEZ2
|
||||
, NULL RENDEZ3
|
||||
, NULL RENDEZ4
|
||||
, NULL RENDEZ5
|
||||
FROM T_TANULOERTEKELES_OSSZES ERTEKELES
|
||||
INNER JOIN @Tanulok TANCSOPORT ON TANCSOPORT.TanuloId = ERTEKELES.C_TANULOID
|
||||
INNER JOIN T_OSZTALYFONOKIERTEKELES_OSSZES OSZTALYZAT ON OSZTALYZAT.ID = ERTEKELES.ID
|
||||
WHERE
|
||||
ERTEKELES.C_ERTEKELESTIPUSA = @ertekelesTipus
|
||||
AND ERTEKELES.C_TANEVID = @TanevId
|
||||
AND ERTEKELES.TOROLT='F'
|
||||
AND OSZTALYZAT.TOROLT = 'F'
|
||||
AND C_ERTEKELESSZOVEG IS NOT NULL
|
||||
AND (KilepesDatum IS NULL OR KilepesDatum >= C_ERTEKELESDATUM)
|
||||
AND SUBSTRING(ERTEKELES.C_ERTEKELESSZOVEG, 1, CHARINDEX(',', ERTEKELES.C_ERTEKELESSZOVEG + ',') - 1) NOT IN ('rossz', 'változó', 'jó', 'példás')
|
||||
AND SUBSTRING (ERTEKELES.C_ERTEKELESSZOVEG, CHARINDEX(',', ERTEKELES.C_ERTEKELESSZOVEG + ',')+ 1, LEN(ERTEKELES.C_ERTEKELESSZOVEG)) NOT IN ('hanyag', 'változó', 'jó', 'példás')
|
||||
|
||||
*/
|
||||
|
||||
INSERT INTO #TEMP
|
||||
SELECT
|
||||
ErtekelesTemp.TanuloId TANULOID
|
||||
,ISNULL(ErtekelesTemp.TantargyNevNyomtatvanyban, ErtekelesTemp.TantargyNev) TARGY
|
||||
,ErtekelesTemp.ErtekelesTema
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@isNemet = 0, ErtekelesTemp.ErtekelesOsztalyzatNev, dbo.fnGetDokumentumNemet(ErtekelesTemp.ErtekelesOsztalyzatId))), ISNULL(ErtekelesTemp.ErtekelesSzoveg, CONVERT(NVARCHAR(MAX),ErtekelesTemp.ErtekelesSzazalek)+' % '))
|
||||
,ISNULL(CONVERT(NVARCHAR(MAX), IIF(@isNemet = 0, ErtekelesTemp.ErtekelesOsztalyzatNev, dbo.fnGetDokumentumNemet(ErtekelesTemp.ErtekelesOsztalyzatId))), ISNULL(ErtekelesTemp.ErtekelesSzoveg, CONVERT(NVARCHAR(MAX),ErtekelesTemp.ErtekelesSzazalek)+' % ')) + IIF(ErtekelesTemp.ErtekelesTema IS NULL, '', +' * ' + ErtekelesTemp.ErtekelesTema) ErtekelesJegyzettel
|
||||
,Oraszam Oraszam
|
||||
,CASE WHEN ErtekelesTemp.FotargyId IS NULL THEN ISNULL(TargyKategoriaDictionary.C_ORDER, 10000) ELSE ISNULL(FotargyKategoriaDictionary.C_ORDER, 10000) END
|
||||
,ISNULL(ISNULL(FotargyTable.C_NEVNYOMTATVANYBAN, FotargyTable.C_NEV), ISNULL(ErtekelesTemp.TantargyNevNyomtatvanyban, ErtekelesTemp.TantargyNev))
|
||||
,ISNULL(ErtekelesTemp.FotargyId, ErtekelesTemp.TantargyId)
|
||||
,ErtekelesTemp.FotargyId
|
||||
,ISNULL(ErtekelesTemp.TantargyNevNyomtatvanyban, ErtekelesTemp.TantargyNev)
|
||||
FROM #ErtekelesekTemp ErtekelesTemp
|
||||
INNER JOIN @Tanulok TanuloTable ON TanuloTable.TanuloId = ErtekelesTemp.TanuloId
|
||||
LEFT JOIN @Oraszamok OraszamTable ON OraszamTable.Tantargy = ErtekelesTemp.TantargyId AND OraszamTable.TanuloId = ErtekelesTemp.TanuloId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES TargyKategoriaDictionary ON TargyKategoriaDictionary.Id = ErtekelesTemp.TargyKategoriaId AND TargyKategoriaDictionary.TOROLT = 'F' AND TargyKategoriaDictionary.C_TANEVID = @tanevId
|
||||
LEFT JOIN T_TANTARGY_OSSZES FotargyTable ON Ertekelestemp.FotargyId = FotargyTable.ID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES FotargyKategoriaDictionary ON FotargyKategoriaDictionary.ID = FotargyTable.C_TARGYKATEGORIA AND FotargyKategoriaDictionary.C_TANEVID = FotargyTable.C_TANEVID
|
||||
WHERE
|
||||
ErtekelesTemp.TipusId = @ertekelesTipus
|
||||
AND (ErtekelesTemp.FotargyE = 'T' OR ErtekelesTemp.Altantargy = 'T')
|
||||
AND (KilepesDatum IS NULL OR KilepesDatum >= ErtekelesTemp.Datum)
|
||||
AND ErtekelesTemp.TargyKategoriaId <> 1248
|
||||
AND ErtekelesTemp.isMagatartasSzorgalom = 'F'
|
||||
|
||||
SELECT
|
||||
TANULOID
|
||||
,TARGY
|
||||
,Jegyzet
|
||||
,Ertekeles
|
||||
,ErtekelesJegyzettel
|
||||
,Oraszam
|
||||
,RENDEZ1
|
||||
FROM #temp
|
||||
ORDER BY RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5
|
||||
END
|
||||
|
||||
GO
|
Reference in New Issue
Block a user