init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,195 @@
|
|||
DROP PROCEDURE IF EXISTS uspGetDokumentumTantargyakErtekeleshez
|
||||
GO
|
||||
|
||||
|
||||
CREATE PROCEDURE uspGetDokumentumTantargyakErtekeleshez
|
||||
@intezmenyId int
|
||||
,@tanevId int
|
||||
,@osztalyCsoportId int
|
||||
,@csakKivalasztottOsztalyCsoport bit
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@evfolyamTipusId int = (SELECT C_EVFOLYAMTIPUSA FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyCsoportId AND TOROLT = 'F')
|
||||
,@elsoNap datetime
|
||||
,@utolsoNap datetime
|
||||
,@isCsoport bit = 0
|
||||
|
||||
SELECT @elsoNap = C_KEZDONAP, @utolsoNap = C_UTOLSONAP FROM T_TANEV_OSSZES WHERE ID = @tanevId AND TOROLT = 'F'
|
||||
|
||||
IF EXISTS (SELECT ID FROM T_CSOPORT_OSSZES WHERE ID = @osztalyCsoportId AND TOROLT = 'F')
|
||||
BEGIN
|
||||
SET @isCsoport = 1
|
||||
END
|
||||
|
||||
CREATE TABLE #KapcsopodoTantargy(
|
||||
ID int
|
||||
,C_FOTARGYID int
|
||||
,C_NEV nvarchar(255)
|
||||
,C_NEVNYOMTATVANYBAN nvarchar(255)
|
||||
,C_TARGYKATEGORIA int
|
||||
,C_INTEZMENYID int
|
||||
,C_TANEVID int
|
||||
)
|
||||
|
||||
INSERT INTO #KapcsopodoTantargy
|
||||
SELECT
|
||||
kt.ID
|
||||
,kt.C_FOTARGYID
|
||||
,kt.C_NEV
|
||||
,t.C_NEVNYOMTATVANYBAN
|
||||
,kt.C_TARGYKATEGORIA
|
||||
,kt.C_INTEZMENYID
|
||||
,kt.C_TANEVID
|
||||
FROM dbo.fnGetKapcsolodoTantargyak(@intezmenyId, @tanevId, NULL) AS kt
|
||||
INNER JOIN T_TANTARGY_OSSZES AS t ON t.ID = kt.ID AND t.TOROLT = 'F';
|
||||
|
||||
-- Összeszedjük minden tanuló-tanulócsoporthoz a tárgyakat
|
||||
WITH tantargy_CTE (C_TANTARGYID, C_FOTARGYID, C_TANULOID, C_TANULOCSOPORTID, C_INTEZMENYID, C_TANEVID)
|
||||
AS (
|
||||
-- TTF-es tárgyak
|
||||
SELECT
|
||||
Foglalkozas.C_TANTARGYID
|
||||
,Tantargy.C_FOTARGYID
|
||||
,f.ID AS c_tanuloid
|
||||
,tcsOsztaly.ID AS C_TANULOCSOPORTID
|
||||
,Tantargy.C_INTEZMENYID
|
||||
,Tantargy.C_TANEVID
|
||||
FROM T_FOGLALKOZAS_OSSZES Foglalkozas
|
||||
INNER JOIN T_TANTARGY_OSSZES Tantargy ON Tantargy.C_INTEZMENYID = Foglalkozas.C_INTEZMENYID
|
||||
AND Tantargy.C_TANEVID = Foglalkozas.C_TANEVID
|
||||
AND Tantargy.TOROLT = 'F'
|
||||
AND Tantargy.ID = Foglalkozas.C_TANTARGYID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = Foglalkozas.C_OSZTALYCSOPORTID
|
||||
AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.ID = tcs.C_TANULOID AND f.TOROLT = 'F'
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcsOsztaly ON tcsOsztaly.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND tcsOsztaly.C_TANULOID = f.ID
|
||||
AND tcsOsztaly.TOROLT = 'F'
|
||||
WHERE
|
||||
(tcsOsztaly.C_KILEPESDATUM IS NULL OR tcsOsztaly.C_KILEPESDATUM > tcs.C_BELEPESDATUM)
|
||||
AND Foglalkozas.C_INTEZMENYID = @intezmenyId
|
||||
AND Foglalkozas.C_TANEVID = @tanevId
|
||||
AND Foglalkozas.TOROLT = 'F'
|
||||
AND (@isCsoport = 0 OR Foglalkozas.C_OSZTALYCSOPORTID = @osztalyCsoportId)
|
||||
|
||||
UNION
|
||||
-- ttf-ben nem szereplő tárgyak
|
||||
SELECT
|
||||
OrarendiOra.C_TANTARGYID
|
||||
,Tantargy.C_FOTARGYID
|
||||
,f.ID AS C_TANULOID
|
||||
,tcsOsztaly.ID AS C_TANULOCSOPORTID
|
||||
,Tantargy.C_INTEZMENYID
|
||||
,Tantargy.C_TANEVID
|
||||
FROM T_ORARENDIORA_OSSZES OrarendiOra
|
||||
INNER JOIN T_TANTARGY_OSSZES Tantargy ON Tantargy.C_INTEZMENYID = OrarendiOra.C_INTEZMENYID
|
||||
AND Tantargy.C_TANEVID = OrarendiOra.C_TANEVID
|
||||
AND Tantargy.TOROLT = 'F'
|
||||
AND Tantargy.ID = OrarendiOra.C_TANTARGYID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = OrarendiOra.C_OSZTALYCSOPORTID
|
||||
AND (tcs.C_BELEPESDATUM < OrarendiOra.C_ORAERVENYESSEGVEGE AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= OrarendiOra.C_ORAERVENYESSEGKEZDETE))
|
||||
AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.ID = tcs.C_TANULOID AND f.TOROLT = 'F'
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcsOsztaly ON tcsOsztaly.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND (tcsOsztaly.C_BELEPESDATUM < OrarendiOra.C_ORAERVENYESSEGVEGE AND (tcsOsztaly.C_KILEPESDATUM IS NULL OR tcsOsztaly.C_KILEPESDATUM >= OrarendiOra.C_ORAERVENYESSEGKEZDETE))
|
||||
AND tcsOsztaly.C_TANULOID = f.ID
|
||||
AND tcsOsztaly.TOROLT = 'F'
|
||||
WHERE
|
||||
(tcsOsztaly.C_KILEPESDATUM IS NULL OR tcsOsztaly.C_KILEPESDATUM > tcs.C_BELEPESDATUM)
|
||||
AND OrarendiOra.C_INTEZMENYID = @intezmenyId
|
||||
AND OrarendiOra.C_TANEVID = @tanevId
|
||||
AND OrarendiOra.TOROLT = 'F'
|
||||
AND (@isCsoport = 0 OR OrarendiOra.C_OSZTALYCSOPORTID = @osztalyCsoportId)
|
||||
|
||||
UNION
|
||||
-- Értékelést kapott tárgyak
|
||||
SELECT DISTINCT
|
||||
TanuloErtekeles.TantargyId
|
||||
,TanuloErtekeles.FotargyId
|
||||
,TanuloErtekeles.TanuloId
|
||||
,TanuloErtekeles.TanuloCsoportId AS C_TANULOCSOPORTID
|
||||
,@intezmenyId
|
||||
,@tanevId
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent(@tanevId, @osztalyCsoportId, DEFAULT, DEFAULT, @csakKivalasztottOsztalyCsoport, DEFAULT, DEFAULT) AS TanuloErtekeles
|
||||
)
|
||||
|
||||
SELECT
|
||||
NULL
|
||||
,NULL
|
||||
,'Magatartás'
|
||||
,''
|
||||
,0
|
||||
,f.ID
|
||||
,tcs.ID
|
||||
,0
|
||||
,''
|
||||
,0
|
||||
,0
|
||||
,''
|
||||
,@intezmenyId
|
||||
,@tanevId
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = tcs.C_TANULOID AND f.TOROLT = 'F'
|
||||
WHERE
|
||||
tcs.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND tcs.TOROLT = 'F'
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT
|
||||
NULL
|
||||
,NULL
|
||||
,'Szorgalom'
|
||||
,''
|
||||
,0
|
||||
,f.ID
|
||||
,tcs.ID
|
||||
,1
|
||||
,''
|
||||
,0
|
||||
,0
|
||||
,''
|
||||
,@intezmenyId
|
||||
,@tanevId
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = tcs.C_TANULOID AND f.TOROLT = 'F'
|
||||
WHERE
|
||||
tcs.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND tcs.TOROLT = 'F'
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT DISTINCT
|
||||
KapcsopodoTantargy.ID
|
||||
,KapcsopodoTantargy.C_FOTARGYID
|
||||
,KapcsopodoTantargy.C_NEV
|
||||
,KapcsopodoTantargy.C_NEVNYOMTATVANYBAN
|
||||
,KapcsopodoTantargy.C_TARGYKATEGORIA
|
||||
,tantargy_CTE.c_tanuloId
|
||||
,tantargy_CTE.c_tanulocsoportid
|
||||
,CASE WHEN KapcsopodoTantargy.C_FOTARGYID IS NULL THEN ISNULL(TargyKategoriaDictionary.C_ORDER, 10000) ELSE ISNULL(FotargyKategoriaDictionary.C_ORDER, 10000) END RENDEZ1
|
||||
,ISNULL(ISNULL(Fotargy.C_NEVNYOMTATVANYBAN, Fotargy.C_NEV), ISNULL(KapcsopodoTantargy.C_NEVNYOMTATVANYBAN, KapcsopodoTantargy.C_NEV)) AS RENDEZ2
|
||||
,ISNULL(KapcsopodoTantargy.C_FOTARGYID, KapcsopodoTantargy.ID) AS RENDEZ3
|
||||
,KapcsopodoTantargy.C_FOTARGYID AS RENDEZ4
|
||||
,ISNULL(KapcsopodoTantargy.C_NEVNYOMTATVANYBAN, KapcsopodoTantargy.C_NEV) AS RENDEZ5
|
||||
,KapcsopodoTantargy.C_INTEZMENYID
|
||||
,KapcsopodoTantargy.C_TANEVID
|
||||
FROM tantargy_CTE
|
||||
INNER JOIN #KapcsopodoTantargy KapcsopodoTantargy ON tantargy_CTE.C_TANTARGYID = KapcsopodoTantargy.ID OR tantargy_CTE.C_FOTARGYID = KapcsopodoTantargy.ID
|
||||
LEFT JOIN T_TANTARGY_OSSZES Fotargy ON Fotargy.C_INTEZMENYID = tantargy_CTE.C_INTEZMENYID
|
||||
AND Fotargy.C_TANEVID = tantargy_CTE.C_TANEVID
|
||||
AND Fotargy.TOROLT = 'F'
|
||||
AND Fotargy.ID = tantargy_CTE.C_FOTARGYID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES TargyKategoriaDictionary ON TargyKategoriaDictionary.Id = KapcsopodoTantargy.C_TARGYKATEGORIA
|
||||
AND TargyKategoriaDictionary.TOROLT = 'F'
|
||||
AND TargyKategoriaDictionary.C_TANEVID = @tanevId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES FotargyKategoriaDictionary ON FotargyKategoriaDictionary.ID = Fotargy.C_TARGYKATEGORIA
|
||||
AND FotargyKategoriaDictionary.TOROLT = 'F'
|
||||
AND FotargyKategoriaDictionary.C_TANEVID = Fotargy.C_TANEVID
|
||||
END
|
||||
GO
|
||||
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue