Files
2024-03-13 00:33:46 +01:00

134 lines
6.0 KiB
Transact-SQL

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetTanulokJegyeiReszletezes]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetTanulokJegyeiReszletezes]
END
GO
CREATE PROCEDURE [dbo].[sp_GetTanulokJegyeiReszletezes]
@OsztalyId INT,
@TanevId INT,
@isNemet BIT = 0
AS
BEGIN
SET NOCOUNT ON;
SELECT DISTINCT
@osztalyId OsztalyId
,ocs.C_NEV OsztalyNev
,o.C_OSZTALYNAPLOLEIRASA OsztalyMegjegyzes
,o.C_OSZTALYFONOKID PartnerID
,ofo.C_NYOMTATASINEV Osztalyfonok
,i.C_IGAZGATONEVE IntezmenyVezeto
,i.C_NEV IntezmenyNeve
,i.C_IRANYITOSZAM IntezmenyIranyitoszam
,i.C_VAROS IntezmenyVaros
,dbo.fnGetDokumentumIntezmenyCime(@tanevId) IntezmenyCime
,i.C_OMKOD IntezmenyOMKod
FROM T_OSZTALYCSOPORT_OSSZES ocs
INNER JOIN T_OSZTALY_OSSZES o ON ocs.ID = o.ID AND o.torolt='F'
LEFT JOIN T_FELHASZNALO_OSSZES ofo ON ofo.ID = o.C_OSZTALYFONOKID
INNER JOIN T_INTEZMENYADATOK_OSSZES i on i.C_INTEZMENYID=ocs.C_INTEZMENYID AND i.C_TANEVID = ocs.C_TANEVID AND i.Torolt = 'F'
WHERE
ocs.ID = @osztalyId
SELECT
dbo.fnGetDokumentumDatumFormatum(Datum) Datum
,CASE --
WHEN (CAST(ErtekelesOsztalyzatValue AS NVARCHAR(MAX)) IS NOT NULL --
OR ErtekelesSzoveg IS NOT NULL --
OR ErtekelesSzazalek IS NOT NULL) --
THEN TantargyNevZarojellel --
WHEN (CAST(MagatartasOsztalyzatNev AS NVARCHAR(MAX)) IS NOT NULL --
OR MagatartasErtek IS NOT NULL --
OR MagatartasSzoveg IS NOT NULL) --
THEN 'Magatartás' --
WHEN (CAST(SzorgalomOsztalyzatNev AS NVARCHAR(MAX)) IS NOT NULL --
OR SzorgalomErtek IS NOT NULL --
OR SzorgalomSzoveg IS NOT NULL) --
THEN 'Szorgalom' --
END AS Tantargy
,ErtekelesTipusDictionary.C_NAME ErtTip
,ErtekelesModjaDictionary.C_NAME ErtMod
,ErtekelesTema Tema
,ErtekeloNeve.C_NYOMTATASINEV ErtekeloNev
,COALESCE(
CAST(ErtekelesTable.ErtekelesOsztalyzatValue AS NVARCHAR(MAX))
,ErtekelesTable.ErtekelesSzoveg
,ErtekelesTable.ErtekelesSzazalek + '%'
,ErtekelesTable.MagatartasOsztalyzatNev
,ErtekelesTable.MagatartasErtek
,ErtekelesTable.MagatartasSzoveg
,ErtekelesTable.SzorgalomOsztalyzatNev
,ErtekelesTable.SzorgalomErtek
,ErtekelesTable.SzorgalomSzoveg
) Osztalyzat
,TanuloNeve.C_NYOMTATASINEV TanuloNev
,TanuloNeve.C_NYOMTATASINEV + CAST(ErtekelesTable.TanuloId AS NVARCHAR(MAX)) GroupParameter
FROM fnGetDokumentumErtekelesekOsztalyonkent(@TanevId, @OsztalyId, DEFAULT, 0, DEFAULT, DEFAULT) ErtekelesTable
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesTipusDictionary ON ErtekelesTipusDictionary.ID = ErtekelesTable.TipusId AND ErtekelesTipusDictionary.C_TANEVID = @TanevId
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesModjaDictionary ON ErtekelesModjaDictionary.ID = ErtekelesTable.ErtekelesModjaId AND ErtekelesTipusDictionary.C_TANEVID = @TanevId
INNER JOIN T_FELHASZNALO_OSSZES ErtekeloNeve ON ErtekeloNeve.Id = ErtekelesTable.ErtekeloId
INNER JOIN T_FELHASZNALO_OSSZES TanuloNeve ON TanuloNeve.Id = ErtekelesTable.TanuloId
WHERE
IsMagatartasSzorgalom = 'F'
UNION
SELECT
dbo.fnGetDokumentumDatumFormatum(Datum) Datum
,'Magatartás' Tantargy
,ErtekelesTipusDictionary.C_NAME ErtTip
,ErtekelesModjaDictionary.C_NAME ErtMod
,ErtekelesTema Tema
,ErtekeloNeve.C_NYOMTATASINEV ErtekeloNev
,COALESCE(
ErtekelesTable.MagatartasOsztalyzatNev
,ErtekelesTable.MagatartasErtek
,ErtekelesTable.MagatartasSzoveg
) Osztalyzat
,TanuloNeve.C_NYOMTATASINEV TanuloNev
,TanuloNeve.C_NYOMTATASINEV + CAST(ErtekelesTable.TanuloId AS NVARCHAR(MAX)) GroupParameter
FROM fnGetDokumentumErtekelesekOsztalyonkent(@TanevId, @OsztalyId, DEFAULT, 0, DEFAULT, DEFAULT) ErtekelesTable
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesTipusDictionary ON ErtekelesTipusDictionary.ID = ErtekelesTable.TipusId AND ErtekelesTipusDictionary.C_TANEVID = @TanevId
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesModjaDictionary ON ErtekelesModjaDictionary.ID = ErtekelesTable.ErtekelesModjaId AND ErtekelesTipusDictionary.C_TANEVID = @TanevId
INNER JOIN T_FELHASZNALO_OSSZES ErtekeloNeve ON ErtekeloNeve.Id = ErtekelesTable.ErtekeloId
INNER JOIN T_FELHASZNALO_OSSZES TanuloNeve ON TanuloNeve.Id = ErtekelesTable.TanuloId
WHERE
IsMagatartasSzorgalom = 'T'
AND (MagatartasOsztalyzatNev IS NOT NULL OR MagatartasErtek IS NOT NULL OR MagatartasSzoveg IS NOT NULL)
UNION
SELECT
dbo.fnGetDokumentumDatumFormatum(Datum) Datum
,'Szorgalom' Tantargy
,ErtekelesTipusDictionary.C_NAME ErtTip
,ErtekelesModjaDictionary.C_NAME ErtMod
,ErtekelesTema Tema
,ErtekeloNeve.C_NYOMTATASINEV ErtekeloNev
,COALESCE(
ErtekelesTable.SzorgalomOsztalyzatNev
,ErtekelesTable.SzorgalomErtek
,ErtekelesTable.SzorgalomSzoveg
) Osztalyzat
,TanuloNeve.C_NYOMTATASINEV TanuloNev
,TanuloNeve.C_NYOMTATASINEV + CAST(ErtekelesTable.TanuloId AS NVARCHAR(MAX)) GroupParameter
FROM fnGetDokumentumErtekelesekOsztalyonkent(@TanevId, @OsztalyId, DEFAULT, 0, DEFAULT, DEFAULT) ErtekelesTable
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesTipusDictionary ON ErtekelesTipusDictionary.ID = ErtekelesTable.TipusId AND ErtekelesTipusDictionary.C_TANEVID = @TanevId
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesModjaDictionary ON ErtekelesModjaDictionary.ID = ErtekelesTable.ErtekelesModjaId AND ErtekelesTipusDictionary.C_TANEVID = @TanevId
INNER JOIN T_FELHASZNALO_OSSZES ErtekeloNeve ON ErtekeloNeve.Id = ErtekelesTable.ErtekeloId
INNER JOIN T_FELHASZNALO_OSSZES TanuloNeve ON TanuloNeve.Id = ErtekelesTable.TanuloId
WHERE
IsMagatartasSzorgalom = 'T'
AND (SzorgalomOsztalyzatNev IS NOT NULL OR SzorgalomErtek IS NOT NULL OR SzorgalomSzoveg IS NOT NULL)
ORDER BY TanuloNeve.C_NYOMTATASINEV, Datum
END
GO