47 lines
2 KiB
Transact-SQL
47 lines
2 KiB
Transact-SQL
IF OBJECT_ID('fnGetDokumentumErtekelesekOsztalyonkent') IS NOT NULL BEGIN
|
|
DROP FUNCTION fnGetDokumentumErtekelesekOsztalyonkent
|
|
END
|
|
GO
|
|
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
CREATE FUNCTION fnGetDokumentumErtekelesekOsztalyonkent (@tanevId INT, @osztalyId INT)
|
|
RETURNS TABLE
|
|
RETURN (
|
|
SELECT
|
|
C_ERTEKELESDATUM Datum
|
|
,C_ERTEKELESTIPUSA Tipusa
|
|
,C_ERTEKELESSZOVEG SzovegesErtekeles
|
|
,C_OSZTALYZAT OsztalyzatId
|
|
,jegy.C_VALUE Osztalyzat
|
|
,CONVERT(NVARCHAR(MAX),C_SZAZALEK)+' %' Szazalek
|
|
,C_TANTARGYID TantargyId
|
|
,C_TARGYKATEGORIA TargyKategoriaId
|
|
,IIF(t.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL, C_NEVNYOMTATVANYBAN + ' (' + t.C_NEV + ')', t.C_NEV) TantargyNev
|
|
,C_FOTARGYE FotargyE
|
|
,C_ALTANTARGYKENTNYOMTATVANYBAN Altantargy
|
|
,te.C_TANULOID TanuloId
|
|
,te.C_OSZTALYCSOPORTID OsztalyCsoportId
|
|
,C_SZORGALOM SzorgalomId
|
|
,C_MAGATARTAS MagatartasId
|
|
,szorgalom.C_NAME Szorgalom
|
|
,magatartas.C_NAME Magatartas
|
|
,C_TEMA Megjegyzes
|
|
FROM T_TANULOERTEKELES_OSSZES te
|
|
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') tanulo ON tanulo.TanuloId = te.C_TANULOID
|
|
LEFT JOIN T_OSZTALYZATERTEKELES_OSSZES oe ON oe.Id = te.Id
|
|
LEFT JOIN T_OSZTALYFONOKIERTEKELES_OSSZES ofoe ON ofoe.Id = te.Id
|
|
LEFT JOIN T_TANTARGY_OSSZES t ON t.Id = te.C_TANTARGYID
|
|
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES jegy ON jegy.Id = C_OSZTALYZAT AND jegy.C_TANEVID = @tanevId
|
|
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES szorgalom ON szorgalom.Id = C_SZORGALOM AND szorgalom.C_TANEVID = @tanevId
|
|
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES magatartas ON magatartas.Id = C_MAGATARTAS AND magatartas.C_TANEVID = @tanevId
|
|
LEFT JOIN T_CSOPORT_OSSZES cs ON cs.Id = te.C_OSZTALYCSOPORTID
|
|
WHERE
|
|
te.Torolt = 'F'
|
|
AND te.C_ERTEKELESDATUM >= BelepesDatum AND (te.C_ERTEKELESDATUM <= KilepesDatum OR KilepesDatum IS NULL)
|
|
AND (cs.Id IS NULL OR cs.C_TIPUSA = 1034)
|
|
AND (t.C_TARGYKATEGORIA <> 1248 OR t.C_TARGYKATEGORIA IS NULL)
|
|
)
|