kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20171011125440_KRETA_3718/fnGetDokumentumErtekelesekOsztalyonkent.sql
2024-03-13 00:33:46 +01:00

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)
)