194 lines
No EOL
10 KiB
Transact-SQL
194 lines
No EOL
10 KiB
Transact-SQL
DROP PROCEDURE IF EXISTS dbo.sp_GetTanulokJegyeiReszletezes
|
|
DROP PROCEDURE IF EXISTS dbo.uspGetTanulokJegyeiReszletezes
|
|
GO
|
|
|
|
CREATE PROCEDURE [dbo].[uspGetTanulokJegyeiReszletezes]
|
|
@OsztalyId int
|
|
,@TanevId int
|
|
,@isNemet int = 0
|
|
,@osztalyzatTipusTypeID int = 44
|
|
,@magatartasErtekelesTipusTypeID int = 50
|
|
,@szorgalomErtekelesTipusTypeID int = 51
|
|
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 ErtekelesSzovegFormazott 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 MagatartasSzovegFormazott IS NOT NULL)
|
|
THEN 'Magatartás'
|
|
WHEN (CAST(SzorgalomOsztalyzatNev AS NVARCHAR(MAX)) IS NOT NULL
|
|
OR SzorgalomErtek IS NOT NULL
|
|
OR SzorgalomSzovegFormazott IS NOT NULL)
|
|
THEN 'Szorgalom'
|
|
END AS Tantargy
|
|
,ErtekelesTipusDictionary.C_NAME ErtTip
|
|
,ErtekelesModjaDictionary.C_NAME ErtMod
|
|
,ErtekelesTable.ErtekelesTema Tema
|
|
,ErtekeloNeve.C_NYOMTATASINEV ErtekeloNev
|
|
,COALESCE(
|
|
CAST(ErtekelesTable.ErtekelesOsztalyzatValue AS NVARCHAR(MAX))
|
|
,ErtekelesTable.ErtekelesSzovegFormazott
|
|
,ErtekelesTable.ErtekelesSzazalek
|
|
,ErtekelesTable.MagatartasOsztalyzatNev
|
|
,ErtekelesTable.MagatartasErtek
|
|
,ErtekelesTable.MagatartasSzovegFormazott
|
|
,ErtekelesTable.SzorgalomOsztalyzatNev
|
|
,ErtekelesTable.SzorgalomErtek
|
|
,ErtekelesTable.SzorgalomSzovegFormazott
|
|
) Osztalyzat
|
|
,TanuloNeve.C_NYOMTATASINEV TanuloNev
|
|
,TanuloNeve.C_NYOMTATASINEV + CAST(Tanulok.TanuloId AS NVARCHAR(MAX)) GroupParameter
|
|
,Tanulok.TanuloId AS TanuloId
|
|
,TanuloNeve.C_OKTATASIAZONOSITO AS TanuloOktAzon
|
|
,ErtekelesTable.ErtekeloId AS ErtekeloId
|
|
,ErtekeloNeve.C_OKTATASIAZONOSITO AS ErtekeloOktAzon
|
|
,@OsztalyId AS OsztalyId
|
|
,dbo.fnGetDokumentumDatumFormatum(ErtekelesTable.RogzitesDatum) AS RogzitesDatum
|
|
,ErtekelesTable.RENDEZ0 AS RENDEZ0
|
|
,ErtekelesTable.RENDEZ1 AS RENDEZ1
|
|
,ErtekelesTable.RENDEZ2 AS RENDEZ2
|
|
,ErtekelesTable.RENDEZ3 AS RENDEZ3
|
|
,ErtekelesTable.RENDEZ4 AS RENDEZ4
|
|
,ErtekelesTable.RENDEZ5 AS RENDEZ5
|
|
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@TanevId, @OsztalyId, 'F') AS Tanulok
|
|
LEFT JOIN fnGetDokumentumErtekelesekOsztalyonkent(@TanevId, @OsztalyId, DEFAULT, 0, DEFAULT, DEFAULT, DEFAULT, @osztalyzatTipusTypeID, @magatartasErtekelesTipusTypeID, @szorgalomErtekelesTipusTypeID) ErtekelesTable ON ErtekelesTable.TanuloId = Tanulok.TanuloId AND ErtekelesTable.IsMagatartasSzorgalom = 'F'
|
|
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 ErtekelesModjaDictionary.C_TANEVID = @TanevId
|
|
LEFT JOIN T_FELHASZNALO_OSSZES ErtekeloNeve ON ErtekeloNeve.Id = ErtekelesTable.ErtekeloId
|
|
INNER JOIN T_FELHASZNALO_OSSZES TanuloNeve ON TanuloNeve.Id = Tanulok.TanuloId
|
|
|
|
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.MagatartasSzovegFormazott
|
|
) Osztalyzat
|
|
,TanuloNeve.C_NYOMTATASINEV TanuloNev
|
|
,TanuloNeve.C_NYOMTATASINEV + CAST(Tanulok.TanuloId AS NVARCHAR(MAX)) GroupParameter
|
|
,Tanulok.TanuloId AS TanuloId
|
|
,TanuloNeve.C_OKTATASIAZONOSITO AS TanuloOktAzon
|
|
,ErtekelesTable.ErtekeloId AS ErtekeloId
|
|
,ErtekeloNeve.C_OKTATASIAZONOSITO AS ErtekeloOktAzon
|
|
,@OsztalyId AS OsztalyId
|
|
,dbo.fnGetDokumentumDatumFormatum(ErtekelesTable.RogzitesDatum) AS RogzitesDatum
|
|
,0 AS RENDEZ0
|
|
,0 AS RENDEZ1
|
|
,'' AS RENDEZ2
|
|
,0 AS RENDEZ3
|
|
,0 AS RENDEZ4
|
|
,'' AS RENDEZ5
|
|
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@TanevId, @OsztalyId, 'F') AS Tanulok
|
|
LEFT JOIN fnGetDokumentumErtekelesekOsztalyonkent(@TanevId, @OsztalyId, DEFAULT, 0, DEFAULT, DEFAULT, DEFAULT, @osztalyzatTipusTypeID, @magatartasErtekelesTipusTypeID, @szorgalomErtekelesTipusTypeID) ErtekelesTable ON ErtekelesTable.TanuloId = Tanulok.TanuloId AND ErtekelesTable.IsMagatartasSzorgalom = 'T'
|
|
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 ErtekelesModjaDictionary.C_TANEVID = @TanevId
|
|
LEFT JOIN T_FELHASZNALO_OSSZES ErtekeloNeve ON ErtekeloNeve.Id = ErtekelesTable.ErtekeloId
|
|
INNER JOIN T_FELHASZNALO_OSSZES TanuloNeve ON TanuloNeve.Id = Tanulok.TanuloId
|
|
WHERE
|
|
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.SzorgalomSzovegFormazott
|
|
) Osztalyzat
|
|
,TanuloNeve.C_NYOMTATASINEV TanuloNev
|
|
,TanuloNeve.C_NYOMTATASINEV + CAST(Tanulok.TanuloId AS NVARCHAR(MAX)) GroupParameter
|
|
,Tanulok.TanuloId AS TanuloId
|
|
,TanuloNeve.C_OKTATASIAZONOSITO AS TanuloOktAzon
|
|
,ErtekelesTable.ErtekeloId AS ErtekeloId
|
|
,ErtekeloNeve.C_OKTATASIAZONOSITO AS ErtekeloOktAzon
|
|
,@OsztalyId AS OsztalyId
|
|
,dbo.fnGetDokumentumDatumFormatum(ErtekelesTable.RogzitesDatum) AS RogzitesDatum
|
|
,0 AS RENDEZ0
|
|
,1 AS RENDEZ1
|
|
,'' AS RENDEZ2
|
|
,0 AS RENDEZ3
|
|
,0 AS RENDEZ4
|
|
,'' AS RENDEZ5
|
|
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@TanevId, @OsztalyId, 'F') AS Tanulok
|
|
LEFT JOIN fnGetDokumentumErtekelesekOsztalyonkent(@TanevId, @OsztalyId, DEFAULT, 0, DEFAULT, DEFAULT, DEFAULT, @osztalyzatTipusTypeID, @magatartasErtekelesTipusTypeID, @szorgalomErtekelesTipusTypeID) ErtekelesTable ON ErtekelesTable.TanuloId = Tanulok.TanuloId AND ErtekelesTable.IsMagatartasSzorgalom = 'T'
|
|
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 ErtekelesModjaDictionary.C_TANEVID = @TanevId
|
|
LEFT JOIN T_FELHASZNALO_OSSZES ErtekeloNeve ON ErtekeloNeve.Id = ErtekelesTable.ErtekeloId
|
|
INNER JOIN T_FELHASZNALO_OSSZES TanuloNeve ON TanuloNeve.Id = Tanulok.TanuloId
|
|
WHERE
|
|
SzorgalomOsztalyzatNev IS NOT NULL OR SzorgalomErtek IS NOT NULL OR SzorgalomSzoveg IS NOT NULL
|
|
ORDER BY TanuloNeve.C_NYOMTATASINEV, RENDEZ0, RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5, Datum
|
|
|
|
/* Osztály adatok */
|
|
SELECT
|
|
o.ID AS OsztalyId
|
|
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
|
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
|
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
|
,o.C_OSZTALYFONOKID AS OsztalyfonokId
|
|
,o.C_TANTERVID AS TantervId
|
|
,o.C_SZAKMACSOPORT AS SzakmaCsoport
|
|
,o.C_AGAZAT AS Agazat
|
|
,o.C_SZAKKEPESITES AS Szakkepesites
|
|
,o.C_RESZSZAKKEPESITES AS Reszszakkepesites
|
|
,o.C_AGAZATUJSZKTTIPUSID AS UjSzktAgazat
|
|
,o.C_SZAKMATIPUSID AS UjSzktSzakma
|
|
,o.C_SZAKMAIRANYTIPUSID AS UjSzktSzakmairany
|
|
,o.C_TANULMANYITERULETNKTTIPUSID AS NktTanulmanyiTerulet
|
|
,o.C_SZAKKEPESITESNKTTIPUSID AS NktSzakkepesites
|
|
,o.C_SZAKIRANYNKTTIPUSID AS NktSzakirany
|
|
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
|
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
|
,ocs.C_ISTECHNIKAI OJTechnikaiOsztaly
|
|
,o.C_NEMZETISEGI OJNemzetisegi
|
|
,o.C_KETTANNYELVU OJKettannyelvu
|
|
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
|
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI OJIsGyogypedagogiaiLogopediai
|
|
,o.C_SPORT OJSportOsztaly
|
|
,o.C_AJPROGRAM OJAranyJanosProgram
|
|
FROM T_OSZTALY_OSSZES AS o
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.TOROLT = 'F'
|
|
WHERE o.ID = @OsztalyId
|
|
|
|
END
|
|
|
|
GO |