init
This commit is contained in:
@@ -0,0 +1,193 @@
|
||||
DROP FUNCTION IF EXISTS fnGetLemorzsolodottTanulokByFelhely
|
||||
GO
|
||||
|
||||
-- A Funkció visszaadja a lemorzsolódás szempontjából releváns tanulók listáját az adott feladatellátási helyre, évfolymaonként és nemenként, valamint hogy
|
||||
CREATE FUNCTION [dbo].[fnGetLemorzsolodottTanulokByFelhely] (@feladatEllatasiHelyId INT, @tanevId INT, @isFelevi INT)
|
||||
RETURNS @retTable TABLE (
|
||||
TanuloId int PRIMARY KEY,
|
||||
Evfolyam int,
|
||||
Neme int,
|
||||
TanuloNev nvarchar(max),
|
||||
OktatasiAzonosito nvarchar(max),
|
||||
TanuloOsztalyNev nvarchar(255),
|
||||
TanuloOsztalyId int,
|
||||
IsKozepesMiatt int,
|
||||
IsRontasMiatt int
|
||||
)
|
||||
BEGIN
|
||||
|
||||
-- Használt temporary táblák elkészítése
|
||||
DECLARE @Evfolyamok TABLE
|
||||
(Id INT, Evfolyam INT)
|
||||
DECLARE @Osztalyzatok TABLE
|
||||
(Id INT, Ertek FLOAT)
|
||||
DECLARE @FHhozTartozoTanulok TABLE
|
||||
(TanuloId INT, Evfolyam INT, Neme INT, TanuloNev nvarchar(max), OktatasiAzonosito nvarchar(max), TanuloOsztalyNev nvarchar(255), TanuloOsztalyId int)
|
||||
DECLARE @TanuloAtlagok TABLE
|
||||
(TanuloId INT, AktualisAtlag FLOAT, KorabbiAtlag FLOAT)
|
||||
DECLARE @KozepesAlattiTanulok TABLE
|
||||
(TanuloId INT)
|
||||
DECLARE @RontottTanulok TABLE
|
||||
(TanuloId INT)
|
||||
DECLARE @MuvCsoportTip TABLE
|
||||
(CsoptipID INT)
|
||||
-- Mi a "Közepes" értéke az adott feladatellátási helyen
|
||||
DECLARE @FelHelyTipusKozepes FLOAT = 3.0
|
||||
SELECT @FelHelyTipusKozepes =
|
||||
IIF(
|
||||
fh.C_OKTATASINEVELESIFELADATTIPUS IN (1160, 1161, 1162, 5435, 1176, 6463)
|
||||
, 2.5
|
||||
, 3.0
|
||||
)
|
||||
FROM T_FELADATELLATASIHELY fh
|
||||
WHERE fh.ID = @feladatEllatasiHelyId AND fh.TOROLT = 'F'
|
||||
|
||||
INSERT INTO @MuvCsoportTip (CsoptipID)
|
||||
VALUES (1071),(1070),(1069),(1068),(1067),(6756),(6757),(6758),(6759),(6760),(6761)
|
||||
-- Az elõzõ tanév ID-ja
|
||||
DECLARE @ElozoTanevId INT = 0
|
||||
SELECT @ElozoTanevId = ISNULL(elozotanev.ID,0)
|
||||
FROM T_TANEV_OSSZES akttanev
|
||||
INNER JOIN T_TANEV_OSSZES elozotanev ON elozotanev.C_INTEZMENYID = akttanev.C_INTEZMENYID AND elozotanev.TOROLT = 'F'
|
||||
WHERE akttanev.ID = @tanevId
|
||||
AND
|
||||
(
|
||||
CAST(SUBSTRING(akttanev.C_NEV, 1, PATINDEX('%[^0-9]%', akttanev.C_NEV) - 1) AS INT)-
|
||||
CAST(SUBSTRING(elozotanev.C_NEV, 1, PATINDEX('%[^0-9]%', elozotanev.C_NEV) - 1) AS INT) = 1
|
||||
)
|
||||
|
||||
DECLARE @BesorolasiDatum DATE = (SELECT TOP 1 C_DATUM from T_TANEVRENDJE tr WHERE C_NAPTIPUSA = IIF(@isFelevi = 0,1395,1400) AND C_TANEVID = @tanevid AND TOROLT='F')
|
||||
|
||||
INSERT INTO @Evfolyamok
|
||||
SELECT ID, Evfolyam FROM (SELECT DISTINCT id, CASE
|
||||
WHEN ID IN (1307,1330,1334) THEN 1307 /* 5. évfolyam*/
|
||||
WHEN ID IN (1308) THEN 1308 /* 6. évfolyam*/
|
||||
WHEN ID IN (1309,1331,1335,7109) THEN 1309 /* 7. évfolyam*/
|
||||
WHEN ID IN (1310,1324,7110) THEN 1310 /* 8. évfolyam*/
|
||||
WHEN ID IN (1311,1316,1332,1333,1336,3018,3019,3020,6702,7111, 7112, 7113, 7114, 7127, 7128)
|
||||
THEN 1311 /* 9. évfolyam*/
|
||||
WHEN ID IN (1312,1323,6703,7115, 7116, 7117, 7118) THEN 1312 /* 10. évfolyam*/
|
||||
WHEN ID IN (1313,1317,1325,3016,6704,7119, 7120, 7121, 7122) THEN 1313 /* 11. évfolyam*/
|
||||
WHEN id in (1314,1318,1326,3017,3021,3022,1322,6520,6705,6818,7123, 7124, 7125, 7126)
|
||||
THEN 1314 /* 12. évfolyam*/
|
||||
WHEN ID IN (6471,6472,6473,6475) THEN 6471 /* KH 1. évfolyam */
|
||||
WHEN ID IN (6474,6476) THEN 6474 /* KH 2. évfolyam */
|
||||
WHEN ID IN (6477,6479,6481) THEN 6477 /* SzH 1. évfolyam */
|
||||
WHEN ID IN (6478,6480,6482) THEN 6478 /* SzH 2. évfolyam */
|
||||
ELSE NULL
|
||||
END AS Evfolyam
|
||||
FROM T_DICTIONARYITEMBASE
|
||||
WHERE C_TYPE = 'EvfolyamTipus' AND C_TANEVID = @tanevId) Evfolyamok
|
||||
WHERE Evfolyam IS NOT NULL
|
||||
|
||||
INSERT INTO @Osztalyzatok
|
||||
SELECT ID, CONVERT(FLOAT,C_VALUE)
|
||||
FROM T_DICTIONARYITEMBASE
|
||||
WHERE C_TYPE = 'OsztalyzatTipus' AND C_TANEVID = @tanevId
|
||||
|
||||
|
||||
-- Egy adott FH-hoz tartozó tanulók kilistázása (évfolyamonként, nemenként) összevont osztályokkal együtt
|
||||
|
||||
INSERT INTO @FHhozTartozoTanulok/*TODO:Tobb Osztaly*//*OM-1582*/
|
||||
SELECT DISTINCT
|
||||
tcs.C_TANULOID
|
||||
,ISNULL(e.Evfolyam,1307)
|
||||
,f.C_NEME
|
||||
,f.C_NYOMTATASINEV
|
||||
,f.C_OKTATASIAZONOSITO
|
||||
,ocs.C_NEV
|
||||
,ocs.ID
|
||||
FROM T_OSZTALYCSOPORT ocs
|
||||
INNER JOIN T_OSZTALY o ON o.ID=ocs.ID
|
||||
INNER JOIN T_TANULOCSOPORT tcs ON tcs.C_OSZTALYCSOPORTID = o.ID AND tcs.C_TANEVID = @tanevId
|
||||
AND tcs.C_BELEPESDATUM <= @BesorolasiDatum AND (tcs.C_KILEPESDATUM >= @BesorolasiDatum OR tcs.C_KILEPESDATUM IS NULL)
|
||||
INNER JOIN T_TANULOTANUGYIADATOK tta ON tta.C_TANULOCSOPORTID=tcs.ID
|
||||
LEFT JOIN @Evfolyamok e ON e.Id=tta.C_TANULOEVFOLYAMTIPUSID
|
||||
INNER JOIN T_FELHASZNALO f ON f.ID=tcs.C_TANULOID
|
||||
WHERE C_EVFOLYAMTIPUSA IN (7366,6909,6912,6913,6908,6910,6911) AND ocs.C_FELADATELLATASIHELYID = @feladatEllatasiHelyId AND ocs.C_KEPZESIFORMA = 1096
|
||||
UNION
|
||||
SELECT DISTINCT
|
||||
tcs.C_TANULOID
|
||||
,evf.Evfolyam
|
||||
,f.C_NEME
|
||||
,f.C_NYOMTATASINEV
|
||||
,f.C_OKTATASIAZONOSITO
|
||||
,ocs.C_NEV
|
||||
,ocs.ID
|
||||
FROM T_OSZTALYCSOPORT ocs
|
||||
INNER JOIN T_TANULOCSOPORT tcs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND tcs.TOROLT = 'F' AND tcs.C_TANEVID = @tanevId
|
||||
AND tcs.C_BELEPESDATUM <= @BesorolasiDatum AND (tcs.C_KILEPESDATUM >= @BesorolasiDatum OR tcs.C_KILEPESDATUM IS NULL)
|
||||
INNER JOIN T_OSZTALY o ON o.id = tcs.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_FELHASZNALO f ON f.id = tcs.C_TANULOID
|
||||
INNER JOIN @Evfolyamok evf ON evf.Id = ocs.C_EVFOLYAMTIPUSA
|
||||
WHERE ocs.C_FELADATELLATASIHELYID = @feladatEllatasiHelyId
|
||||
AND ocs.C_TANEVID = @tanevId AND ocs.C_KEPZESIFORMA = 1096
|
||||
|
||||
-- Visszatérési tábla számítása
|
||||
|
||||
|
||||
INSERT INTO @KozepesAlattiTanulok (TanuloId)
|
||||
SELECT DISTINCT
|
||||
fht.TanuloId
|
||||
FROM T_TANULOERTEKELES te
|
||||
INNER JOIN T_TANTARGY tgy ON tgy.ID = te.C_TANTARGYID AND (tgy.C_FOTARGYE = 'T' OR tgy.C_ALTANTARGYKENTNYOMTATVANYBAN = 'T')
|
||||
INNER JOIN @Osztalyzatok o ON o.ID = te.C_ERTEKELESOSZTALYZATID
|
||||
INNER JOIN @FHhozTartozoTanulok fht ON fht.TanuloId = te.C_TANULOID
|
||||
LEFT JOIN T_CSOPORT cs ON cs.ID=te.C_OSZTALYCSOPORTID --alapf. műv okt csoportok osztályzatai nem kellenek
|
||||
WHERE te.C_TIPUSID = IIF(@isFelevi = 0,1520,1519) AND te.C_TANEVID = @tanevId AND ISNULL(cs.C_TIPUSA,0) NOT IN(SELECT CsoptipID FROM @MuvCsoportTip)
|
||||
GROUP BY fht.TanuloId
|
||||
HAVING ROUND(AVG(o.Ertek),2) < @FelHelyTipusKozepes
|
||||
|
||||
|
||||
INSERT INTO @TanuloAtlagok (TanuloId, AktualisAtlag, KorabbiAtlag)
|
||||
SELECT
|
||||
fht.TanuloId,
|
||||
(
|
||||
SELECT ROUND(AVG(o.Ertek),2) FROM T_TANULOERTEKELES te
|
||||
INNER JOIN @Osztalyzatok o ON o.ID = te.C_ERTEKELESOSZTALYZATID
|
||||
WHERE te.C_TANULOID = tanulo.ID AND te.C_TIPUSID = IIF(@isFelevi = 0,1520,1519)
|
||||
AND NOT EXISTS(SELECT 1 FROM T_CSOPORT WHERE ID = te.C_OSZTALYCSOPORTID AND C_TIPUSA IN (SELECT CsoptipID FROM @MuvCsoportTip))
|
||||
),
|
||||
(
|
||||
SELECT ROUND(AVG(o.Ertek),2) FROM T_TANULOERTEKELES_OSSZES te
|
||||
INNER JOIN @Osztalyzatok o ON o.ID = te.C_ERTEKELESOSZTALYZATID
|
||||
WHERE te.C_TANULOID = extanulo.ID AND te.C_TIPUSID = IIF(@isFelevi = 0,1519,1520) AND te.TOROLT = 'F' AND te.C_TANEVID = extanulo.C_TANEVID
|
||||
AND NOT EXISTS(SELECT 1 FROM T_CSOPORT_OSSZES WHERE ID = te.C_OSZTALYCSOPORTID AND C_TIPUSA IN (SELECT CsoptipID FROM @MuvCsoportTip) AND TOROLT='F')
|
||||
)
|
||||
FROM @FHhozTartozoTanulok fht
|
||||
INNER JOIN T_FELHASZNALO tanulo ON tanulo.ID = fht.TanuloId
|
||||
INNER JOIN T_FELHASZNALO_OSSZES extanulo ON tanulo.C_OKTATASIAZONOSITO = extanulo.C_OKTATASIAZONOSITO
|
||||
AND extanulo.C_TANEVID = IIF(@isFelevi = 0,@tanevId,@ElozoTanevId) AND extanulo.TOROLT = 'F'
|
||||
WHERE (
|
||||
(@isFelevi = 1 AND tanulo.ID <> extanulo.ID)
|
||||
OR
|
||||
(@isFelevi = 0 AND tanulo.ID = extanulo.ID)
|
||||
)
|
||||
|
||||
|
||||
INSERT INTO @RontottTanulok (TanuloId)
|
||||
SELECT DISTINCT
|
||||
fht.TanuloId
|
||||
FROM @FHhozTartozoTanulok fht
|
||||
INNER JOIN @TanuloAtlagok ta ON ta.TanuloId = fht.TanuloId
|
||||
WHERE (ta.AktualisAtlag+1.1) <= ta.KorabbiAtlag
|
||||
|
||||
INSERT INTO @retTable (TanuloId, Evfolyam, Neme, TanuloNev, OktatasiAzonosito, TanuloOsztalyNev, TanuloOsztalyId, IsKozepesMiatt, IsRontasMiatt)
|
||||
SELECT
|
||||
fht.TanuloId
|
||||
,fht.Evfolyam
|
||||
,fht.Neme
|
||||
,fht.TanuloNev
|
||||
,fht.OktatasiAzonosito
|
||||
,fht.TanuloOsztalyNev
|
||||
,fht.TanuloOsztalyId
|
||||
,IIF(kozepes.TanuloId IS NULL, 0, 1)
|
||||
,IIF(rontott.TanuloId IS NULL, 0, 1)
|
||||
FROM @FHhozTartozoTanulok fht
|
||||
LEFT JOIN @KozepesAlattiTanulok kozepes ON kozepes.TanuloId = fht.TanuloId
|
||||
LEFT JOIN @RontottTanulok rontott ON rontott.TanuloId = fht.TanuloId
|
||||
WHERE (kozepes.TanuloId IS NOT NULL OR rontott.TanuloId IS NOT NULL)
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
@@ -0,0 +1,348 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
DROP PROCEDURE IF EXISTS sp_GetErtesitesAltEsMulAdatok
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_GetErtesitesAltEsMulAdatok
|
||||
@pOsztalyId INT,
|
||||
@pTanevId INT,
|
||||
@pTankoteles BIT,
|
||||
@pIskolaErdekuSzamit BIT,
|
||||
@pIsSzulonek BIT = 1,
|
||||
@pIgazolatlanOrakSzama INT
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
--Mulasztasok
|
||||
DECLARE @Mulasztasok TABLE (
|
||||
TanuloId INT
|
||||
,TanuloCsoportId INT
|
||||
,Igazolt INT
|
||||
,Igazolatlan INT
|
||||
,ElmeletIgazolt INT
|
||||
,ElmeletIgazolatlan INT
|
||||
,GyakorlatIgazolt INT
|
||||
,GyakorlatIgazolatlan INT
|
||||
,ElmeletOsszes INT
|
||||
,GyakorlatOsszes INT
|
||||
,Osszes INT
|
||||
)
|
||||
|
||||
INSERT INTO @Mulasztasok
|
||||
EXEC sp_GetDokumentumMulasztasok
|
||||
@osztalyID = @pOsztalyId,
|
||||
@tanevId = @pTanevId,
|
||||
@elmeletiOraPercben = 45,
|
||||
@gyakorlatiOraPercben = 45,
|
||||
@ertekelesTipus = 1520, --évvégi
|
||||
@iskolaErdekuSzamit = @pIskolaErdekuSzamit
|
||||
|
||||
SELECT
|
||||
TanuloId Id
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,ISNULL(KilepesDatum, GETDATE()) KilepesDatum
|
||||
INTO #students
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T')
|
||||
|
||||
DECLARE @Gondviselok TABLE (TanuloId INT, GondviseloId INT, RokonsagiFokId INT, GondviseloNev NVARCHAR(MAX))
|
||||
INSERT INTO @Gondviselok
|
||||
SELECT
|
||||
TanuloId
|
||||
,GondviseloId
|
||||
,RokonsagifokId
|
||||
,GondviseloNev
|
||||
FROM fnGetDokumentumGondviselok (@pOsztalyId, @pTanevId, 'F', 'T')
|
||||
|
||||
DECLARE @TanuloCimTable TABLE (FelhasznaloId INT, Cim NVARCHAR(MAX), Cimtipusa INT)
|
||||
INSERT INTO @TanuloCimTable
|
||||
SELECT DISTINCT
|
||||
TanuloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.Cim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim (0, @pTanevId, @pOsztalyId) btemp
|
||||
WHERE
|
||||
temp.TanuloId = btemp.TanuloId
|
||||
AND temp.CimTipusa = btemp.CimTipusa
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'')
|
||||
,temp.CimTipusa
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim (0, @pTanevId, @pOsztalyId) temp
|
||||
|
||||
DECLARE @GondViseloCimTable TABLE (GondviseloId INT, Cim NVARCHAR(MAX), Cimtipusa INT)
|
||||
INSERT INTO @GondViseloCimTable
|
||||
SELECT DISTINCT
|
||||
GondviseloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.Cim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim (1, @pTanevId, @pOsztalyId) btemp
|
||||
WHERE
|
||||
temp.GondviseloId = btemp.GondviseloId
|
||||
AND temp.CimTipusa = btemp.CimTipusa
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'')
|
||||
,temp.CimTipusa
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim (1, @pTanevId, @pOsztalyId) temp
|
||||
|
||||
|
||||
DECLARE @EmailCimTableTemp TABLE (FelhasznaloId INT, EmailCim NVARCHAR(MAX), GondviseloId INT)
|
||||
INSERT INTO @EmailCimTableTemp
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_EMAILCIM
|
||||
,C_GONDVISELOID
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') tanulo
|
||||
INNER JOIN T_EMAIL_OSSZES email ON email.C_FELHASZNALOID = TanuloId
|
||||
WHERE
|
||||
email.TOROLT = 'F'
|
||||
AND email.C_TANEVID = @pTanevId
|
||||
AND LEN(C_EMAILCIM) > 0
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_EMAILCIM
|
||||
,GondviseloId
|
||||
FROM @Gondviselok
|
||||
INNER JOIN T_EMAIL_OSSZES email ON email.C_GONDVISELOID = GondviseloId
|
||||
WHERE
|
||||
email.TOROLT = 'F'
|
||||
AND email.C_TANEVID = @pTanevId
|
||||
AND LEN(C_EMAILCIM) > 0
|
||||
|
||||
DECLARE @EmailCimTanuloTable TABLE (FelhasznaloId INT, EmailCim NVARCHAR(MAX))
|
||||
INSERT INTO @EmailCimTanuloTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.EmailCim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM @EmailCimTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
AND btemp.GondviseloId IS NULL
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Email
|
||||
FROM @EmailCimTableTemp temp
|
||||
WHERE
|
||||
GondviseloId IS NULL
|
||||
|
||||
DECLARE @EmailCimGondviseloTable TABLE (FelhasznaloId INT, GondviseloId INT, EmailCim NVARCHAR(MAX))
|
||||
INSERT INTO @EmailCimGondviseloTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,GondviseloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.EmailCim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM @EmailCimTableTemp btemp
|
||||
WHERE
|
||||
temp.GondviseloId = btemp.GondviseloId
|
||||
AND btemp.GondviseloId IS NOT NULL
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Email
|
||||
FROM @EmailCimTableTemp temp
|
||||
WHERE
|
||||
GondviseloId IS NOT NULL
|
||||
|
||||
DECLARE @TelefonTableTemp TABLE (FelhasznaloId INT, Telefon NVARCHAR(MAX), GondviseloId INT)
|
||||
INSERT INTO @TelefonTableTemp
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_TELEFONSZAM
|
||||
,C_GONDVISELOID
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') tanulo
|
||||
INNER JOIN T_TELEFON_OSSZES telefon ON telefon.C_FELHASZNALOID = TanuloId
|
||||
WHERE
|
||||
telefon.TOROLT = 'F'
|
||||
AND telefon.C_TANEVID = @pTanevId
|
||||
AND LEN(telefon.C_TELEFONSZAM) > 0
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_TELEFONSZAM
|
||||
,GondviseloId
|
||||
FROM @Gondviselok gondviselo
|
||||
INNER JOIN T_TELEFON_OSSZES telefon ON telefon.C_GONDVISELOID = GondviseloId
|
||||
WHERE
|
||||
telefon.TOROLT = 'F'
|
||||
AND telefon.C_TANEVID = @pTanevId
|
||||
AND LEN(telefon.C_TELEFONSZAM) > 0
|
||||
|
||||
DECLARE @TanuloTelefonTable TABLE (FelhasznaloId INT, Telefon NVARCHAR(MAX))
|
||||
INSERT INTO @TanuloTelefonTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.Telefon AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM @TelefonTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
AND GondviseloId IS NULL
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'')
|
||||
FROM @TelefonTableTemp temp
|
||||
WHERE
|
||||
GondviseloId IS NULL
|
||||
|
||||
DECLARE @GondviseloTelefonTable TABLE (FelhasznaloID INT, GondviseloId INT, Telefon NVARCHAR(MAX))
|
||||
INSERT INTO @GondviseloTelefonTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,GondviseloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.Telefon AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM @TelefonTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
and temp.GondviseloId = btemp.GondviseloId
|
||||
AND GondviseloId IS NOT NULL
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'')
|
||||
FROM @TelefonTableTemp temp
|
||||
WHERE
|
||||
GondviseloId IS NOT NULL
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,Gondviselok.GondviseloId
|
||||
,Gondviselok.GondviseloNev GondviseloNev
|
||||
,Cim GondviseloAllandoCim
|
||||
,Telefon GondviseloTelefon
|
||||
,RokonsagiFok.C_NAME GondviseloRokonsagiFoka
|
||||
INTO #GondviseloAdatok
|
||||
FROM @Gondviselok Gondviselok
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES RokonsagiFok ON RokonsagiFok.Id = Gondviselok.RokonsagiFokId AND RokonsagiFok.C_TANEVID = @pTanevId
|
||||
LEFT JOIN @GondViseloCimTable GondviseloCim ON GondviseloCim.GondviseloId = Gondviselok.GondviseloId
|
||||
LEFT JOIN @GondviseloTelefonTable GondviseloTelefon ON GondviseloTelefon.GondviseloId = Gondviselok.GondviseloId
|
||||
ORDER BY TanuloId
|
||||
|
||||
--Tanulói adatok
|
||||
SELECT
|
||||
TanuloAdatok.ID AS TanuloId
|
||||
,OsztalyTanuloi.TanuloCsoportId
|
||||
,TanuloAdatok.C_NYOMTATASINEV TANULONEV
|
||||
,TanuloAdatok.C_ANYJANEVE ANYJANEVE
|
||||
,TanuloAdatok.C_SZULETESIHELY SZULETESIHELY
|
||||
,TanuloAdatok.C_SZULETESIDATUM SZULETESIDATUM
|
||||
,TanuloAdatok.C_NYILVANTARTASISZAM TorzslapSzam
|
||||
,IntezmenyAdatok.C_IGAZGATONEVE INT_IGAZGATO_NEV
|
||||
,IntezmenyAdatok.C_NEV INT_NEV
|
||||
,IntezmenyAdatok.C_OMKOD INT_OMKOD
|
||||
,IntezmenyAdatok.C_VAROS INT_VAROS
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@pTanevId) INT_CIM
|
||||
,(SELECT C_NEV FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId) OSZTALYCSOPORT_NEV
|
||||
,Osztalyfonok.C_NYOMTATASINEV OSZTFO_NEV
|
||||
,ISNULL(Mulasztas.Igazolt,0) IGAZOLT
|
||||
,ISNULL(Mulasztas.Igazolatlan,0) IGAZOLATLAN
|
||||
,TanuloAllandoCimTable.CIM TanuloAllandoCim
|
||||
,TanuloTartozkodasiCimTable.Cim TanuloTartozkodasiCim
|
||||
,TanuloAdatok.C_OKTATASIAZONOSITO AS TanuloOktAzon
|
||||
INTO #tanuloiAdatok
|
||||
FROM #students OsztalyTanuloi
|
||||
INNER JOIN T_FELHASZNALO_OSSZES TanuloAdatok ON TanuloAdatok.ID = OsztalyTanuloi.ID AND TanuloAdatok.TOROLT = 'F'
|
||||
INNER JOIN T_TANULO_OSSZES Tanulo ON Tanulo.ID = TanuloAdatok.ID AND Tanulo.TOROLT = 'F'
|
||||
INNER JOIN T_INTEZMENYADATOK_OSSZES IntezmenyAdatok ON IntezmenyAdatok.C_TANEVID = TanuloAdatok.C_TANEVID
|
||||
AND IntezmenyAdatok.TOROLT = 'F'
|
||||
INNER JOIN T_TANULOTANUGYIADATOK AS TanugyiAdatok ON TanugyiAdatok.C_TANULOCSOPORTID = OsztalyTanuloi.TanuloCsoportId
|
||||
LEFT JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = @pOsztalyId AND Osztaly.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES Osztalyfonok ON Osztalyfonok.ID = Osztaly.C_OSZTALYFONOKID AND Osztalyfonok.TOROLT = 'F'
|
||||
LEFT JOIN @Mulasztasok Mulasztas ON Mulasztas.TanuloId = TanuloAdatok.ID AND Mulasztas.TanuloCsoportId = OsztalyTanuloi.TanuloCsoportId
|
||||
LEFT JOIN @TanuloCimTable TanuloAllandoCimTable ON TanuloAllandoCimTable.FelhasznaloId = OsztalyTanuloi.ID AND TanuloAllandoCimTable.Cimtipusa = 907
|
||||
LEFT JOIN @TanuloCimTable TanuloTartozkodasiCimTable ON TanuloTartozkodasiCimTable.FelhasznaloId = OsztalyTanuloi.ID AND TanuloTartozkodasiCimTable.Cimtipusa = 909
|
||||
WHERE
|
||||
TanugyiAdatok.C_TANKOTELEZETT = IIF(@pTankoteles = 0, 'F', 'T')
|
||||
ORDER BY TanuloAdatok.C_NYOMTATASINEV
|
||||
|
||||
IF @pIsSzulonek = 1 BEGIN
|
||||
SELECT DISTINCT
|
||||
ta.*
|
||||
,GondviseloAdatok.GondviseloNev
|
||||
,GondviseloAdatok.GondviseloAllandoCim
|
||||
,GondviseloAdatok.GondviseloTelefon
|
||||
,GondviseloRokonsagiFoka
|
||||
FROM #tanuloiAdatok AS ta
|
||||
LEFT JOIN #GondviseloAdatok GondviseloAdatok ON GondviseloAdatok.TanuloId = ta.TanuloId
|
||||
WHERE
|
||||
ta.IGAZOLATLAN >= @pIgazolatlanOrakSzama
|
||||
ORDER BY TANULONEV
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT DISTINCT
|
||||
ta.*
|
||||
FROM #tanuloiAdatok AS ta
|
||||
WHERE
|
||||
ta.Igazolatlan >= @pIgazolatlanOrakSzama
|
||||
ORDER BY TANULONEV
|
||||
END
|
||||
|
||||
--Mulasztások részletezése
|
||||
SELECT
|
||||
Mulasztasok.TanuloId
|
||||
,Mulasztasok.TanuloCsoportId
|
||||
,Mulasztasok.OsztalyCsoportId
|
||||
,Mulasztasok.OsztalyCsoportNev
|
||||
,MulasztasTipus.C_NAME Tipusa
|
||||
,Mulasztasok.Igazolt
|
||||
,Mulasztasok.IgazolasTipusa
|
||||
,Mulasztasok.KesesPercben
|
||||
,Mulasztasok.Datum
|
||||
,Mulasztasok.Oraszam
|
||||
,Mulasztasok.TantargyId
|
||||
,Mulasztasok.TantargyNev
|
||||
FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes(@pTanevId, @pOsztalyId, @pIskolaErdekuSzamit, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT) Mulasztasok
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES MulasztasTipus ON MulasztasTipus.Id = Mulasztasok.Tipusa AND MulasztasTipus.C_TANEVID = @pTanevId
|
||||
INNER JOIN #tanuloiAdatok AS ta ON ta.TanuloId = Mulasztasok.TanuloId AND ta.IGAZOLATLAN >= @pIgazolatlanOrakSzama
|
||||
WHERE
|
||||
Mulasztasok.Igazolt = 'F'
|
||||
|
||||
--Gondviselo adatok
|
||||
SELECT * from #GondviseloAdatok AS Gondviselok
|
||||
LEFT JOIN @Mulasztasok Mulasztasok ON Mulasztasok.TanuloId = Gondviselok.TanuloId
|
||||
INNER JOIN #tanuloiAdatok AS ta ON ta.TanuloId = Mulasztasok.TanuloId AND ta.IGAZOLATLAN >= @pIgazolatlanOrakSzama
|
||||
|
||||
--Iktatási adatok
|
||||
DECLARE @IktatasAdatok TABLE (OsztalyId INT, Evfolyam INT, FeladatEllatasiHelyId INT, KepzesiForma INT, OsztalyFonokId INT,
|
||||
TantervId INT, SzakmaCsoport INT, Agazat INT, Szakkepesites INT, Reszszakkepesites INT,
|
||||
OJCSJKeresztfeleves CHAR, OJTechnikaiOsztaly CHAR, OJNemzetisegi CHAR, OJKettannyelvu CHAR, OJNyelviElokeszito CHAR,
|
||||
OJLogopediai CHAR, OJSportOsztaly CHAR, OJAranyJanosProgram CHAR, OJGyogypedagogiai CHAR)
|
||||
INSERT INTO @IktatasAdatok
|
||||
SELECT
|
||||
@pOsztalyId,
|
||||
ocs.C_EVFOLYAMTIPUSA,
|
||||
ocs.C_FELADATELLATASIHELYID,
|
||||
ocs.C_KEPZESIFORMA,
|
||||
o.C_OSZTALYFONOKID,
|
||||
o.C_TANTERVID,
|
||||
o.C_SZAKMACSOPORT,
|
||||
o.C_AGAZAT,
|
||||
o.C_SZAKKEPESITES,
|
||||
o.C_RESZSZAKKEPESITES,
|
||||
ocs.C_KERESZTFELEVES,
|
||||
o.C_TECHNIKAIOSZTALY,
|
||||
o.C_NEMZETISEGI,
|
||||
o.C_KETTANNYELVU,
|
||||
o.C_NYELVIELOKESZITO,
|
||||
o.C_LOGOPEDIAI,
|
||||
o.C_SPORT,
|
||||
o.C_AJPROGRAM,
|
||||
o.C_GYOGYPEDAGOGIAI
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY o ON o.ID = ocs.ID
|
||||
WHERE ocs.ID = @pOsztalyId AND ocs.TOROLT = 'F'
|
||||
AND ocs.C_TANEVID = @pTanevId;
|
||||
|
||||
SELECT * from @IktatasAdatok;
|
||||
|
||||
DROP TABLE #GondviseloAdatok
|
||||
DROP TABLE #tanuloiAdatok
|
||||
DROP TABLE #students
|
||||
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,231 @@
|
||||
DROP PROCEDURE IF EXISTS [dbo].[sp_GetHaladasiNaploAdatok]
|
||||
GO
|
||||
CREATE PROCEDURE [dbo].[sp_GetHaladasiNaploAdatok]
|
||||
@tanevID int,
|
||||
@osztalyID int = null,
|
||||
@tanarID int = null,
|
||||
@feladatKategoriaId int = null
|
||||
AS
|
||||
BEGIN
|
||||
DECLARE @cTantargyId INT = 0
|
||||
DECLARE @cOsztalyCsoportId INT = 0
|
||||
DECLARE @cTanarId INT = 0
|
||||
DECLARE @foglalkozasNev VARCHAR(255)
|
||||
|
||||
SET NOCOUNT ON;
|
||||
SELECT DISTINCT
|
||||
ocs.C_NEV + ' - ' + tt.C_NEV AS Nev
|
||||
,tn.C_TANTARGYID
|
||||
,tn.C_OSZTALYCSOPORTID
|
||||
,tn.C_INTEZMENYID
|
||||
,tn.C_TANARID AS C_TANARID
|
||||
,IIF(f.ID IS NULL,'F','T') AS VanTTF
|
||||
INTO #Foglalkozasok
|
||||
FROM T_TANITASIORA_OSSZES tn
|
||||
LEFT JOIN T_FOGLALKOZAS_OSSZES f ON f.C_TANTARGYID = tn.C_TANTARGYID AND f.C_OSZTALYCSOPORTID = tn.C_OSZTALYCSOPORTID AND f.C_TANARID = tn.C_TANARID AND f.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES OCS on OCS.ID = tn.C_OSZTALYCSOPORTID and OCS.TOROLT = 'F' AND (OCS.C_FELADATKATEGORIAID = @feladatKategoriaId OR @feladatKategoriaId IS NULL)
|
||||
LEFT JOIN T_CSOPORTOK_OSZTALYOK cso on cso.C_CSOPORTOKID = ocs.ID
|
||||
INNER JOIN T_TANTARGY_OSSZES tt on tt.ID = tn.C_TANTARGYID and tt.TOROLT = 'F'
|
||||
WHERE tn.TOROLT = 'F'
|
||||
AND tn.C_TANEVID = @tanevID
|
||||
AND (
|
||||
((@osztalyID IS NOT NULL) AND (ocs.ID = @osztalyID OR cso.C_OSZTALYOKID = @osztalyID))
|
||||
OR
|
||||
((@tanarID IS NOT NULL) AND tn.C_TANARID = @tanarID)
|
||||
)
|
||||
ORDER BY VanTTF DESC, Nev ASC
|
||||
SELECT
|
||||
IIF(fog.VanTTF = 'F','Egyedi-','')+Nev+' - '+felh.C_NYOMTATASINEV Nev,
|
||||
fog.VanTTF
|
||||
FROM #Foglalkozasok fog
|
||||
INNER JOIN T_FELHASZNALO_OSSZES felh on fog.C_TANARID=felh.ID
|
||||
ORDER BY fog.VanTTF DESC, Nev ASC
|
||||
|
||||
DECLARE @sorszamTable TABLE (
|
||||
tanitasiOraId int-- PRIMARY KEY
|
||||
,evesOraszam int
|
||||
,foglalkozasId int
|
||||
)
|
||||
|
||||
INSERT INTO @sorszamTable (tanitasiOraId, evesOraszam)
|
||||
SELECT s.Id, s.EvesSorszam FROM #Foglalkozasok f
|
||||
CROSS APPLY dbo.fnGetEvesOraszamLista(
|
||||
f.C_TANTARGYID
|
||||
,f.C_OSZTALYCSOPORTID
|
||||
,f.C_TANARID
|
||||
,GETDATE()
|
||||
,f.C_INTEZMENYID
|
||||
,@tanevID
|
||||
) s
|
||||
|
||||
|
||||
DECLARE foglalkozasCursor CURSOR FOR
|
||||
SELECT C_TANTARGYID, C_OSZTALYCSOPORTID, C_TANARID FROM #Foglalkozasok ORDER BY VanTTF DESC, Nev ASC
|
||||
|
||||
OPEN foglalkozasCursor
|
||||
FETCH NEXT FROM foglalkozasCursor into @cTantargyId, @cOsztalyCsoportId, @cTanarId
|
||||
|
||||
WHILE @@FETCH_STATUS = 0 BEGIN
|
||||
SELECT DISTINCT
|
||||
CASE
|
||||
WHEN tn.C_MEGTARTOTT = 'T' THEN s.evesOraszam -- tn.C_ORAEVESSORSZAM
|
||||
ELSE '-'
|
||||
END AS OraSorszam
|
||||
,fh.C_NYOMTATASINEV TanarNev
|
||||
,fh.C_OKTATASIAZONOSITO TanarOktAzon
|
||||
,tn.C_TEMA Tema
|
||||
,CASE
|
||||
WHEN tn.C_HELYETTESITOTANARID IS NULL THEN ''
|
||||
ELSE 'H'
|
||||
END AS Helyettesites
|
||||
,FORMAT(tn.C_DATUM, 'yyyy.MM.dd.') Datum
|
||||
,tn.C_ORASZAM OraSzam
|
||||
,tn.C_MEGJEGYZES Megjegyzes
|
||||
,ISNULL(tn.C_HAZIFELADAT,hf.C_FELADATSZOVEGE) HaziFeladat
|
||||
,tn.C_TULORA TulOra
|
||||
,tn.C_TAMOPORA TamopOra
|
||||
,tn.C_NEMSZAKRENDSZERUORA NemszakrendszeruOra
|
||||
,tn.C_IKTTANORA IktOra
|
||||
,tn.C_NEMZETISEGIORA NemzetisegiOra
|
||||
,tn.C_MINDENNAPOSTESTNEVELES TestnevelesOra
|
||||
,tn.C_IPRTANORA IprOra
|
||||
,tn.C_DIFFERENCIALT DifferencialtOra
|
||||
,tn.C_KOOPERATIV KooperativOra
|
||||
,tn.C_MERES MeresOra
|
||||
,tn.C_DRAMA DramaOra
|
||||
,tn.C_PARHUZAMOSORA ParhuzamosOra
|
||||
,tn.C_TIOP12 TiopOra
|
||||
,tn.C_KIPORA KIPOra
|
||||
,tn.C_VEKOP73317 VEKOP73317
|
||||
,tn.C_KAPORA KAPOra
|
||||
,tn.C_BONTOTT Bontott
|
||||
,tn.C_MULTIKULTURALISORA Multikulturalis
|
||||
,tn.C_EFOP32317 EFOP32317
|
||||
,tn.C_KOMPLEXORA Komplexora
|
||||
,tn.C_GINOP623 GINOP623
|
||||
,tn.C_EFOP31716 EFOP31716
|
||||
,tn.C_EFOP33717 EFOP33717
|
||||
,tn.C_TIOP1111212012001 TIOP1111212012001
|
||||
FROM T_TANITASIORA_OSSZES tn
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = tn.C_TANARID
|
||||
LEFT JOIN @sorszamTable s ON s.tanitasiOraId = tn.ID
|
||||
LEFT JOIN T_HAZIFELADATOK hf ON hf.C_TANITASIORAID = tn.ID
|
||||
WHERE tn.TOROLT = 'F'
|
||||
AND tn.C_TANEVID = @tanevID
|
||||
AND tn.C_TANARID = @cTanarId
|
||||
AND tn.C_TANTARGYID = @cTantargyId
|
||||
AND tn.C_OSZTALYCSOPORTID = @cOsztalyCsoportId
|
||||
ORDER BY FORMAT(tn.C_DATUM, 'yyyy.MM.dd.')
|
||||
|
||||
FETCH NEXT FROM foglalkozasCursor
|
||||
INTO @cTantargyId, @cOsztalyCsoportId, @cTanarId
|
||||
END
|
||||
|
||||
CLOSE foglalkozasCursor
|
||||
DEALLOCATE foglalkozasCursor
|
||||
|
||||
IF (SELECT COUNT(Nev) FROM #Foglalkozasok) = 0 BEGIN
|
||||
DECLARE @nincsAdat TABLE (
|
||||
OraSorszam int,
|
||||
TanarNev nvarchar(1),
|
||||
TanarOktAzon nvarchar(1),
|
||||
Tema nvarchar(1),
|
||||
Helyettesites int,
|
||||
Datum datetime,
|
||||
OraSzam int,
|
||||
Megjegyzes nvarchar(1),
|
||||
HaziFeladat nvarchar(1),
|
||||
TulOra char,
|
||||
TamopOra char,
|
||||
NemszakrendszeruOra char,
|
||||
IktOra char,
|
||||
NemzetisegiOra char,
|
||||
TestnevelesOra char,
|
||||
IprOra char,
|
||||
DifferencialtOra char,
|
||||
KooperativOra char,
|
||||
MeresOra char,
|
||||
DramaOra char,
|
||||
ParhuzamosOra char,
|
||||
TiopOra char,
|
||||
KIPOra char,
|
||||
VEKOP73317 char,
|
||||
KAPOra char
|
||||
,Bontott char
|
||||
,Multikulturalis char
|
||||
,EFOP32317 char
|
||||
,Komplexora char
|
||||
,GINOP623 char
|
||||
,EFOP31716 char
|
||||
,EFOP33717 char
|
||||
,TIOP1111212012001 char
|
||||
)
|
||||
SELECT * FROM @nincsAdat;
|
||||
END
|
||||
|
||||
-- Iktatás adatok
|
||||
IF @tanarID IS NOT NULL BEGIN
|
||||
SELECT f.ID AS PedagogusId
|
||||
,f.C_OKTATASIAZONOSITO AS PedagogusOktAzon
|
||||
,mua.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
FROM T_FELHASZNALO_OSSZES AS f
|
||||
LEFT JOIN T_MUNKAUGYIADATOK_OSSZES AS mua ON mua.C_ALKALMAZOTTID = f.ID
|
||||
WHERE f.ID = @tanarID
|
||||
AND f.C_TANEVID = @tanevID
|
||||
END
|
||||
IF @osztalyID IS NOT NULL BEGIN
|
||||
DECLARE @isCsoport INT = (SELECT COUNT(ID) FROM T_CSOPORT_OSSZES WHERE ID = @osztalyID)
|
||||
IF @isCsoport = 0 BEGIN
|
||||
SELECT
|
||||
ocs.ID AS OsztalyId
|
||||
,o.C_OSZTALYFONOKID AS OsztalyfonokId
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID TantervId
|
||||
,ocs.C_KEPZESIFORMA KepzesiForma
|
||||
,o.C_AGAZAT Agazat
|
||||
,o.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
FROM T_OSZTALYCSOPORT_OSSZES AS ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES AS o ON ocs.id = o.ID
|
||||
WHERE ocs.TOROLT='F'
|
||||
AND ocs.ID = @osztalyId
|
||||
AND ocs.C_TANEVID = @tanevId
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT
|
||||
ocs.ID AS CsoportId
|
||||
,cs.C_CSOPORTVEZETOID AS CsoportvezetoId
|
||||
,cs.C_TIPUSA AS CsoportTipusa
|
||||
,ISNULL(ocs.C_EVFOLYAMTIPUSA, 1296) AS EvfolyamTipusa -- 1296 = Na
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
FROM T_OSZTALYCSOPORT_OSSZES AS ocs
|
||||
INNER JOIN T_CSOPORT_OSSZES AS cs ON cs.ID = ocs.ID
|
||||
WHERE ocs.TOROLT = 'F'
|
||||
AND ocs.ID = @osztalyID
|
||||
AND ocs.C_TANEVID = @tanevID
|
||||
END
|
||||
SELECT DISTINCT
|
||||
felh.ID AS TanarId
|
||||
,felh.C_OKTATASIAZONOSITO AS TanarOktAzon
|
||||
FROM #Foglalkozasok AS fogl
|
||||
INNER JOIN T_FELHASZNALO_OSSZES felh ON felh.ID = fogl.C_TANARID
|
||||
END
|
||||
|
||||
DROP TABLE #Foglalkozasok
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,85 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GetOsztalyTanuloinakHaviMulasztasaiOsszesitoje]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GetOsztalyTanuloinakHaviMulasztasaiOsszesitoje]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GetOsztalyTanuloinakHaviMulasztasaiOsszesitoje]
|
||||
@pTanevId INT,
|
||||
@pIntezmenyId INT,
|
||||
@pOsztalyId INT,
|
||||
@pElmeletgyakorlat BIT = 0,
|
||||
@pMulasztandoOrakszamaTeljesNaposMulasztashoz INT = 3
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @honapok TABLE(honap INT, honapnev NVARCHAR(max));
|
||||
|
||||
INSERT INTO @honapok
|
||||
SELECT DISTINCT (3 + d.c_value) % 12 + 1 AS c_value, d.c_name as Honap
|
||||
FROM T_DICTIONARYITEMBASE_OSSZES d
|
||||
WHERE c_type LIKE 'honap%'
|
||||
ORDER BY c_value;
|
||||
|
||||
SELECT honapnev FROM @honapok;
|
||||
|
||||
DECLARE honap_cursor CURSOR FOR
|
||||
SELECT DISTINCT (3 + d.c_value) % 12 + 1 AS honap_sorrend, d.c_value AS honap
|
||||
FROM T_DICTIONARYITEMBASE_OSSZES d
|
||||
WHERE c_type LIKE 'honap%'
|
||||
ORDER BY honap_sorrend;
|
||||
|
||||
DECLARE @honap_sorrend INT, @honap INT;
|
||||
OPEN honap_cursor
|
||||
FETCH NEXT FROM honap_cursor
|
||||
INTO @honap_sorrend, @honap;
|
||||
WHILE @@FETCH_STATUS = 0
|
||||
BEGIN
|
||||
EXEC [sp_GetOsztalyTanuloinakHaviMulasztasaiOsszesitoje_honapra] @pTanevId, @pIntezmenyId, @pOsztalyId, @honap, @pElmeletgyakorlat, @pMulasztandoOrakszamaTeljesNaposMulasztashoz
|
||||
FETCH NEXT FROM honap_cursor
|
||||
INTO @honap_sorrend, @honap
|
||||
END
|
||||
CLOSE honap_cursor
|
||||
DEALLOCATE honap_cursor
|
||||
|
||||
SELECT
|
||||
ocs.ID AS OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,o.C_OSZTALYFONOKID AS OsztalyfonokId
|
||||
,o.C_TANTERVID AS TantervId
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,o.C_AGAZAT AS Agazat
|
||||
,o.C_SZAKMACSOPORT AS SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID
|
||||
WHERE ocs.ID = @pOsztalyId
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
AND ocs.C_INTEZMENYID = @pIntezmenyId
|
||||
AND ocs.TOROLT = 'F'
|
||||
END
|
||||
|
||||
SELECT
|
||||
tanuloID AS TanuloId
|
||||
,tanuloNeve AS TanuloNeve
|
||||
,oktAzon AS OktAzon
|
||||
FROM fnGetDokumentumTanuloiAlapadatok(@pOsztalyId, @pTanevId, 'T')
|
||||
|
||||
GO
|
@@ -0,0 +1,249 @@
|
||||
DROP PROCEDURE IF EXISTS sp_GetTanuloiAdatlapAdatok
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GetTanuloiAdatlapAdatok]
|
||||
@osztCsopID INT,
|
||||
@TanevId INT
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
CREATE TABLE #JogviszonyVege (TanuloId int,Datum date)
|
||||
INSERT INTO #JogviszonyVege
|
||||
SELECT
|
||||
TanuloId
|
||||
,MAX(C_KILEPESDATUM)
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztCsopID, 'T') Tanulok
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON TanuloCsoport.C_TANULOID = Tanulok.TanuloId AND TanuloCsoport.TOROLT = 'F' AND TanuloCsoport.C_TANEVID = @TanevId
|
||||
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = TanuloCsoport.C_OSZTALYCSOPORTID AND Osztaly.TOROLT = 'F' AND C_ALTANEVID = @TanevId
|
||||
GROUP BY TanuloId
|
||||
|
||||
DECLARE @DefaultFeladatKategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztCsopID)
|
||||
--Fejléc
|
||||
SELECT
|
||||
T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve,
|
||||
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
|
||||
dbo.fnGetDokumentumIntezmenyCime(@tanevId) IntezmenyCime,
|
||||
T_INTEZMENYADATOK_OSSZES.C_OMKOD OMKod,
|
||||
T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON,
|
||||
T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM,
|
||||
T_TANEV_OSSZES.C_NEV TANEV,
|
||||
o.C_OSZTALYFONOKID PartnerID,
|
||||
f.C_NYOMTATASINEV OSZTALYFONOK,
|
||||
ocs.C_NEV OSZTALYNEV
|
||||
,@osztCsopID OsztalyId
|
||||
FROM T_INTEZMENYADATOK_OSSZES
|
||||
INNER JOIN T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID and T_TANEV_OSSZES.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = @osztCsopID AND ocs.TOROLT = 'F' AND ocs.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
LEFT JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID AND o.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = o.C_OSZTALYFONOKID AND f.TOROLT = 'F'
|
||||
WHERE
|
||||
T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
|
||||
AND T_INTEZMENYADATOK_OSSZES.C_TANEVID = @TanevId
|
||||
|
||||
CREATE TABLE #EmailCimTableTemp (FelhasznaloId INT, EmailCim NVARCHAR(MAX))
|
||||
INSERT INTO #EmailCimTableTemp
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_EMAILCIM
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztCsopID, 'T') tanulo
|
||||
INNER JOIN T_EMAIL_OSSZES email ON email.C_FELHASZNALOID = TanuloId
|
||||
WHERE
|
||||
email.TOROLT = 'F'
|
||||
AND email.C_TANEVID = @TanevId
|
||||
AND LEN(C_EMAILCIM) > 0
|
||||
|
||||
CREATE TABLE #EmailCimTable (FelhasznaloId INT, EmailCim NVARCHAR(MAX))
|
||||
INSERT INTO #EmailCimTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(Btemp.EmailCim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM #EmailCimTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Email
|
||||
FROM #EmailCimTableTemp temp
|
||||
|
||||
CREATE TABLE #TelefonszamTableTemp (FelhasznaloId INT, Telefonszam NVARCHAR(MAX))
|
||||
INSERT INTO #TelefonszamTableTemp
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_TELEFONSZAM
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztCsopID, 'T') tanulo
|
||||
INNER JOIN T_TELEFON_OSSZES telefon ON telefon.C_FELHASZNALOID = TanuloId
|
||||
WHERE
|
||||
telefon.TOROLT = 'F'
|
||||
AND telefon.C_TANEVID = @TanevId
|
||||
AND LEN(C_TELEFONSZAM) > 0
|
||||
|
||||
CREATE TABLE #TelefonszamTable (FelhasznaloId INT, Telefonszam NVARCHAR(MAX))
|
||||
INSERT INTO #TelefonszamTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(Btemp.Telefonszam AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM #TelefonszamTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Telefonszam
|
||||
FROM #TelefonszamTableTemp temp
|
||||
|
||||
CREATE TABLE #TanuloCimTable (FelhasznaloId INT, Cim NVARCHAR(MAX), Cimtipusa INT)
|
||||
INSERT INTO #TanuloCimTable
|
||||
SELECT DISTINCT
|
||||
TanuloId
|
||||
,STUFF((
|
||||
SELECT CAST(Btemp.Cim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim(0, @tanevId, @osztCsopID) btemp
|
||||
WHERE
|
||||
temp.TanuloId = btemp.TanuloId
|
||||
AND temp.CimTipusa = btemp.CimTipusa
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Cim
|
||||
,temp.CimTipusa
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim(0, @tanevId, @osztCsopID) temp
|
||||
|
||||
CREATE TABLE #GondviselokTableTemp (FelhasznaloId INT, Gondviselo NVARCHAR(MAX))
|
||||
INSERT INTO #GondviselokTableTemp
|
||||
SELECT
|
||||
Gondviselo.TanuloId TanuloId
|
||||
,Gondviselo.GondviseloNev + ISNULL('('+rokonsagiFoka.C_NAME+')', '') Gondviselo
|
||||
FROM fnGetDokumentumGondviselok (@osztCsopID, @tanevId, 'F', 'T') Gondviselo
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES rokonsagiFoka ON Gondviselo.RokonsagifokId = rokonsagiFoka.ID AND rokonsagiFoka.C_TANEVID = @TanevId
|
||||
|
||||
CREATE TABLE #GondviselokTable (FelhasznaloId INT, Gondviselo NVARCHAR(MAX))
|
||||
INSERT INTO #GondviselokTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT ', ' + btemp.Gondviselo
|
||||
FROM #GondviselokTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,2,'') Gondviselo
|
||||
FROM #GondviselokTableTemp temp
|
||||
|
||||
|
||||
--Tanulók Adatai
|
||||
SELECT DISTINCT
|
||||
tta.C_BEIRASINAPLOSORSZAM,
|
||||
tanulok.NaploSorszam NaploSorszam,
|
||||
tanulok.TorzslapSzam TorzslapSzam,
|
||||
T_TANEV_OSSZES.C_NEV TANEV,
|
||||
T_OSZTALYCSOPORT_OSSZES.C_NEV OSZTALYNEV,
|
||||
T_OSZTALYCSOPORT_OSSZES.C_KEPZESIFORMA Kepzesiforma,
|
||||
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV NEV,
|
||||
gondviselo.Gondviselo GONDVISELO,
|
||||
T_FELHASZNALO_OSSZES.C_SZULETESINEV SZULETESINEV,
|
||||
T_FELHASZNALO_OSSZES.C_ANYJANEVE ANYJANEVE,
|
||||
T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO,
|
||||
T_FELHASZNALO_OSSZES.C_SZULETESIHELY,
|
||||
T_FELHASZNALO_OSSZES.C_SZULETESIORSZAG Szuletesiorszag,
|
||||
FORMAT(T_FELHASZNALO_OSSZES.C_SZULETESIDATUM, 'yyyy.MM.dd.') C_SZULETESIDATUM,
|
||||
T_FELHASZNALO_OSSZES.C_ALLAMPOLGARSAGA Allampolgarsag,
|
||||
T_FELHASZNALO_OSSZES.C_ANYANYELVE Anyanyelv,
|
||||
tta.C_NYILVANTARTASKEZDETE,
|
||||
tta.C_TANKOTELEZETT Tankotelezett,
|
||||
tta.C_TANKOTELEZETTSEGVEGE,
|
||||
tta.C_JOGVISZONYVARHATOBEFEJEZESE,
|
||||
T_TANULO_OSSZES.C_DIAKIGAZOLVANYSZAM,
|
||||
T_TANULO_OSSZES.C_DIAKIGAZOLVANYKELTE,
|
||||
T_TANULO_OSSZES.C_BANKSZAMLASZAM,
|
||||
AllandoLakcim.Cim,
|
||||
TartozkodasiHely.CIM TartozkodasiHely,
|
||||
telefon.Telefonszam C_TELEFONSZAM,
|
||||
email.EmailCim C_EMAILCIM,
|
||||
tta.C_BEJARO Bejaro,
|
||||
tta.C_SZAKMAIGYAKORLATON Szakmaigyak,
|
||||
tta.C_VENDEG Vendeg,
|
||||
tta.C_JOGVISZONYATSZUNETELTETO Jogviszonyszunetelteto,
|
||||
tta.C_MAGANTANULO Magantanulo,
|
||||
maganTanuloOk.C_NAME as C_MAGANTANULOSAGANAKOKA,
|
||||
tta.C_MAGANTANULOSAGKEZDETE,
|
||||
T_TANULO_OSSZES.C_SZAKKEPESITESSZAMA,
|
||||
T_TANULO_OSSZES.C_TANULOIJOGVISZONYOSELTARTOTT,
|
||||
T_TANULO_OSSZES.C_TOBBGYERMEKIGAZOLASSZAMA,
|
||||
tta.C_EVISMETLO Evismetlo,
|
||||
T_TANULO_OSSZES.C_SZOCIALISTAMOGATAS Szoctam,
|
||||
T_TANULO_OSSZES.C_HATRANYOSHELYZETU,
|
||||
T_TANULO_OSSZES.C_VESZELYEZTETETT Veszelyeztetett,
|
||||
T_TANULO_OSSZES.C_HALMOZOTTANFOGYATEKOS Halmfogyatekos,
|
||||
T_TANULO_OSSZES.C_ETKEZESIKEDVEZMENY,
|
||||
tta.C_TERITESIDIJATFIZETO Teriteses,
|
||||
tta.C_TANDIJATFIZETO Tandijas,
|
||||
T_TANULO_OSSZES.C_INGYENESTANKONVYELLATASA,
|
||||
tta.C_TANULOSZERZODESES Tanszerzodeses,
|
||||
tta.C_POLGARISZERZODESES Polgszerzodeses,
|
||||
T_TANULO_OSSZES.C_RENDSZERESGYERMEKVEDELMIKEDV,
|
||||
T_TANULO_OSSZES.C_ALLAMIGONDOZOTT Allamigond,
|
||||
T_TANULO_OSSZES.C_KOLLEGIUMIELLATASOS Kollegiumi,
|
||||
T_TANULO_OSSZES.C_TARTOSGYOGYKEZELESSZAMA,
|
||||
T_TANULO_OSSZES.C_SAJATOSNEVELESU Sajatosnevelesu,
|
||||
T_TANULO_OSSZES.C_SNILETSZAMSULY,
|
||||
T_TANULO_OSSZES.C_SNIKIALLITOINTEZMENY,
|
||||
FORMAT(T_TANULO_OSSZES.C_SNIOKMANYERVENYESSEGKEZDETE, 'yyyy.MM.dd.') C_SNIOKMANYERVENYESSEGKEZDETE,
|
||||
T_TANULO_OSSZES.C_BTMPROBLEMAS Btmproblemas,
|
||||
T_TANULO_OSSZES.C_BTMLETSZAMSULY,
|
||||
T_TANULO_OSSZES.C_BTMHATAROZATOKMANYSZAM,
|
||||
FORMAT(T_TANULO_OSSZES.C_BTMOKMANYERVENYESSEGKEZDETE, 'yyyy.MM.dd.') C_BTMOKMANYERVENYESSEGKEZDETE,
|
||||
T_TANULO_OSSZES.C_BTMKIALLITOINTEZMENY,
|
||||
T_TANULO_OSSZES.C_ELSOINTEZMENYOMKOD,
|
||||
T_FELHASZNALO_OSSZES.C_IGAZOLVANYSZAM,
|
||||
igazolvanyTipusa.C_NAME AS IgazolvanyTipusa
|
||||
,T_TANULO_OSSZES.ID AS TanuloId
|
||||
,@osztCsopID AS OsztalyId
|
||||
,JogviszonyVege.Datum JogviszonyVege
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztCsopID, 'T') tanulok ON tanulok.TanuloId = T_FELHASZNALO_OSSZES.Id
|
||||
INNER JOIN T_TANULO_OSSZES on T_TANULO_OSSZES.ID = T_FELHASZNALO_OSSZES.ID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES on T_TANULOCSOPORT_OSSZES.C_TANULOID = T_FELHASZNALO_OSSZES.ID
|
||||
LEFT JOIN T_OSZTALYCSOPORT_OSSZES on T_OSZTALYCSOPORT_OSSZES.ID = T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID AND T_OSZTALYCSOPORT_OSSZES.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
INNER JOIN T_OSZTALY_OSSZES on T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID
|
||||
LEFT JOIN fnGetOsztalyCsoportTanuloinakTanugyiAdatai (@osztCsopID,default) tta ON tta.TanuloId=T_FELHASZNALO_OSSZES.ID
|
||||
LEFT JOIN T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.C_TANEVID
|
||||
LEFT JOIN #TelefonszamTable telefon on telefon.FelhasznaloId = T_FELHASZNALO_OSSZES.ID
|
||||
LEFT JOIN #EmailCimTable email on email.FelhasznaloId = T_FELHASZNALO_OSSZES.ID
|
||||
LEFT JOIN #GondviselokTable gondviselo on gondviselo.FelhasznaloId = T_FELHASZNALO_OSSZES.ID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES igazolvanyTipusa ON T_FELHASZNALO_OSSZES.C_IGAZOLVANYTIPUSA = igazolvanyTipusa.ID AND igazolvanyTipusa.C_TANEVID = @TanevId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES maganTanuloOk ON tta.C_MAGANTANULOSAGANAKOKAID = maganTanuloOk.ID AND maganTanuloOk.C_TANEVID = @TanevId AND maganTanuloOk.TOROLT='F'
|
||||
LEFT JOIN #TanuloCimTable AllandoLakcim ON AllandoLakcim.FelhasznaloId = T_FELHASZNALO_OSSZES.ID AND AllandoLakcim.Cimtipusa = 907
|
||||
LEFT JOIN #TanuloCimTable TartozkodasiHely ON TartozkodasiHely.FelhasznaloId = T_FELHASZNALO_OSSZES.ID AND TartozkodasiHely.Cimtipusa = 909
|
||||
INNER JOIN #JogviszonyVege JogviszonyVege ON JogviszonyVege.TanuloId = tanulok.TanuloId
|
||||
WHERE
|
||||
T_FELHASZNALO_OSSZES.TOROLT = 'F'
|
||||
AND T_TANEV_OSSZES.TOROLT = 'F'
|
||||
AND T_TANULOCSOPORT_OSSZES.TOROLT = 'F'
|
||||
AND T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
|
||||
ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV
|
||||
|
||||
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
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
FROM T_OSZTALY_OSSZES AS o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.TOROLT = 'F'
|
||||
WHERE o.ID = @osztCsopID
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,86 @@
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
|
||||
DROP PROCEDURE IF EXISTS dbo.sp_GetTanulokFeljegyzesekReszletezese
|
||||
GO
|
||||
-- =============================================
|
||||
-- Author: Dőrr Tamás
|
||||
-- Create date: 2015.12.15.
|
||||
-- Description: sp_GetTanulokFeljegyzesekReszletezese
|
||||
-- =============================================
|
||||
CREATE PROCEDURE [dbo].[sp_GetTanulokFeljegyzesekReszletezese]
|
||||
@pOsztalyId INT,
|
||||
@pTanevId INT
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
SELECT DISTINCT
|
||||
@pOsztalyId OsztalyId
|
||||
,ocs.C_NEV OSZTALYCSOPORT_NEV
|
||||
,ofo.C_NYOMTATASINEV OSZTFO_NEV
|
||||
,i.C_IGAZGATONEVE INT_IGAZGATO_NEV
|
||||
,i.C_NEV INT_NEV
|
||||
,i.C_IRANYITOSZAM INT_IRSZAM
|
||||
,i.C_VAROS INT_VAROS
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@pTanevId) INT_CIM
|
||||
,i.C_OMKOD INT_OMKOD
|
||||
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 = @pOsztalyId
|
||||
|
||||
SELECT
|
||||
Datum as KEZDET
|
||||
,d.C_NAME AS C_TIPUS
|
||||
,Tanulok.TanuloId AS TANULO_ID
|
||||
,ft.C_NYOMTATASINEV AS TANULO_NEV
|
||||
,FeljegyzoNeve AS FELJEGYZO_NEV
|
||||
,Tartalom AS TARTALOM
|
||||
,Megjegyzes AS MEGJEGYZES
|
||||
,ft.C_NYOMTATASINEV + ' ' + CAST(Tanulok.TanuloId AS NVARCHAR) AS GROUPPARAMETER
|
||||
,@pOsztalyId OsztalyId
|
||||
,ft.C_OKTATASIAZONOSITO AS TanuloOktAzon
|
||||
,esemenyek.FeljegyzoId AS FeljegyzoId
|
||||
,ff.C_OKTATASIAZONOSITO AS FeljegyzoOktAzon
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') AS Tanulok
|
||||
LEFT JOIN fnGetDokumentumTanulokFeljegyzesei(@pTanevId, @pOsztalyId) esemenyek ON esemenyek.TanuloId = Tanulok.TanuloId AND esemenyek.Tipusa != 1534
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ft ON ft.ID = Tanulok.Tanuloid
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ff ON ff.ID = esemenyek.FeljegyzoId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES d ON d.id = Tipusa AND d.C_TANEVID = ft.C_TANEVID AND d.C_INTEZMENYID = ft.C_INTEZMENYID
|
||||
ORDER BY ft.C_NYOMTATASINEV
|
||||
|
||||
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
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
FROM T_OSZTALY_OSSZES AS o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.TOROLT = 'F'
|
||||
WHERE o.ID = @pOsztalyId
|
||||
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,349 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
DROP PROCEDURE IF EXISTS [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyStatisztika]
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyStatisztika]
|
||||
@pTanevId INT,
|
||||
@pOsztalyId INT,
|
||||
@pIntezmenyId INT,
|
||||
@pErtekelestipusaId INT,
|
||||
@pLezaroNaptipusId INT,
|
||||
@pMulasztasTipusIdKeses INT = 1499,
|
||||
@pMulasztasTipusIdHianyzas INT = 1500,
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pTanoraiDicseretTipusId INT = 1536, -- Tanórai dicséret
|
||||
@pFelszereleshianyTipusId INT = 6324, -- Felszereléshiány
|
||||
@pHaziFeladatHianyTipusId INT = 6325, -- Házi feladat hiány
|
||||
@pAtsoroltTanuloAdatok INT = 1,
|
||||
@pElmeletgyakorlat BIT = 0
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
--Const
|
||||
DECLARE @ElsoFelveVege INT = 1400
|
||||
DECLARE @IneVege INT = 1403
|
||||
DECLARE @IIIneVege INT = 1404
|
||||
DECLARE @UtolsoTanitasiNap INT = 1395
|
||||
DECLARE @VegzosUtolsoTanitasiNap INT = 1402
|
||||
|
||||
DECLARE @kesespercHianyzashoz INT = 45
|
||||
DECLARE @kesespercGyakHianyzashoz INT = 45
|
||||
|
||||
DECLARE @iskolaErdekuParam INT = 1683;
|
||||
|
||||
--Iskolaerdeku tavollet szamit
|
||||
DECLARE @iskolaErdekuSzamit BIT = [dbo].fnGetRendszerbeallitasEnumBool(@iskolaErdekuParam, @pIntezmenyId, @pTanevId);
|
||||
|
||||
--Osztaly jellemzo
|
||||
DECLARE @keresztFeleves BIT = (SELECT IIF(C_KERESZTFELEVES = 'T', 1, 0) FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId)
|
||||
DECLARE @vegzosEvfolyamu BIT = (SELECT IIF(C_VEGZOSEVFOLYAM = 'T', 1, 0) FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId)
|
||||
|
||||
--Osztalyjellemzok alapjan a lezaro naptipus csereje
|
||||
SET @pLezaroNaptipusId = (
|
||||
IIF(@keresztFeleves = 0, IIF(@vegzosEvfolyamu = 1 AND @pLezaroNaptipusId = @UtolsoTanitasiNap, @VegzosUtolsoTanitasiNap, @pLezaroNaptipusId),
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @UtolsoTanitasiNap
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @IIIneVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @IneVege
|
||||
END)
|
||||
)
|
||||
|
||||
CREATE TABLE #aktualisOsztalyCsoportok (OSZTALYCSOPORTID INT);
|
||||
CREATE TABLE #osztalyTanulok (TANULOID INT PRIMARY KEY, BELEPESDATUM DATE, KILEPESDATUM DATE);
|
||||
CREATE TABLE #szurtErtekeles (
|
||||
T_TANULOERTEKELES_ID INT PRIMARY KEY, C_TANULOID INT, ERTEKELES NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, ERTEKELES_SZOVEG_MEGJEGYZES NVARCHAR(MAX) COLLATE DATABASE_DEFAULT, C_ERTEKELESDATUM DATETIME,
|
||||
C_TANTARGYID INT, TANTARGY_NEV NVARCHAR(255) COLLATE DATABASE_DEFAULT, TARGYKATEGORIA_NEV NVARCHAR(255) COLLATE DATABASE_DEFAULT, TARGYKATEGORIA_SORSZAM INT, T_TANTARGY_C_FOTARGYE CHAR(1) COLLATE DATABASE_DEFAULT, T_TANTARGY_C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1) COLLATE DATABASE_DEFAULT, C_OSZTALYCSOPORTID INT
|
||||
);
|
||||
CREATE TABLE #szurtMulasztas (TIPUS_CHAR CHAR(1) COLLATE DATABASE_DEFAULT, C_TIPUS INT , C_IGAZOLT CHAR(1) COLLATE DATABASE_DEFAULT, C_TANULOID INT, C_GYAKORLATI CHAR(1) COLLATE DATABASE_DEFAULT, KESESPERC INT, MULASZTASOK_SZAMA INT, HOZOTTIGAZOLTMULTASZTASOK_SZAMA INT, HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA INT);
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pTanevrendjeTanevKezdeteNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
DECLARE @idoszakVege DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pLezaroNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
GETDATE())
|
||||
);
|
||||
|
||||
IF @pAtsoroltTanuloAdatok = 0
|
||||
BEGIN
|
||||
INSERT INTO #aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
--WHERE (ID IN (SELECT ID FROM T_OSZTALY_OSSZES) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))));
|
||||
END
|
||||
ELSE IF @pAtsoroltTanuloAdatok = 1
|
||||
BEGIN
|
||||
INSERT INTO #aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
--WHERE (ID IN (SELECT ID FROM T_OSZTALY_OSSZES) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))));
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO #aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetKapcsolodoOsztalycsoportokByDate(@pOsztalyId, @idoszakEleje, @idoszakVege)
|
||||
WHERE (ID IN (SELECT ID FROM T_OSZTALY_OSSZES) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))));
|
||||
END
|
||||
-- TANULÓK
|
||||
INSERT INTO #osztalyTanulok (TANULOID, BELEPESDATUM, KILEPESDATUM)
|
||||
SELECT T_FELHASZNALO_OSSZES.ID AS TANULOID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN (
|
||||
SELECT C_TANULOID, C_OSZTALYCSOPORTID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES
|
||||
WHERE T_TANULOCSOPORT_OSSZES.TOROLT = 'F' AND T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < @idoszakVege
|
||||
AND (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
|
||||
WHERE T_FELHASZNALO_OSSZES.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND T_FELHASZNALO_OSSZES.C_TANEVID = @pTanevId;
|
||||
|
||||
-- OSZTÁLY
|
||||
SELECT T_OSZTALY_OSSZES.ID, C_NEV, C_VEGZOSEVFOLYAM, T_FELHASZNALO_OSSZES.C_NYOMTATASINEV, C_OSZTALYNAPLOMEGNYITASA, C_OSZTALYNAPLOZARASA, C_OSZTALYFONOKID
|
||||
FROM T_OSZTALY_OSSZES
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ON T_OSZTALYCSOPORT_OSSZES.ID = T_OSZTALY_OSSZES.ID
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ON T_OSZTALY_OSSZES.C_OSZTALYFONOKID = T_FELHASZNALO_OSSZES.ID
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES ON T_FELADATELLATASIHELY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.C_FELADATELLATASIHELYID
|
||||
WHERE T_OSZTALYCSOPORT_OSSZES.ID = @pOsztalyId;
|
||||
|
||||
--TANULÓK LISTA
|
||||
SELECT T_FELHASZNALO_OSSZES.ID AS C_TANULOID, T_FELHASZNALO_OSSZES.C_NYOMTATASINEV AS TANULONEV, T_FELHASZNALO_OSSZES.C_ANYJANEVE ANYJANEVE, T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO AS OKTATASIAZONOSITO, BELEPESDATUM, KILEPESDATUM
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN #osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = T_FELHASZNALO_OSSZES.ID
|
||||
ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV;
|
||||
-- ÉRTÉKELÉS
|
||||
INSERT INTO #szurtErtekeles (T_TANULOERTEKELES_ID, C_TANULOID, ERTEKELES, ERTEKELES_SZOVEG_MEGJEGYZES, C_ERTEKELESDATUM, C_TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, T_TANTARGY_C_FOTARGYE, T_TANTARGY_C_ALTANTARGYKENTNYOMTATVANYBAN, C_OSZTALYCSOPORTID)
|
||||
SELECT ROW_NUMBER() OVER (ORDER BY TanuloId), TanuloId
|
||||
,COALESCE(CAST(ErtekelesOsztalyzatValue AS NVARCHAR(MAX)),
|
||||
IIF(ErtekelesSzoveg IS NOT NULL, CASE WHEN ErtekelesSzovegRovidNev IN ('1', '2', '3', '4', '5') THEN 'Sz' ELSE ErtekelesSzovegRovidNev END, NULL),
|
||||
ErtekelesSzazalek)
|
||||
,COALESCE(ErtekelesSzoveg, ErtekelesTema, ''), Datum,TantargyId, COALESCE(TantargyNevNyomtatvanyban, TantargyNev) AS TANTARGY_NEV, TARGYKATEG.C_NAME, TARGYKATEG.C_VALUE, FotargyE, Altantargy, OsztalyCsoportId
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent (@pTanevId, @pOsztalyId, @pErtekelestipusaId, DEFAULT, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT) AS ERTEKELESEK
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = ERTEKELESEK.TargyKategoriaId AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE TantargyId IS NOT NULL AND (FotargyE = 'T' OR Altantargy = 'T')
|
||||
-- TANTÁRGYAK (TANTÁRGYFELOSZTÁS, ÉRTÉKELÉS)
|
||||
SELECT DISTINCT C_TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM (
|
||||
SELECT DISTINCT C_TANTARGYID, COALESCE(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_FOGLALKOZAS_OSSZES
|
||||
INNER JOIN #aktualisOsztalyCsoportok AS OSZTALYCSOPORT ON OSZTALYCSOPORT.OSZTALYCSOPORTID = T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = T_FOGLALKOZAS_OSSZES.C_TANTARGYID AND TANTARGY.C_TANEVID = T_FOGLALKOZAS_OSSZES.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGY.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE T_FOGLALKOZAS_OSSZES.TOROLT = 'F' AND (TANTARGY.C_FOTARGYE = 'T' OR C_ALTANTARGYKENTNYOMTATVANYBAN = 'T')
|
||||
UNION
|
||||
SELECT DISTINCT C_TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, T_TANTARGY_C_FOTARGYE AS C_FOTARGYE, T_TANTARGY_C_ALTANTARGYKENTNYOMTATVANYBAN AS C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM #szurtErtekeles
|
||||
WHERE (@pAtsoroltTanuloAdatok = 2 OR C_OSZTALYCSOPORTID IN (SELECT OSZTALYCSOPORTID FROM #aktualisOsztalyCsoportok))
|
||||
) AS TANTARGYAK
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
-- ÉRTÉKELÉS lista
|
||||
SELECT *
|
||||
FROM #szurtErtekeles;
|
||||
|
||||
--MAGATARTÁS-SZORGALOM
|
||||
SELECT ROW_NUMBER() OVER (ORDER BY TanuloId) AS ID, TanuloId AS C_TANULOID,
|
||||
COALESCE(CAST(MagatartasOsztalyzatValue AS NVARCHAR(MAX)), CAST(MagatartasErtekOsztalyzatkent AS NVARCHAR(MAX)), MagatartasSzovegRovidNev) AS MagatartasOsztalyzat, MagatartasErtek,
|
||||
COALESCE(CAST(SzorgalomOsztalyzatValue AS NVARCHAR(MAX)), CAST(SzorgalomErtekOsztalyzatkent AS NVARCHAR(MAX)), SzorgalomSzovegRovidNev) AS SzorgalomOsztalyzat, SzorgalomErtek,
|
||||
ErtekelesSzoveg AS C_ERTEKELESSZOVEG, Datum AS C_ERTEKELESDATUM, 'F' AS TOROLT
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent (@pTanevId, @pOsztalyId, @pErtekelestipusaId, DEFAULT, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT) AS ERTEKELESEK
|
||||
WHERE TantargyId IS NULL AND (@pAtsoroltTanuloAdatok > 0 OR OsztalyCsoportId IN (SELECT OSZTALYCSOPORTID FROM #aktualisOsztalyCsoportok));
|
||||
|
||||
--MULASZTÁS
|
||||
CREATE TABLE #Tanulok (TanuloId int)
|
||||
CREATE TABLE #Tipusok (Tipus_Char CHAR(1),Igazolt CHAR(1), Tipus INT, Gyakorlati CHAR(1))
|
||||
INSERT INTO #Tipusok (Tipus_Char,Igazolt,Tipus,Gyakorlati)VALUES
|
||||
('H','T',1500,'T'),('H','F',1500,'T'),('K','T',1499,'T'),('K','F',1499,'T'),
|
||||
('H','T',1500,'F'),('H','F',1500,'F'),('K','T',1499,'F'),('K','F',1499,'F')
|
||||
INSERT INTO #Tanulok
|
||||
SELECT DISTINCT
|
||||
tcs.C_TANULOID
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
WHERE tcs.C_OSZTALYCSOPORTID = @pOsztalyId AND tcs.TOROLT = 'F' AND tcs.C_TANEVID = @pTanevId
|
||||
INSERT INTO #szurtMulasztas (TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, C_GYAKORLATI,KESESPERC,MULASZTASOK_SZAMA, HOZOTTIGAZOLTMULTASZTASOK_SZAMA, HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA)
|
||||
|
||||
SELECT Tipus_Char, Tipus,Igazolt,TanuloId, Gyakorlati,0,0,0,0
|
||||
FROM #Tanulok CROSS APPLY #Tipusok
|
||||
|
||||
UPDATE szm SET
|
||||
KESESPERC = m.KesesPercben
|
||||
,MULASZTASOK_SZAMA = m.MULASZTASOK_SZAMA
|
||||
,HOZOTTIGAZOLTMULTASZTASOK_SZAMA = ISNULL(IIF(szm.C_IGAZOLT = 'T',hianyzas.HOZOTTIGAZOLTHIANYZAS,0),0)
|
||||
,HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA = ISNULL(IIF(szm.C_IGAZOLT = 'F',hianyzas.HOZOTTIGAZOLATLANHIANYZAS,0),0)
|
||||
FROM #szurtMulasztas szm
|
||||
LEFT JOIN
|
||||
( SELECT m.Tipusa, m.Igazolt, m.TanuloId, m.Gyakorlati,SUM(ISNULL(KesesPercben,0)) as KesesPercben, ISNULL(COUNT(m.Tipusa),0) AS MULASZTASOK_SZAMA
|
||||
FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes (@pTanevId, @pOsztalyId, @iskolaErdekuSzamit, 0, IIF(@pAtsoroltTanuloAdatok > 0, 1, 0), @idoszakEleje, @idoszakVege, DEFAULT) m
|
||||
WHERE m.Igazolt IS NOT NULL AND m.Tipusa IN (@pMulasztasTipusIdKeses, @pMulasztasTipusIdHianyzas)
|
||||
GROUP BY m.Tipusa, m.Igazolt, m.TanuloId, m.Gyakorlati
|
||||
) m ON m.Gyakorlati = szm.C_GYAKORLATI AND m.Tipusa = szm.C_TIPUS AND m.Igazolt = szm.C_IGAZOLT AND m.TanuloId = szm.C_TANULOID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
tcs.C_TANULOID
|
||||
,SUM(tta.C_HOZOTTIGAZOLTHIANYZAS) as HOZOTTIGAZOLTHIANYZAS
|
||||
,SUM(tta.C_HOZOTTIGAZOLATLANHIANYZAS ) as HOZOTTIGAZOLATLANHIANYZAS
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.C_TANEVID = @pTanevId AND tta.TOROLT = 'F'
|
||||
WHERE tcs.C_OSZTALYCSOPORTID = @pOsztalyId
|
||||
AND tcs.C_TANEVID = @pTanevId
|
||||
AND tcs.C_BELEPESDATUM < @idoszakVege
|
||||
AND tcs.TOROLT = 'F'
|
||||
GROUP BY tcs.C_TANULOID
|
||||
) as hianyzas on hianyzas.C_TANULOID = szm.C_TANULOID AND szm.TIPUS_CHAR = 'H' AND szm.C_GYAKORLATI = 'F'
|
||||
|
||||
IF @pElmeletgyakorlat=0
|
||||
BEGIN
|
||||
SELECT
|
||||
szm.TIPUS_CHAR,
|
||||
szm.C_TIPUS,
|
||||
szm.C_IGAZOLT,
|
||||
szm.C_TANULOID,
|
||||
szm.KESESPERC,
|
||||
szm.KESESORA,
|
||||
ISNULL(szm.MULASZTASOK_SZAMA,0) +
|
||||
IIF(szm.TIPUS_CHAR = 'K',0,IIF(szm.C_IGAZOLT = 'T',szm.HOZOTTIGAZOLTMULTASZTASOK_SZAMA,szm.HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA))
|
||||
AS MULASZTASOK_SZAMA,
|
||||
IIF(szm.TIPUS_CHAR = 'K',0,IIF(szm.C_IGAZOLT = 'T',szm.HOZOTTIGAZOLTMULTASZTASOK_SZAMA,szm.HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA))
|
||||
AS HOZOTTMULASZTASOK_SZAMA
|
||||
FROM (
|
||||
SELECT
|
||||
TIPUS_CHAR,
|
||||
C_TIPUS,
|
||||
C_IGAZOLT,
|
||||
C_TANULOID,
|
||||
SUM(KESESPERC) AS KESESPERC,
|
||||
SUM(KESESPERC)/@kesespercHianyzashoz AS KESESORA,
|
||||
SUM(ISNULL(MULASZTASOK_SZAMA,0)) AS MULASZTASOK_SZAMA,
|
||||
SUM(HOZOTTIGAZOLTMULTASZTASOK_SZAMA) AS HOZOTTIGAZOLTMULTASZTASOK_SZAMA,
|
||||
SUM(HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA) AS HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA
|
||||
FROM #szurtMulasztas
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID) AS szm
|
||||
|
||||
ORDER BY szm.C_TANULOID, szm.C_TIPUS DESC, szm.C_IGAZOLT DESC
|
||||
;
|
||||
SELECT C_IGAZOLT, C_TANULOID, SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA
|
||||
FROM (
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, SUM(KESESPERC)/@kesespercHianyzashoz AS MULASZTASOK_SZAMA
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'K'
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID
|
||||
UNION ALL
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'H'
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID
|
||||
) AS KM
|
||||
GROUP BY C_IGAZOLT, C_TANULOID
|
||||
ORDER BY C_TANULOID, C_IGAZOLT DESC;
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT
|
||||
szm.TIPUS_CHAR,
|
||||
szm.C_TIPUS,
|
||||
szm.C_IGAZOLT,
|
||||
szm.C_TANULOID,
|
||||
szm.KESESPERC,
|
||||
szm.KESESORA,
|
||||
ISNULL(szm.MULASZTASOK_SZAMA,0) +
|
||||
IIF(szm.TIPUS_CHAR = 'K' OR szm.C_GYAKORLATI = 'T',0,IIF( tcs.C_BELEPESDATUM < @idoszakVege,IIF(szm.C_IGAZOLT = 'T',tta.C_HOZOTTIGAZOLTHIANYZAS,tta.C_HOZOTTIGAZOLATLANHIANYZAS),0))
|
||||
AS MULASZTASOK_SZAMA,
|
||||
IIF(szm.TIPUS_CHAR = 'K',0,IIF( tcs.C_BELEPESDATUM < @idoszakVege,IIF(szm.C_IGAZOLT = 'T',tta.C_HOZOTTIGAZOLTHIANYZAS,tta.C_HOZOTTIGAZOLATLANHIANYZAS),0))
|
||||
AS HOZOTTMULASZTASOK_SZAMA,
|
||||
szm.C_GYAKORLATI
|
||||
FROM (
|
||||
SELECT
|
||||
TIPUS_CHAR,
|
||||
C_TIPUS,
|
||||
C_IGAZOLT,
|
||||
C_TANULOID,
|
||||
KESESPERC,
|
||||
KESESPERC/(CASE WHEN C_GYAKORLATI = 'T' THEN @kesespercGyakHianyzashoz ELSE @kesespercHianyzashoz END) AS KESESORA,
|
||||
MULASZTASOK_SZAMA,
|
||||
C_GYAKORLATI
|
||||
FROM #szurtMulasztas ) AS szm
|
||||
INNER JOIN T_TANULOCSOPORT tcs ON tcs.C_TANULOID = szm.C_TANULOID AND tcs.C_OSZTALYCSOPORTID = @pOsztalyId AND tcs.C_TANEVID = @pTanevId AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_TANULOTANUGYIADATOK tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.C_TANEVID = @pTanevId AND tta.TOROLT = 'F'
|
||||
ORDER BY szm.C_TANULOID, szm.C_TIPUS DESC, szm.C_IGAZOLT DESC
|
||||
SELECT C_IGAZOLT, C_TANULOID, SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM (
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, KESESPERC/(CASE WHEN C_GYAKORLATI = 'T' THEN @kesespercGyakHianyzashoz ELSE @kesespercHianyzashoz END) AS MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'K'
|
||||
UNION ALL
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'H'
|
||||
) AS KM
|
||||
GROUP BY C_IGAZOLT, C_TANULOID, C_GYAKORLATI
|
||||
ORDER BY C_TANULOID, C_IGAZOLT DESC;
|
||||
END
|
||||
--TANÓRAI FELJEGYZÉSEK
|
||||
SELECT C_TANULOID, SUM(IIF(C_TIPUS = @pTanoraiDicseretTipusId, 1, 0)) AS TanoraiDicseret, SUM(IIF(C_TIPUS = @pFelszereleshianyTipusId, 1, 0)) AS FelszerelesHiany, SUM(IIF(C_TIPUS = @pHaziFeladatHianyTipusId, 1, 0)) AS HaziFeladatHiany, 'F' AS TOROLT
|
||||
FROM T_TANULOESEMENY_OSSZES AS TANULOESEMENY
|
||||
INNER JOIN T_TANITASIORA_OSSZES AS TANITASIORA ON TANITASIORA.ID = TANULOESEMENY.C_TANITASIORAID
|
||||
INNER JOIN T_TANULO_TANULOESEMENY AS TANULO_TANULOE ON TANULO_TANULOE.C_TANULOESEMENYID = TANULOESEMENY.ID
|
||||
INNER JOIN T_DICTIONARYITEMBASE AS TIPUS ON TIPUS.ID = TANULOESEMENY.C_TIPUS AND TIPUS.C_TANEVID = TANULOESEMENY.C_TANEVID
|
||||
INNER JOIN #osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = TANULO_TANULOE.C_TANULOID
|
||||
INNER JOIN #aktualisOsztalyCsoportok AS OSZTALYCSOPORT ON OSZTALYCSOPORT.OSZTALYCSOPORTID = TANITASIORA.C_OSZTALYCSOPORTID
|
||||
LEFT JOIN T_CSOPORT_OSSZES AS CSOPORT ON CSOPORT.ID = OSZTALYCSOPORT.OSZTALYCSOPORTID
|
||||
LEFT JOIN T_OSZTALY_OSSZES AS OSZTALY ON OSZTALY.ID = OSZTALYCSOPORT.OSZTALYCSOPORTID
|
||||
WHERE TANULOESEMENY.TOROLT = 'F' AND TANITASIORA.TOROLT = 'F' AND TANULOESEMENY.C_TANEVID = @pTanevId AND C_TANITASIORAID IS NOT NULL
|
||||
AND TANITASIORA.C_DATUM BETWEEN @idoszakEleje AND @idoszakVege
|
||||
AND TANITASIORA.C_OSZTALYCSOPORTID IN (SELECT OSZTALYCSOPORTID FROM #aktualisOsztalyCsoportok)
|
||||
GROUP BY C_TANULOID
|
||||
-- Osztály adatok az iktatáshoz
|
||||
SELECT
|
||||
f.C_NYOMTATASINEV Osztalyfonok
|
||||
,f.ID OsztalyfonokId
|
||||
,ocs.C_NEV Osztalynev
|
||||
,@pOsztalyId OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID TantervId
|
||||
,ocs.C_KEPZESIFORMA KepzesiForma
|
||||
,o.C_AGAZAT Agazat
|
||||
,o.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.id
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = o.C_OSZTALYFONOKID
|
||||
WHERE
|
||||
ocs.ID = @pOsztalyId AND ocs.C_TANEVID = @pTanevId AND ocs.TOROLT = 'F';
|
||||
SELECT C_TANULOID, [D] AS Dicseret, [K] AS Kituno
|
||||
FROM (
|
||||
SELECT C_TANULOID, T_TANULOERTEKELES_ID, LEFT(ERTEKELES_SZOVEG_MEGJEGYZES, 1) AS Szoveg
|
||||
FROM #szurtErtekeles
|
||||
WHERE
|
||||
ERTEKELES = '5'
|
||||
AND LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(ERTEKELES_SZOVEG_MEGJEGYZES,CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) IN ( 'Dicséret', 'Kitűnő' )
|
||||
) AS s
|
||||
PIVOT(COUNT(T_TANULOERTEKELES_ID) FOR Szoveg IN ([D], [K])) piv
|
||||
ORDER BY C_TANULOID
|
||||
END
|
||||
GO
|
@@ -0,0 +1,199 @@
|
||||
DROP PROCEDURE IF EXISTS sp_Nyomtatvany_Excel_IdoszakiOsztalyokCsoportokTantargyiStatisztika
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokCsoportokTantargyiStatisztika]
|
||||
@pTanevId INT,
|
||||
@pErtekelestipusaId INT,
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pLezaroNaptipusId INT,
|
||||
@pAtsoroltTanuloAdatok INT = 1
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE @ElsoFelveVege INT = 1400
|
||||
DECLARE @IneVege INT = 1403
|
||||
DECLARE @IIIneVege INT = 1404
|
||||
DECLARE @UtolsoTanitasiNap INT = 1395
|
||||
DECLARE @VegzosUtolsoTanitasiNap INT = 1402
|
||||
|
||||
DECLARE @osztalyok TABLE(OSZTALYID INT, NEV NVARCHAR(MAX), EVFOLYAM INT, SORREND INT);
|
||||
DECLARE @tantargyak TABLE(TANTARGYID INT, TANTARGY_NEV NVARCHAR(MAX), TARGYKATEGORIA_NEV NVARCHAR(MAX), TARGYKATEGORIA_SORSZAM INT, C_FOTARGYE CHAR(1), C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1));
|
||||
DECLARE @osztalyokCsoportokErtekeles TABLE (TECHNIKAIID NVARCHAR(MAX), OSZTALYCSOPORTID INT, OSZTALYCSOPORTNEV NVARCHAR(MAX), SORREND INT, TANTARGYID INT, TANTARGYNEV NVARCHAR(MAX), AKTUALISLETSZAM INT, ATLAG FLOAT);
|
||||
DECLARE @osztalyTanulok TABLE (TANULOID INT PRIMARY KEY, BELEPESDATUM DATE, KILEPESDATUM DATE);
|
||||
|
||||
DECLARE @DefaultFeladatKategoriaId int = 7553 /*OktNevelesiKategoriaEnum.Alapkepzes*/
|
||||
|
||||
INSERT INTO @tantargyak (TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN)
|
||||
SELECT TANTARGYAK.ID AS TANTARGYID, COALESCE(TANTARGYAK.C_NEVNYOMTATVANYBAN, TANTARGYAK.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, TANTARGYAK.C_FOTARGYE, TANTARGYAK.C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANTARGY_OSSZES AS TANTARGYAK
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGYAK.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = TANTARGYAK.C_TANEVID
|
||||
WHERE TANTARGYAK.TOROLT = 'F' AND TANTARGYAK.C_TANEVID = @pTanevId
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
|
||||
SELECT CAST(OSZTALYCSOPORT.ID AS nvarchar(MAX)) + '_' + CAST(OSZTALYCSOPORT.ID AS nvarchar(MAX)) AS TECHNIKAIID, OSZTALYCSOPORT.ID AS OSZTALYID, OSZTALYCSOPORT.C_NEV AS NEV,
|
||||
OSZTALYCSOPORT.C_EVFOLYAMTIPUSA AS EVFOLYAM, EVFOLYAM.C_ORDER AS SORREND, (SELECT COUNT(TanuloId) FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, OSZTALYCSOPORT.ID, 0)) AS AKTUALISLETSZAM,
|
||||
C_KERESZTFELEVES AS KERESZTFELEVES, C_VEGZOSEVFOLYAM AS VEGZOSEVFOLYAM,
|
||||
ROW_NUMBER() OVER(ORDER BY EVFOLYAM.C_ORDER ASC, OSZTALYCSOPORT.C_NEV ASC) AS Row#
|
||||
,@pTanevId TanevId
|
||||
,OSZTALY.C_OSZTALYFONOKID OsztalyfonokId
|
||||
,OSZTALYCSOPORT.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,OSZTALY.C_TANTERVID TantervId
|
||||
,OSZTALYCSOPORT.C_KEPZESIFORMA KepzesiForma
|
||||
,OSZTALY.C_AGAZAT Agazat
|
||||
,OSZTALY.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,OSZTALY.C_SZAKKEPESITES Szakkepesites
|
||||
,OSZTALY.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,OSZTALYCSOPORT.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,OSZTALYCSOPORT.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,OSZTALY.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,OSZTALY.C_NEMZETISEGI OJNemzetisegi
|
||||
,OSZTALY.C_KETTANNYELVU OJKettannyelvu
|
||||
,OSZTALY.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,OSZTALY.C_LOGOPEDIAI OJLogopediai
|
||||
,OSZTALY.C_SPORT OJSportOsztaly
|
||||
,OSZTALY.C_AJPROGRAM OJAranyJanosProgram
|
||||
,OSZTALY.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
INTO #tempOsztalyok
|
||||
FROM T_OSZTALY_OSSZES AS OSZTALY
|
||||
JOIN T_OSZTALYCSOPORT_OSSZES AS OSZTALYCSOPORT ON OSZTALY.ID = OSZTALYCSOPORT.ID AND OSZTALYCSOPORT.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
JOIN T_DICTIONARYITEMBASE_OSSZES AS EVFOLYAM ON EVFOLYAM.ID = OSZTALYCSOPORT.C_EVFOLYAMTIPUSA AND EVFOLYAM.TOROLT = 'F' AND EVFOLYAM.C_TANEVID = OSZTALY.C_ALTANEVID
|
||||
WHERE OSZTALYCSOPORT.TOROLT = 'F' AND OSZTALY.C_ALTANEVID = @pTanevId
|
||||
ORDER BY Row#;
|
||||
|
||||
DECLARE @pOsztalyId INT = 0;
|
||||
DECLARE @sorrend INT = 0;
|
||||
DECLARE @keresztFeleves BIT = 0;
|
||||
DECLARE @vegzosEvfolyamu BIT = 0;
|
||||
WHILE (1 = 1)
|
||||
BEGIN
|
||||
SELECT TOP 1 @pOsztalyId = OSZTALYID, @sorrend = Row#, @keresztFeleves = IIF(KERESZTFELEVES = 'T', 1, 0), @vegzosEvfolyamu = IIF(VEGZOSEVFOLYAM = 'T', 1, 0)
|
||||
FROM #tempOsztalyok
|
||||
WHERE @sorrend < Row#
|
||||
ORDER BY Row#;
|
||||
IF @@ROWCOUNT = 0
|
||||
BEGIN
|
||||
BREAK;
|
||||
END
|
||||
|
||||
|
||||
--Osztalyjellemzok alapjan a nyito/lezaro naptipus csereje
|
||||
DECLARE @pKezdeteOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, @pTanevrendjeTanevKezdeteNaptipusId,
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @pLezaroOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, IIF(@vegzosEvfolyamu = 1 AND @pLezaroNaptipusId = @UtolsoTanitasiNap, @VegzosUtolsoTanitasiNap, @pLezaroNaptipusId),
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @UtolsoTanitasiNap
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @IIIneVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @IneVege
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pKezdeteOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
|
||||
DECLARE @idoszakVege DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pLezaroOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
GETDATE())
|
||||
);
|
||||
|
||||
|
||||
INSERT INTO @osztalyTanulok (TANULOID, BELEPESDATUM, KILEPESDATUM) (
|
||||
SELECT T_FELHASZNALO_OSSZES.ID AS TANULOID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN (
|
||||
SELECT tcs.C_TANULOID, tcs.C_OSZTALYCSOPORTID, tcs.C_BELEPESDATUM, tcs.C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID=tcs.C_OSZTALYCSOPORTID AND ocs.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId AND ocs.TOROLT='F'
|
||||
WHERE tcs.TOROLT = 'F' AND tcs.C_BELEPESDATUM < @idoszakVege
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
|
||||
WHERE T_FELHASZNALO_OSSZES.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND T_FELHASZNALO_OSSZES.C_TANEVID = @pTanevId
|
||||
);
|
||||
|
||||
INSERT INTO @osztalyokCsoportokErtekeles(TECHNIKAIID, OSZTALYCSOPORTID, OSZTALYCSOPORTNEV, SORREND, TANTARGYID, TANTARGYNEV, AKTUALISLETSZAM, ATLAG)
|
||||
SELECT CAST(@pOsztalyId AS nvarchar(MAX)) + '_' + CAST(OsztalyCsoportId AS nvarchar(MAX)) AS TechnikaiId, OsztalyCsoportId, OSZTALYCSOPORT.C_NEV + (IIF(CSOPORT.ID IS NOT NULL, ' (' + (SELECT C_NEV FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId) + ')', '')) AS OsztalyCsoportNev, @sorrend,
|
||||
TantargyId, TantargyNev,
|
||||
(SELECT COUNT(TanuloId) FROM (
|
||||
SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, OsztalyCsoportId, 0)
|
||||
INTERSECT
|
||||
SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 0)) AS T) AS Aktualisletszam,
|
||||
AVG(CAST (ErtekelesOsztalyzatValue AS float)) AS Atlag
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent(@pTanevId, @pOsztalyId, @pErtekelestipusaId, DEFAULT, DEFAULT, 1, DEFAULT) AS ERTEKELESEK
|
||||
INNER JOIN @osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = ERTEKELESEK.TanuloId
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES AS OSZTALYCSOPORT ON OSZTALYCSOPORT.ID = OsztalyCsoportId AND OSZTALYCSOPORT.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
LEFT JOIN T_CSOPORT_OSSZES AS CSOPORT ON CSOPORT.ID = OSZTALYCSOPORT.ID
|
||||
WHERE IsMagatartasSzorgalom = 'F'
|
||||
GROUP BY OsztalyCsoportId, OSZTALYCSOPORT.C_NEV, TantargyId, TantargyNev, CSOPORT.ID
|
||||
END
|
||||
|
||||
SELECT *
|
||||
FROM (
|
||||
SELECT DISTINCT TECHNIKAIID, OSZTALYCSOPORTID, OSZTALYCSOPORTNEV, AKTUALISLETSZAM, SORREND
|
||||
FROM @osztalyokCsoportokErtekeles
|
||||
UNION
|
||||
SELECT TECHNIKAIID, OSZTALYID AS OSZTALYCSOPORTID, NEV AS OSZTALYCSOPORTNEV, AKTUALISLETSZAM, Row# AS SORREND
|
||||
FROM #tempOsztalyok
|
||||
) AS OSZTALYOKCSOPORTOK
|
||||
ORDER BY SORREND, OSZTALYCSOPORTNEV;
|
||||
|
||||
SELECT DISTINCT TANTARGYID, TANTARGY_NEV
|
||||
FROM @tantargyak;
|
||||
|
||||
SELECT *
|
||||
FROM @osztalyokCsoportokErtekeles;
|
||||
|
||||
select OSZTALYID AS OsztalyId
|
||||
,EVFOLYAM AS EvfolyamTipusa
|
||||
,FeladatEllatasiHelyId
|
||||
,KepzesiForma
|
||||
,OsztalyfonokId
|
||||
,TantervId
|
||||
,OJAranyJanosProgram
|
||||
,OJCSJKeresztfeleves
|
||||
,OJGyogypedagogiai
|
||||
,OJKettannyelvu
|
||||
,OJLogopediai
|
||||
,OJNemzetisegi
|
||||
,OJNyelviElokeszito
|
||||
,OJSportOsztaly
|
||||
,OJTechnikaiOsztaly
|
||||
,SzakmaCsoport
|
||||
,Agazat
|
||||
,Szakkepesites
|
||||
,Reszszakkepesites from #tempOsztalyok;
|
||||
|
||||
select cs.ID CsoportId
|
||||
,cs.C_CSOPORTVEZETOID as Csoportvezeto
|
||||
,cs.C_TIPUSA as CsoportTipus
|
||||
,ocs.C_KERESZTFELEVES as OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM as CSJVegzosEvfolyamu
|
||||
from T_CSOPORT_OSSZES cs
|
||||
inner join @osztalyokCsoportokErtekeles ocse on ocse.OSZTALYCSOPORTID = cs.iD
|
||||
inner join T_OSZTALYCSOPORT_OSSZES ocs on ocs.ID = cs.ID;
|
||||
|
||||
IF OBJECT_ID('tempdb..#tempOsztalyok') IS NOT NULL DROP TABLE #tempOsztalyok
|
||||
IF OBJECT_ID('tempdb..#tempErtekeles') IS NOT NULL DROP TABLE #tempErtekeles
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,394 @@
|
||||
DROP PROCEDURE IF EXISTS [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokTantargyiStatisztika]
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokTantargyiStatisztika]
|
||||
@pTanevId INT,
|
||||
@pIntezmenyId INT,
|
||||
@pErtekelestipusaId INT,
|
||||
@pLezaroNaptipusId INT,
|
||||
@pTanoraiCsoportTipusIds INT = 1034,
|
||||
@pMulasztasTipusIdKeses INT = 1499,
|
||||
@pMulasztasTipusIdHianyzas INT = 1500,
|
||||
@pNemMulasztaIgazolasTipusIds INT = 1532, -- Iskola érdekű távollét
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pAtsoroltTanuloAdatok INT = 1,
|
||||
@pElmeletgyakorlat BIT = 0
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
--Const
|
||||
DECLARE @ElsoFelveVege INT = 1400
|
||||
DECLARE @IneVege INT = 1403
|
||||
DECLARE @IIIneVege INT = 1404
|
||||
DECLARE @UtolsoTanitasiNap INT = 1395
|
||||
DECLARE @VegzosUtolsoTanitasiNap INT = 1402
|
||||
DECLARE @iskolaErdekuParam INT = 1683;
|
||||
DECLARE @iskolaErdekuSzamit BIT = dbo.fnGetRendszerbeallitasEnumBool(@iskolaErdekuParam, @pIntezmenyId, @pTanevId);
|
||||
DECLARE @DefaultFeladatKategoriaId int = 7553 /*OktNevelesiKategoriaEnum.Alapkepzes*/
|
||||
|
||||
CREATE TABLE #osztalyoktanoraicsoportok (OSZTALYCSOPORTID INT PRIMARY KEY, C_TIPUSA INT, C_VEGZOSEVFOLYAM CHAR(1));
|
||||
CREATE TABLE #osztalycsoportok (OSZTALYCSOPORTID INT PRIMARY KEY);
|
||||
CREATE TABLE #aktualisOsztalyCsoportok (OSZTALYCSOPORTID INT);
|
||||
CREATE TABLE #osztalyTanulok (TANULOID INT PRIMARY KEY, BELEPESDATUM DATE, KILEPESDATUM DATE);
|
||||
CREATE TABLE #tantargyak (TANTARGYID INT, TANTARGY_NEV NVARCHAR(MAX), TARGYKATEGORIA_NEV NVARCHAR(MAX), TARGYKATEGORIA_SORSZAM INT, C_FOTARGYE CHAR(1), C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1));
|
||||
CREATE TABLE #osztalyok (OSZTALYID INT, NEV NVARCHAR(MAX), EVFOLYAM INT, SORREND INT);
|
||||
CREATE TABLE #osztalyokTanulokszama (OSZTALYID INT, TANULOKSZAMA INT);
|
||||
CREATE TABLE #osztalyokErtekeles (OSZTALYID INT, TANTARGYID INT, ATLAG FLOAT);
|
||||
CREATE TABLE #osztalyokMagszorg (OSZTALYID INT, MAGATLAG FLOAT, SZORGATLAG FLOAT);
|
||||
CREATE TABLE #osztalyokMulasztas (OSZTALYID INT, TIPUS_CHAR CHAR(1), C_TIPUS INT, C_IGAZOLT CHAR(1), MULASZTASOK_SZAMA INT, C_GYAKORLATI CHAR(1), DESCR CHAR(3));
|
||||
CREATE TABLE #szurtMulasztas (TIPUS_CHAR CHAR(1), C_TIPUS INT , C_IGAZOLT CHAR(1), C_TANULOID INT, C_GYAKORLATI CHAR(1), KESESPERC INT, MULASZTASOK_SZAMA INT);
|
||||
-- OSZTÁLYOK ÉS TANÓRAI CSOPORTOK
|
||||
INSERT INTO #osztalyoktanoraicsoportok (OSZTALYCSOPORTID, C_TIPUSA, C_VEGZOSEVFOLYAM) (
|
||||
SELECT T_OSZTALYCSOPORT_OSSZES.ID, C_TIPUSA, C_VEGZOSEVFOLYAM
|
||||
FROM T_OSZTALYCSOPORT_OSSZES
|
||||
LEFT JOIN T_CSOPORT_OSSZES ON T_OSZTALYCSOPORT_OSSZES.ID = T_CSOPORT_OSSZES.ID
|
||||
LEFT JOIN T_OSZTALY_OSSZES ON T_OSZTALYCSOPORT_OSSZES.ID = T_OSZTALY_OSSZES.ID
|
||||
WHERE ( C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId)) OR T_OSZTALY_OSSZES.ID IS NOT NULL)
|
||||
AND C_TANEVID = @pTanevId
|
||||
AND T_OSZTALYCSOPORT_OSSZES.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
|
||||
);
|
||||
-- TANTÁRGYAK
|
||||
INSERT INTO #tantargyak (TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN)
|
||||
SELECT T_TANTARGY_OSSZES.ID AS TANTARGYID, COALESCE(T_TANTARGY_OSSZES.C_NEVNYOMTATVANYBAN, T_TANTARGY_OSSZES.C_NEV) AS TANTARGY_NEV, TARGYKAT.C_NAME AS TARGYKATEGORIA_NEV, TARGYKAT.C_VALUE AS TARGYKATEGORIA_SORSZAM, T_TANTARGY_OSSZES.C_FOTARGYE, T_TANTARGY_OSSZES.C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANTARGY_OSSZES
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKAT ON TARGYKAT.ID = T_TANTARGY_OSSZES.C_TARGYKATEGORIA AND TARGYKAT.C_TANEVID = T_TANTARGY_OSSZES.C_TANEVID
|
||||
WHERE T_TANTARGY_OSSZES.TOROLT = 'F' AND T_TANTARGY_OSSZES.C_INTEZMENYID = @pIntezmenyId AND T_TANTARGY_OSSZES.C_TANEVID = @pTanevId
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
-- OSZTÁLYOK
|
||||
SELECT T_OSZTALYCSOPORT_OSSZES.ID AS OSZTALYID, T_OSZTALYCSOPORT_OSSZES.C_NEV AS NEV, T_OSZTALYCSOPORT_OSSZES.C_EVFOLYAMTIPUSA AS EVFOLYAM, EVFOLYAMTIPUS.C_ORDER AS SORREND,
|
||||
C_KERESZTFELEVES AS KERESZTFELEVES, C_VEGZOSEVFOLYAM AS VEGZOSEVFOLYAM,
|
||||
ROW_NUMBER() OVER(ORDER BY EVFOLYAMTIPUS.C_ORDER ASC, T_OSZTALYCSOPORT_OSSZES.C_NEV ASC) AS Row#
|
||||
,@pTanevId TanevId
|
||||
,T_OSZTALY_OSSZES.C_OSZTALYFONOKID OsztalyfonokId
|
||||
,T_OSZTALYCSOPORT_OSSZES.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,T_OSZTALY_OSSZES.C_TANTERVID TantervId
|
||||
,T_OSZTALYCSOPORT_OSSZES.C_KEPZESIFORMA KepzesiForma
|
||||
,T_OSZTALY_OSSZES.C_AGAZAT Agazat
|
||||
,T_OSZTALY_OSSZES.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,T_OSZTALY_OSSZES.C_SZAKKEPESITES Szakkepesites
|
||||
,T_OSZTALY_OSSZES.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,T_OSZTALYCSOPORT_OSSZES.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,T_OSZTALYCSOPORT_OSSZES.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,T_OSZTALY_OSSZES.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,T_OSZTALY_OSSZES.C_NEMZETISEGI OJNemzetisegi
|
||||
,T_OSZTALY_OSSZES.C_KETTANNYELVU OJKettannyelvu
|
||||
,T_OSZTALY_OSSZES.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,T_OSZTALY_OSSZES.C_LOGOPEDIAI OJLogopediai
|
||||
,T_OSZTALY_OSSZES.C_SPORT OJSportOsztaly
|
||||
,T_OSZTALY_OSSZES.C_AJPROGRAM OJAranyJanosProgram
|
||||
,T_OSZTALY_OSSZES.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
INTO #tempOsztalyok
|
||||
FROM T_OSZTALYCSOPORT_OSSZES
|
||||
JOIN T_OSZTALY_OSSZES ON T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID
|
||||
JOIN T_TANEV_OSSZES ON T_TANEV_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.C_TANEVID
|
||||
JOIN T_DICTIONARYITEMBASE_OSSZES AS EVFOLYAMTIPUS ON EVFOLYAMTIPUS.ID = T_OSZTALYCSOPORT_OSSZES.C_EVFOLYAMTIPUSA AND EVFOLYAMTIPUS.TOROLT = 'F' AND EVFOLYAMTIPUS.C_TANEVID = T_TANEV_OSSZES.ID
|
||||
WHERE T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
|
||||
AND T_OSZTALYCSOPORT_OSSZES.C_INTEZMENYID=@pIntezmenyId
|
||||
AND T_TANEV_OSSZES.TOROLT = 'F'
|
||||
AND T_TANEV_OSSZES.ID = @pTanevId
|
||||
AND T_OSZTALYCSOPORT_OSSZES.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
|
||||
ORDER BY Row#;
|
||||
|
||||
IF OBJECT_ID('tempdb..#tempMulasztas') IS NOT NULL
|
||||
DROP TABLE #tempMulasztas;
|
||||
|
||||
CREATE TABLE #tempMulasztas (
|
||||
ID INT IDENTITY(1,1) PRIMARY KEY,
|
||||
TIPUS_CHAR CHAR(1), TIPUS INT, IGAZOLT CHAR(1), TANULOID NVARCHAR(20), GYAKORLATI CHAR(1), KESESPERC INT, MULASZTASOK_SZAMA INT, OSZTALYCSOPORTID INT, DATUM DATETIME);
|
||||
|
||||
DROP TABLE IF EXISTS #csopTip
|
||||
CREATE TABLE #csopTip (ID int)
|
||||
INSERT INTO #csopTip(ID)
|
||||
SELECT Id FROM fnGetDokumentumOsztalyVagyTanoraiCsoport (@pTanevId)
|
||||
|
||||
|
||||
INSERT INTO #tempMulasztas(TIPUS_CHAR, TIPUS, IGAZOLT, TANULOID, GYAKORLATI, KESESPERC, MULASZTASOK_SZAMA, OSZTALYCSOPORTID, DATUM)
|
||||
SELECT
|
||||
IIF(C_TIPUS = @pMulasztasTipusIdKeses, 'K', 'H')
|
||||
,tm.C_TIPUS
|
||||
,tm.C_IGAZOLT
|
||||
,tm.C_ORATANULOIID
|
||||
,tgy.C_GYAKORLATI
|
||||
,SUM(tm.C_KESESPERCBEN)
|
||||
,COUNT(tm.ID) AS MULASZTASOK_SZAMA
|
||||
,tao.C_OSZTALYCSOPORTID
|
||||
,tao.C_DATUM
|
||||
FROM T_TANULOMULASZTAS_OSSZES tm
|
||||
INNER JOIN T_TANITASIORA_OSSZES tao ON tao.ID = tm.C_TANITASIORAKID
|
||||
AND tao.C_TANEVID = @pTanevId
|
||||
AND tao.TOROLT = 'F'
|
||||
AND tao.C_MEGTARTOTT = 'T'
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_TANULOID = tm.C_ORATANULOIID
|
||||
AND tcs.C_OSZTALYCSOPORTID = tao.C_OSZTALYCSOPORTID
|
||||
AND tcs.TOROLT = 'F'
|
||||
AND tao.C_DATUM BETWEEN tcs.C_BELEPESDATUM AND ISNULL(tcs.C_KILEPESDATUM, GETDATE())
|
||||
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ID = tao.C_TANTARGYID AND tgy.TOROLT='F'
|
||||
INNER JOIN #csopTip csop ON csop.ID=tao.C_OSZTALYCSOPORTID
|
||||
WHERE tm.C_TIPUS IN (1499,1500)
|
||||
AND (@iskolaErdekuSzamit = 1 OR ISNULL(C_IGAZOLASTIPUSA,0)<>1533)
|
||||
AND tm.TOROLT = 'F' AND tm.C_IGAZOLT IS NOT NULL
|
||||
AND tm.C_TANEVID = @pTanevId
|
||||
GROUP BY C_TIPUS, C_IGAZOLT, C_ORATANULOIID, C_GYAKORLATI, tao.C_OSZTALYCSOPORTID, C_DATUM
|
||||
|
||||
|
||||
DECLARE @pOsztalyId INT = 0;
|
||||
DECLARE @sorrend INT = 0;
|
||||
DECLARE @keresztFeleves BIT = 0;
|
||||
DECLARE @vegzosEvfolyamu BIT = 0;
|
||||
|
||||
WHILE (1 = 1)
|
||||
BEGIN
|
||||
TRUNCATE TABLE #szurtMulasztas;
|
||||
TRUNCATE TABLE #osztalycsoportok;
|
||||
TRUNCATE TABLE #aktualisOsztalyCsoportok;
|
||||
TRUNCATE TABLE #osztalyTanulok;
|
||||
|
||||
SELECT TOP 1 @pOsztalyId = OSZTALYID, @sorrend = Row#, @keresztFeleves = IIF(KERESZTFELEVES = 'T', 1, 0), @vegzosEvfolyamu = IIF(VEGZOSEVFOLYAM = 'T', 1, 0)
|
||||
FROM #tempOsztalyok
|
||||
WHERE @sorrend < Row#
|
||||
ORDER BY Row#;
|
||||
IF @@ROWCOUNT = 0
|
||||
BEGIN
|
||||
BREAK;
|
||||
END
|
||||
|
||||
--Osztalyjellemzok alapjan a nyito/lezaro naptipus csereje
|
||||
DECLARE @pKezdeteOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, @pTanevrendjeTanevKezdeteNaptipusId,
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @pLezaroOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, IIF(@vegzosEvfolyamu = 1 AND @pLezaroNaptipusId = @UtolsoTanitasiNap, @VegzosUtolsoTanitasiNap, @pLezaroNaptipusId),
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @UtolsoTanitasiNap
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @IIIneVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @IneVege
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pKezdeteOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
|
||||
DECLARE @idoszakVege DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pLezaroOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
GETDATE())
|
||||
);
|
||||
|
||||
INSERT INTO #osztalycsoportok (OSZTALYCSOPORTID) (
|
||||
SELECT ID FROM fnGetKapcsolodoOsztalycsoportok(@pOsztalyId)
|
||||
WHERE (ID IN (SELECT T_OSZTALY_OSSZES.ID FROM T_OSZTALY_OSSZES
|
||||
INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_OSZTALY_OSSZES.ID AND OsztalyCsoport.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
) OR ID IN (SELECT ID FROM T_CSOPORT WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))))
|
||||
);
|
||||
INSERT INTO #aktualisOsztalyCsoportok (OSZTALYCSOPORTID) (
|
||||
SELECT ID FROM fnGetKapcsolodoOsztalycsoportokByDate(@pOsztalyId, @idoszakEleje, @idoszakVege)
|
||||
WHERE (ID IN (SELECT T_OSZTALY_OSSZES.ID FROM T_OSZTALY_OSSZES INNER JOIN T_OSZTALYCSOPORT OsztalyCsoport ON OsztalyCsoport.ID = T_OSZTALY_OSSZES.ID AND OsztalyCsoport.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))))
|
||||
);
|
||||
-- TANULÓK
|
||||
INSERT INTO #osztalyTanulok (TANULOID, BELEPESDATUM, KILEPESDATUM) (
|
||||
SELECT T_FELHASZNALO_OSSZES.ID AS TANULOID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN (
|
||||
SELECT C_TANULOID, C_OSZTALYCSOPORTID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES
|
||||
WHERE T_TANULOCSOPORT_OSSZES.TOROLT = 'F' AND T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < @idoszakVege
|
||||
AND (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
|
||||
WHERE T_FELHASZNALO_OSSZES.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND T_FELHASZNALO_OSSZES.C_TANEVID = @pTanevId
|
||||
);
|
||||
--TANULÓK LISTA
|
||||
INSERT INTO #osztalyokTanulokszama (OSZTALYID, TANULOKSZAMA)
|
||||
SELECT @pOsztalyId AS OSZTALYID, COUNT(T_FELHASZNALO_OSSZES.ID) AS TANULOKSZAMA
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN #osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = T_FELHASZNALO_OSSZES.ID;
|
||||
|
||||
--ÉRTÉKELÉS LISTA
|
||||
IF OBJECT_ID('tempdb..#tempOsztalyErtekelesek') IS NOT NULL
|
||||
DROP TABLE #tempOsztalyErtekelesek;
|
||||
SELECT * INTO #tempOsztalyErtekelesek FROM fnGetDokumentumErtekelesekOsztalyonkent (@pTanevId, @pOsztalyId, @pErtekelestipusaId, DEFAULT, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT) AS ERTEKELESEK
|
||||
|
||||
INSERT INTO #osztalyokErtekeles (OSZTALYID, TANTARGYID, ATLAG)
|
||||
SELECT @pOsztalyId AS OSZTALYID, TantargyId, ROUND(AVG(CAST(ErtekelesOsztalyzatValue AS FLOAT)), 2) AS ATLAG
|
||||
FROM #tempOsztalyErtekelesek AS ERTEKELESEK
|
||||
INNER JOIN #osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = ERTEKELESEK.TanuloId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = ERTEKELESEK.TargyKategoriaId AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE TantargyId IS NOT NULL AND (FotargyE = 'T' OR Altantargy = 'T') AND ErtekelesOsztalyzatValue IS NOT NULL
|
||||
GROUP BY TantargyId;
|
||||
--MAGATARTAS-SZORGALOM LISTA
|
||||
INSERT INTO #osztalyokMagszorg (OSZTALYID, MAGATLAG, SZORGATLAG)
|
||||
SELECT @pOsztalyId AS OSZTALYID, ROUND(AVG(CAST(COALESCE(MagatartasOsztalyzatValue, MagatartasErtekOsztalyzatkent) AS FLOAT)), 2) AS MAGATLAG, ROUND(AVG(CAST(COALESCE(SzorgalomOsztalyzatValue, SzorgalomErtekOsztalyzatkent) AS FLOAT)), 2) AS SZORGATLAG
|
||||
FROM #tempOsztalyErtekelesek AS ERTEKELESEK
|
||||
INNER JOIN #osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = ERTEKELESEK.TanuloId
|
||||
WHERE TantargyId IS NULL AND COALESCE(MagatartasOsztalyzatValue, MagatartasErtekOsztalyzatkent) IS NOT NULL AND COALESCE(SzorgalomOsztalyzatValue, SzorgalomErtekOsztalyzatkent) IS NOT NULL ;
|
||||
|
||||
--MULASZTÁS
|
||||
INSERT INTO #szurtMulasztas (TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, C_GYAKORLATI, KESESPERC, MULASZTASOK_SZAMA)
|
||||
SELECT TIPUS_CHAR, TIPUS, IGAZOLT, TanuloMulasztas.TANULOID, GYAKORLATI, SUM(KESESPERC), SUM(MULASZTASOK_SZAMA)
|
||||
FROM #tempMulasztas AS TanuloMulasztas
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') AS TANULO ON TANULO.TanuloId = TanuloMulasztas.TANULOID
|
||||
INNER JOIN #osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = TanuloMulasztas.TanuloId
|
||||
WHERE TANULO.BelepesDatum <= DATUM
|
||||
AND (TANULO.KilepesDatum IS NULL OR TANULO.KilepesDatum >= DATUM)
|
||||
AND (IIF(@pAtsoroltTanuloAdatok > 0, 1, 0) = 1 OR (OSZTALYCSOPORTID IN (SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT))))
|
||||
AND (@idoszakEleje IS NULL OR DATUM >= @idoszakEleje)
|
||||
AND (@idoszakVege IS NULL OR DATUM <= @idoszakVege)
|
||||
GROUP BY TIPUS_CHAR, TIPUS, IGAZOLT, TanuloMulasztas.TANULOID, GYAKORLATI
|
||||
DROP TABLE IF EXISTS #OsztalyHozottMulasztas
|
||||
CREATE TABLE #OsztalyHozottMulasztas (OsztalyID INT, HozottIgazolt INT, HozottIgazolatlan INT)
|
||||
INSERT INTO #OsztalyHozottMulasztas (OsztalyID, HozottIgazolt, HozottIgazolatlan)
|
||||
SELECT
|
||||
o.ID
|
||||
,SUM(IIF( tcs.C_BELEPESDATUM < @idoszakVege,ISNULL(tta.C_HOZOTTIGAZOLTHIANYZAS,0),0))
|
||||
,SUM(IIF( tcs.C_BELEPESDATUM < @idoszakVege,ISNULL(tta.C_HOZOTTIGAZOLATLANHIANYZAS,0),0))
|
||||
FROM T_OSZTALY_OSSZES o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID= o.ID AND ocs.TOROLT = 'F'
|
||||
LEFT JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND ocs.C_TANEVID = @pTanevId AND tcs.TOROLT = 'F'
|
||||
LEFT JOIN T_TANULOTANUGYIADATOK tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.C_TANEVID = @pTanevId AND tta.TOROLT = 'F'
|
||||
WHERE C_ALTANEVID = @pTanevId AND o.TOROLT = 'F'
|
||||
GROUP BY o.ID
|
||||
|
||||
IF @pElmeletgyakorlat=0
|
||||
BEGIN
|
||||
INSERT INTO #osztalyokMulasztas (OSZTALYID, TIPUS_CHAR, C_TIPUS, C_IGAZOLT, MULASZTASOK_SZAMA, C_GYAKORLATI, DESCR)
|
||||
SELECT @pOsztalyId AS OSZTALYID, TIPUS_CHAR, C_TIPUS, C_IGAZOLT, CASE WHEN TIPUS_CHAR = 'K' THEN SUM(KESESORA) ELSE SUM(MULASZTASOK_SZAMA) END MULASZTASOK_SZAMA, 'F' AS C_GYAKORLATI, TIPUS_CHAR + C_IGAZOLT + 'F' AS DESCR
|
||||
FROM (
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, SUM(KESESPERC) AS KESESPERC, SUM(KESESPERC)/45 AS KESESORA, SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA
|
||||
FROM #szurtMulasztas
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID
|
||||
) AS T_SUM_MULASZTAS
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT
|
||||
ORDER BY C_TIPUS DESC, C_IGAZOLT DESC;
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO #osztalyokMulasztas (OSZTALYID, TIPUS_CHAR, C_TIPUS, C_IGAZOLT, MULASZTASOK_SZAMA, C_GYAKORLATI, DESCR)
|
||||
SELECT @pOsztalyId AS OSZTALYID, TIPUS_CHAR, C_TIPUS, C_IGAZOLT, CASE WHEN TIPUS_CHAR = 'K' THEN SUM(KESESORA) ELSE SUM(MULASZTASOK_SZAMA) END MULASZTASOK_SZAMA, C_GYAKORLATI, TIPUS_CHAR + C_IGAZOLT + C_GYAKORLATI
|
||||
FROM (
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, KESESPERC, KESESPERC/(CASE WHEN C_GYAKORLATI = 'T' THEN 45 ELSE 45 END) AS KESESORA, MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM #szurtMulasztas
|
||||
) AS T_SUM_MULASZTAS
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_GYAKORLATI, C_IGAZOLT
|
||||
ORDER BY C_TIPUS DESC, C_IGAZOLT DESC;
|
||||
END
|
||||
END
|
||||
UPDATE om SET MULASZTASOK_SZAMA = MULASZTASOK_SZAMA + IIF(om.DESCR = 'HTF',hm.HozottIgazolt, IIF(om.DESCR = 'HFF',hm.HozottIgazolatlan,0)) FROM #osztalyokMulasztas om LEFT JOIN #OsztalyHozottMulasztas hm ON hm.OsztalyID = om.OSZTALYID
|
||||
DROP TABLE IF EXISTS #OsztalyHozottMulasztas
|
||||
|
||||
DECLARE @cols AS NVARCHAR(MAX);
|
||||
DECLARE @colsHeader AS NVARCHAR(MAX);
|
||||
DECLARE @query AS NVARCHAR(MAX);
|
||||
SELECT OSZTALYID, TANTARGYID, ATLAG
|
||||
INTO #tempErtekeles
|
||||
FROM #osztalyokErtekeles;
|
||||
SELECT OSZTALYID, MAGATLAG, SZORGATLAG
|
||||
INTO #tempMagSzorgErtekeles
|
||||
FROM #osztalyokMagszorg;
|
||||
SELECT OSZTALYID, TANULOKSZAMA
|
||||
INTO #tempTanulokszama
|
||||
FROM #osztalyokTanulokszama;
|
||||
|
||||
SELECT @colsHeader = ISNULL(@colsHeader + ', ', '') + QUOTENAME(TANTARGYAK.TANTARGYID) + ' AS ' + QUOTENAME(TANTARGYAK.TANTARGY_NEV),
|
||||
@cols = ISNULL(@cols + ', ', '') + QUOTENAME(TANTARGYAK.TANTARGYID)
|
||||
FROM (
|
||||
SELECT DISTINCT TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_SORSZAM
|
||||
FROM #tantargyak
|
||||
) AS TANTARGYAK
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
SET @query =
|
||||
'SELECT NEV AS [Osztályok], TANULOILETSZAM.TANULOKSZAMA AS [Tanulók száma], MAGSZORGERTEKELES.MAGATLAG AS [Magatartás átlag], MAGSZORGERTEKELES.SZORGATLAG AS [Szorgalom átlag], ' + @colsHeader + '
|
||||
FROM (SELECT OSZTALYID, NEV, Row# FROM #tempOsztalyok) AS OSZTALYOK
|
||||
LEFT JOIN (
|
||||
SELECT OSZTALYID AS E_OSZTALYID, TANTARGYID, ATLAG
|
||||
FROM #tempErtekeles
|
||||
) AS ERTEKELES ON ERTEKELES.E_OSZTALYID = OSZTALYOK.OSZTALYID
|
||||
PIVOT (
|
||||
MAX(ATLAG)
|
||||
FOR TANTARGYID IN (' + @cols + ')
|
||||
) AS PIVOTTABLE
|
||||
LEFT JOIN #tempTanulokszama AS TANULOILETSZAM ON PIVOTTABLE.OSZTALYID = TANULOILETSZAM.OSZTALYID
|
||||
LEFT JOIN (
|
||||
SELECT OSZTALYID AS MSZE_OSZTALYID, MAGATLAG, SZORGATLAG
|
||||
FROM #tempMagSzorgErtekeles
|
||||
) AS MAGSZORGERTEKELES ON PIVOTTABLE.OSZTALYID = MAGSZORGERTEKELES.MSZE_OSZTALYID
|
||||
ORDER BY Row#';
|
||||
execute(@query);
|
||||
|
||||
SELECT * INTO #tempForPivotMulasztas
|
||||
FROM #osztalyokMulasztas;
|
||||
|
||||
IF @pElmeletgyakorlat=0
|
||||
BEGIN
|
||||
SET @cols = 'HTF,KTF,HFF,KFF'
|
||||
SET @colsHeader = 'HTF AS [Igazolt hiányzás],KTF AS [Igazolt késés (óra)],HFF AS [Igazolatlan hiányzás],KFF AS [Igazolatlan késés (óra)]'
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @cols = 'HTF,KTF,HFF,KFF,HTT,KTT,HFT,KFT'
|
||||
SET @colsHeader = 'HTF AS [Elméleti igazolt hiányzás],KTF AS [Elméleti igazolt késés (óra)],HFF AS [Elméleti igazolatlan hiányzás],KFF AS [Elméleti igazolatlan késés (óra)],HTT AS [Gyakorlati igazolt hiányzás],KTT AS [Gyakorlati igazolt késés (óra)],HFT AS [Gyakorlati igazolatlan hiányzás],KFT AS [Gyakorlati igazolatlan késés (óra)]'
|
||||
END
|
||||
SET @query =
|
||||
'SELECT ' + @colsHeader + '
|
||||
FROM (SELECT OSZTALYID, NEV, Row# FROM #tempOsztalyok) AS OSZTALYOK
|
||||
LEFT JOIN (
|
||||
SELECT OSZTALYID AS M_OSZTALYID, MULASZTASOK_SZAMA, DESCR
|
||||
FROM #tempForPivotMulasztas
|
||||
) AS MULASZTAS ON MULASZTAS.M_OSZTALYID = OSZTALYOK.OSZTALYID
|
||||
PIVOT (
|
||||
MAX(MULASZTASOK_SZAMA)
|
||||
FOR DESCR IN (' + @cols + ')
|
||||
) AS PIVOTTABLE
|
||||
ORDER BY Row#';
|
||||
execute(@query);
|
||||
|
||||
select OSZTALYID AS OsztalyId
|
||||
,EVFOLYAM AS EvfolyamTipusa
|
||||
,FeladatEllatasiHelyId
|
||||
,KepzesiForma
|
||||
,OsztalyfonokId
|
||||
,TantervId
|
||||
,OJAranyJanosProgram
|
||||
,OJCSJKeresztfeleves
|
||||
,OJGyogypedagogiai
|
||||
,OJKettannyelvu
|
||||
,OJLogopediai
|
||||
,OJNemzetisegi
|
||||
,OJNyelviElokeszito
|
||||
,OJSportOsztaly
|
||||
,OJTechnikaiOsztaly
|
||||
,SzakmaCsoport
|
||||
,Agazat
|
||||
,Szakkepesites
|
||||
,Reszszakkepesites from #tempOsztalyok;
|
||||
|
||||
DROP TABLE IF EXISTS #tempOsztalyok
|
||||
DROP TABLE IF EXISTS #tempTanulokszama
|
||||
DROP TABLE IF EXISTS #tempErtekeles
|
||||
DROP TABLE IF EXISTS #tempForPivotMulasztas
|
||||
|
||||
DROP TABLE IF EXISTS #tempOsztalyErtekelesek;
|
||||
DROP TABLE IF EXISTS #tempMulasztas;
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,182 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakGyakorlatiOraMulasztasiSzazalekStatisztika]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakGyakorlatiOraMulasztasiSzazalekStatisztika]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakGyakorlatiOraMulasztasiSzazalekStatisztika]
|
||||
@pTanevId INT,
|
||||
@pOsztalyId INT,
|
||||
@pMulasztasTipusIdKeses INT = 1499,
|
||||
@pMulasztasTipusIdHianyzas INT = 1500,
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pMegtartottVagyMegtarthato INT = 1,
|
||||
@pAtsoroltTanuloAdatok INT = 1,
|
||||
@tanitasiHetekSzamaVegzos INT,
|
||||
@tanitasiHetekSzamaNemVegzos INT,
|
||||
@isAltantargyBeszamitasa BIT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @iskolaErdekuParam INT = 1683;
|
||||
DECLARE @iskolaErdekuSzamit BIT = dbo.fnGetRendszerbeallitasEnumBool(@iskolaErdekuParam, (SELECT C_INTEZMENYID FROM T_TANEV_OSSZES WHERE ID = @pTanevId), @pTanevId);
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pTanevrendjeTanevKezdeteNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
DECLARE @idoszakVege DATE = GETDATE();
|
||||
DECLARE @osztalyTanulok TABLE (TANULOID INT PRIMARY KEY, TANULONEV NVARCHAR(MAX), BELEPESDATUM DATE, KILEPESDATUM DATE, OKTATASIAZONOSITO NVARCHAR(20));
|
||||
DECLARE @tantargyak TABLE(TANTARGYID INT, TANTARGY_NEV NVARCHAR(MAX), TARGYKATEGORIA_NEV NVARCHAR(MAX), TARGYKATEGORIA_SORSZAM INT, C_FOTARGYE CHAR(1), C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1));
|
||||
INSERT INTO @osztalyTanulok (TANULOID, TANULONEV, BELEPESDATUM, KILEPESDATUM, OKTATASIAZONOSITO)
|
||||
SELECT FELHASZNALO.ID AS TANULOID, C_NYOMTATASINEV, C_BELEPESDATUM, C_KILEPESDATUM, C_OKTATASIAZONOSITO
|
||||
FROM T_FELHASZNALO_OSSZES AS FELHASZNALO
|
||||
INNER JOIN (
|
||||
SELECT C_TANULOID, C_OSZTALYCSOPORTID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES AS TANULOCSOPORT
|
||||
WHERE TANULOCSOPORT.TOROLT = 'F' AND TANULOCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND TANULOCSOPORT.C_BELEPESDATUM < @idoszakVege
|
||||
AND (TANULOCSOPORT.C_KILEPESDATUM IS NULL OR TANULOCSOPORT.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = FELHASZNALO.ID
|
||||
WHERE FELHASZNALO.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND FELHASZNALO.C_TANEVID = @pTanevId;
|
||||
|
||||
DECLARE @aktualisOsztalyCsoportok TABLE (OSZTALYCSOPORTID INT);
|
||||
IF @pAtsoroltTanuloAdatok = 0
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
END
|
||||
ELSE IF @pAtsoroltTanuloAdatok = 1
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetKapcsolodoOsztalycsoportokByDate(@pOsztalyId, @idoszakEleje, @idoszakVege)
|
||||
WHERE (ID IN (SELECT ID FROM T_OSZTALY_OSSZES) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))));
|
||||
END
|
||||
|
||||
INSERT INTO @tantargyak (TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN)
|
||||
SELECT DISTINCT TANTARGYAK.ID AS TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM (
|
||||
SELECT DISTINCT C_TANTARGYID AS ID, COALESCE(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_FOGLALKOZAS_OSSZES
|
||||
INNER JOIN @aktualisOsztalyCsoportok AS OSZTALYCSOPORT ON OSZTALYCSOPORT.OSZTALYCSOPORTID = T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = T_FOGLALKOZAS_OSSZES.C_TANTARGYID AND TANTARGY.C_TANEVID = T_FOGLALKOZAS_OSSZES.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGY.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE T_FOGLALKOZAS_OSSZES.TOROLT = 'F' AND TANTARGY.C_GYAKORLATI = 'T'
|
||||
UNION
|
||||
SELECT DISTINCT C_TANTARGYID AS ID, COALESCE(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANITASIORA_OSSZES
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = T_TANITASIORA_OSSZES.C_TANTARGYID AND TANTARGY.C_TANEVID = T_TANITASIORA_OSSZES.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGY.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE T_TANITASIORA_OSSZES.TOROLT = 'F' AND C_OSZTALYCSOPORTID IN (SELECT OSZTALYCSOPORTID FROM @aktualisOsztalyCsoportok) AND TANTARGY.C_GYAKORLATI = 'T'
|
||||
) AS TANTARGYAK
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
|
||||
|
||||
SELECT DISTINCT TANULOID, TANULONEV, OKTATASIAZONOSITO
|
||||
FROM @osztalyTanulok
|
||||
ORDER BY TANULONEV;
|
||||
SELECT DISTINCT TANTARGYID, TANTARGY_NEV
|
||||
FROM @tantargyak;
|
||||
SELECT * INTO #tempMulasztas FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes (@pTanevId, @pOsztalyId, @iskolaErdekuSzamit, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT, DEFAULT, DEFAULT) WHERE Tipusa IN (@pMulasztasTipusIdKeses, @pMulasztasTipusIdHianyzas)
|
||||
CREATE TABLE #tempTanorak (Orakszama INT, TanuloId INT, TantargyId INT, TantargyNev NVARCHAR(MAX) COLLATE Hungarian_CI_AI, Fotargye CHAR(1) COLLATE Hungarian_CI_AI, Altargye CHAR(1) COLLATE Hungarian_CI_AI, Gyakorlati CHAR(1) COLLATE Hungarian_CI_AI)
|
||||
IF @pMegtartottVagyMegtarthato = 1
|
||||
BEGIN
|
||||
INSERT INTO #tempTanorak
|
||||
SELECT Orakszama, TanuloId, TantargyId, TantargyNev, Fotargye, Altargye, Gyakorlati
|
||||
FROM fnGetDokumentumOsztalyTanuloinakMegtarthatoOrakTantargyankent (@pTanevId, @pOsztalyId, @pAtsoroltTanuloAdatok, @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos, @isAltantargyBeszamitasa)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO #tempTanorak
|
||||
SELECT Orakszama, TanuloId, TantargyId, TantargyNev, Fotargye, Altargye, Gyakorlati
|
||||
FROM fnGetDokumentumOsztalyTanuloinakMegtartottOrakTantargyankent (@pTanevId, @pOsztalyId, @pAtsoroltTanuloAdatok)
|
||||
END
|
||||
SELECT MegtartottOrak.TanuloId, MegtartottOrak.TantargyId, MegtartottOrak.Gyakorlati,
|
||||
CAST(Mulasztasokszam AS float) / Orakszama AS MulasztasArany, CAST(Mulasztasokszam AS float) / Orakszama * 100 AS MulasztasSzazalek,
|
||||
CAST(Mulasztasokszam AS NVARCHAR) + '/' + CAST(Orakszama AS NVARCHAR) AS Info
|
||||
FROM (
|
||||
SELECT SUM(CAST(IIF(Tipusa = @pMulasztasTipusIdHianyzas, 1, IIF(Tipusa = @pMulasztasTipusIdKeses,CAST(KesesPercben AS FLOAT) / 45, 0)) AS FLOAT)) AS Mulasztasokszam, TanuloId, TantargyId, Gyakorlati
|
||||
FROM #tempMulasztas
|
||||
WHERE Gyakorlati = 'T'
|
||||
GROUP BY TanuloId, TantargyId, Gyakorlati
|
||||
) AS Mulasztasok
|
||||
INNER JOIN (
|
||||
SELECT Orakszama, Tanuloid, TantargyId, Gyakorlati, TantargyNev
|
||||
FROM #tempTanorak
|
||||
WHERE Gyakorlati = 'T'
|
||||
) AS MegtartottOrak
|
||||
ON MegtartottOrak.TantargyId = Mulasztasok.TantargyId
|
||||
AND MegtartottOrak.TanuloId = Mulasztasok.TanuloId
|
||||
AND MegtartottOrak.Gyakorlati = Mulasztasok.Gyakorlati
|
||||
ORDER BY TanuloId, TantargyId
|
||||
SELECT MegtartottOrak.TanuloId, MegtartottOrak.Gyakorlati,
|
||||
CAST(Mulasztasokszam AS float) / Orakszama AS MulasztasArany, CAST(Mulasztasokszam AS float) / Orakszama * 100 AS MulasztasSzazalek,
|
||||
CAST(Mulasztasokszam AS NVARCHAR) + '/' + CAST(Orakszama AS NVARCHAR) AS Info
|
||||
FROM (
|
||||
SELECT SUM(CAST(IIF(Tipusa = @pMulasztasTipusIdHianyzas, 1, IIF(Tipusa = @pMulasztasTipusIdKeses,CAST(KesesPercben AS FLOAT) / 45, 0)) AS FLOAT)) AS Mulasztasokszam, TanuloId, Gyakorlati
|
||||
FROM #tempMulasztas
|
||||
WHERE Gyakorlati = 'T'
|
||||
GROUP BY TanuloId, Gyakorlati
|
||||
) AS Mulasztasok
|
||||
INNER JOIN (
|
||||
SELECT Tanuloid, Gyakorlati, SUM(Orakszama) as Orakszama
|
||||
FROM #tempTanorak
|
||||
WHERE Gyakorlati = 'T'
|
||||
GROUP BY Tanuloid, Gyakorlati
|
||||
) AS MegtartottOrak
|
||||
ON
|
||||
MegtartottOrak.TanuloId = Mulasztasok.TanuloId
|
||||
AND MegtartottOrak.Gyakorlati = Mulasztasok.Gyakorlati
|
||||
ORDER BY TanuloId
|
||||
IF OBJECT_ID('tempdb..#tempTanorak') IS NOT NULL DROP TABLE #tempTanorak
|
||||
IF OBJECT_ID('tempdb..#tempMulasztas') IS NOT NULL DROP TABLE #tempMulasztas
|
||||
|
||||
-- Osztály adatok az iktatáshoz
|
||||
SELECT
|
||||
f.C_NYOMTATASINEV Osztalyfonok
|
||||
,f.ID OsztalyfonokId
|
||||
,ocs.C_NEV Osztalynev
|
||||
,@pOsztalyId OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID TantervId
|
||||
,ocs.C_KEPZESIFORMA KepzesiForma
|
||||
,o.C_AGAZAT Agazat
|
||||
,o.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.id
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = o.C_OSZTALYFONOKID
|
||||
WHERE
|
||||
ocs.ID = @pOsztalyId AND ocs.C_TANEVID = @pTanevId AND ocs.TOROLT = 'F';
|
||||
END;
|
||||
|
||||
|
||||
GO
|
@@ -0,0 +1,160 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakMulasztasiSzazalekStatisztika]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakMulasztasiSzazalekStatisztika]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakMulasztasiSzazalekStatisztika]
|
||||
@pTanevId INT,
|
||||
@pOsztalyId INT,
|
||||
@pMulasztasTipusIdKeses INT = 1499,
|
||||
@pMulasztasTipusIdHianyzas INT = 1500,
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pMegtartottVagyMegtarthato INT = 1,
|
||||
@pAtsoroltTanuloAdatok INT = 1,
|
||||
@tanitasiHetekSzamaVegzos INT = 32,
|
||||
@tanitasiHetekSzamaNemVegzos INT = 36,
|
||||
@isAltantargyBeszamitasa BIT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @iskolaErdekuParam INT = 1683;
|
||||
DECLARE @iskolaErdekuSzamit BIT = dbo.fnGetRendszerbeallitasEnumBool(@iskolaErdekuParam, (SELECT C_INTEZMENYID FROM T_TANEV_OSSZES WHERE ID = @pTanevId), @pTanevId);
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pTanevrendjeTanevKezdeteNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
DECLARE @idoszakVege DATE = GETDATE();
|
||||
DECLARE @osztalyTanulok TABLE (TANULOID INT PRIMARY KEY, TANULONEV NVARCHAR(MAX), BELEPESDATUM DATE, KILEPESDATUM DATE, OKTATASIAZONOSITO NVARCHAR(20));
|
||||
DECLARE @tantargyak TABLE(TANTARGYID INT, TANTARGY_NEV NVARCHAR(MAX), TARGYKATEGORIA_NEV NVARCHAR(MAX), TARGYKATEGORIA_SORSZAM INT, C_FOTARGYE CHAR(1), C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1));
|
||||
INSERT INTO @osztalyTanulok (TANULOID, TANULONEV, BELEPESDATUM, KILEPESDATUM, OKTATASIAZONOSITO)
|
||||
SELECT FELHASZNALO.ID AS TANULOID, C_NYOMTATASINEV, C_BELEPESDATUM, C_KILEPESDATUM, C_OKTATASIAZONOSITO
|
||||
FROM T_FELHASZNALO_OSSZES AS FELHASZNALO
|
||||
INNER JOIN (
|
||||
SELECT C_TANULOID, C_OSZTALYCSOPORTID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES AS TANULOCSOPORT
|
||||
WHERE TANULOCSOPORT.TOROLT = 'F' AND TANULOCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND TANULOCSOPORT.C_BELEPESDATUM < @idoszakVege
|
||||
AND (TANULOCSOPORT.C_KILEPESDATUM IS NULL OR TANULOCSOPORT.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = FELHASZNALO.ID
|
||||
WHERE FELHASZNALO.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND FELHASZNALO.C_TANEVID = @pTanevId;
|
||||
|
||||
DECLARE @aktualisOsztalyCsoportok TABLE (OSZTALYCSOPORTID INT);
|
||||
IF @pAtsoroltTanuloAdatok = 0
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
END
|
||||
ELSE IF @pAtsoroltTanuloAdatok = 1
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetKapcsolodoOsztalycsoportokByDate(@pOsztalyId, @idoszakEleje, @idoszakVege)
|
||||
WHERE (ID IN (SELECT ID FROM T_OSZTALY_OSSZES) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))));
|
||||
END
|
||||
|
||||
INSERT INTO @tantargyak (TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN)
|
||||
SELECT DISTINCT TANTARGYAK.ID AS TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM (
|
||||
SELECT DISTINCT C_TANTARGYID AS ID, COALESCE(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_FOGLALKOZAS_OSSZES
|
||||
INNER JOIN @aktualisOsztalyCsoportok AS OSZTALYCSOPORT ON OSZTALYCSOPORT.OSZTALYCSOPORTID = T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = T_FOGLALKOZAS_OSSZES.C_TANTARGYID AND TANTARGY.C_TANEVID = T_FOGLALKOZAS_OSSZES.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGY.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE T_FOGLALKOZAS_OSSZES.TOROLT = 'F'
|
||||
UNION
|
||||
SELECT DISTINCT C_TANTARGYID AS ID, COALESCE(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANITASIORA_OSSZES
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = T_TANITASIORA_OSSZES.C_TANTARGYID AND TANTARGY.C_TANEVID = T_TANITASIORA_OSSZES.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGY.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE T_TANITASIORA_OSSZES.TOROLT = 'F' AND C_OSZTALYCSOPORTID IN (SELECT OSZTALYCSOPORTID FROM @aktualisOsztalyCsoportok)
|
||||
) AS TANTARGYAK
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
|
||||
SELECT DISTINCT TANULOID, TANULONEV, OKTATASIAZONOSITO
|
||||
FROM @osztalyTanulok
|
||||
ORDER BY TANULONEV;
|
||||
SELECT DISTINCT TANTARGYID, TANTARGY_NEV
|
||||
FROM @tantargyak;
|
||||
SELECT * INTO #tempMulasztas FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes (@pTanevId, @pOsztalyId, @iskolaErdekuSzamit, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT, DEFAULT, DEFAULT) WHERE Tipusa IN (@pMulasztasTipusIdKeses, @pMulasztasTipusIdHianyzas)
|
||||
CREATE TABLE #tempTanorak (Orakszama INT, TanuloId INT, TantargyId INT, TantargyNev NVARCHAR(MAX) COLLATE Hungarian_CI_AI, Fotargye CHAR(1) COLLATE Hungarian_CI_AI, Altargye CHAR(1) COLLATE Hungarian_CI_AI, Gyakorlati CHAR(1) COLLATE Hungarian_CI_AI)
|
||||
IF @pMegtartottVagyMegtarthato = 1
|
||||
BEGIN
|
||||
INSERT INTO #tempTanorak
|
||||
SELECT Orakszama, TanuloId, TantargyId, TantargyNev, Fotargye, Altargye, Gyakorlati
|
||||
FROM fnGetDokumentumOsztalyTanuloinakMegtarthatoOrakTantargyankent (@pTanevId, @pOsztalyId, @pAtsoroltTanuloAdatok, @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos, @isAltantargyBeszamitasa)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO #tempTanorak
|
||||
SELECT Orakszama, TanuloId, TantargyId, TantargyNev, Fotargye, Altargye, Gyakorlati
|
||||
FROM fnGetDokumentumOsztalyTanuloinakMegtartottOrakTantargyankent (@pTanevId, @pOsztalyId, @pAtsoroltTanuloAdatok)
|
||||
END
|
||||
SELECT MegtartottOrak.TanuloId, MegtartottOrak.TantargyId, MegtartottOrak.Gyakorlati,
|
||||
IIF(ISNULL(Orakszama,0) = 0, 0, CAST(Mulasztasokszam AS float) / Orakszama) AS MulasztasArany,
|
||||
IIF(ISNULL(Orakszama,0) = 0, 0 ,CAST(Mulasztasokszam AS float) / Orakszama * 100) AS MulasztasSzazalek,
|
||||
CAST(Mulasztasokszam AS NVARCHAR) + '/' + CAST(Orakszama AS NVARCHAR) AS Info
|
||||
FROM (
|
||||
SELECT SUM(CAST(IIF(Tipusa = @pMulasztasTipusIdHianyzas, 1, IIF(Tipusa = @pMulasztasTipusIdKeses,CAST(KesesPercben AS FLOAT) / 45, 0)) AS FLOAT)) AS Mulasztasokszam, TanuloId, TantargyId, Gyakorlati
|
||||
FROM #tempMulasztas
|
||||
GROUP BY TanuloId, TantargyId, Gyakorlati
|
||||
) AS Mulasztasok
|
||||
INNER JOIN (
|
||||
SELECT Orakszama, Tanuloid, TantargyId, Gyakorlati, TantargyNev
|
||||
FROM #tempTanorak
|
||||
) AS MegtartottOrak
|
||||
ON MegtartottOrak.TantargyId = Mulasztasok.TantargyId
|
||||
AND MegtartottOrak.TanuloId = Mulasztasok.TanuloId
|
||||
AND MegtartottOrak.Gyakorlati = Mulasztasok.Gyakorlati
|
||||
INNER JOIN T_FELHASZNALO ON T_FELHASZNALO.ID = MegtartottOrak.TanuloId
|
||||
IF OBJECT_ID('tempdb..#tempTanorak') IS NOT NULL DROP TABLE #tempTanorak
|
||||
IF OBJECT_ID('tempdb..#tempMulasztas') IS NOT NULL DROP TABLE #tempMulasztas
|
||||
|
||||
-- Osztály adatok az iktatáshoz
|
||||
SELECT
|
||||
f.C_NYOMTATASINEV Osztalyfonok
|
||||
,f.ID OsztalyfonokId
|
||||
,ocs.C_NEV Osztalynev
|
||||
,@pOsztalyId OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID TantervId
|
||||
,ocs.C_KEPZESIFORMA KepzesiForma
|
||||
,o.C_AGAZAT Agazat
|
||||
,o.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.id
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = o.C_OSZTALYFONOKID
|
||||
WHERE
|
||||
ocs.ID = @pOsztalyId AND ocs.C_TANEVID = @pTanevId AND ocs.TOROLT = 'F';
|
||||
END;
|
||||
|
||||
GO
|
@@ -0,0 +1,452 @@
|
||||
DROP PROCEDURE IF EXISTS [dbo].[sp_GetErtesitoNyomtatvany]
|
||||
DROP PROCEDURE IF EXISTS [dbo].[uspGetErtesitoNyomtatvany]
|
||||
GO
|
||||
|
||||
-- =====================================================================
|
||||
-- Description: értesítõ nyomtatvány (félévi, év végi, I. negyedévi...)
|
||||
-- =====================================================================
|
||||
CREATE PROCEDURE [dbo].[uspGetErtesitoNyomtatvany]
|
||||
@pOsztalyId INT,
|
||||
@pTanevId INT,
|
||||
@pErtekelesTipus INT,
|
||||
@pElmeletGyakorlat BIT = 0,
|
||||
@pKesesTipus INT = 1499,
|
||||
@pElmeletiOraPercben INT = 45,
|
||||
@pGyakorlatiOraPercben INT = 45,
|
||||
@pIskolaErdekuSzamit BIT,
|
||||
@pIsKozossegiSzolgalat BIT,
|
||||
@pTanuloId INT = NULL,
|
||||
@pIsMuveszetOktatasi BIT = 0,
|
||||
@pIsShowTanuloiAtlag BIT = 0,
|
||||
@tanitasiHetekSzamaVegzos INT = 32,
|
||||
@tanitasiHetekSzamaNemVegzos INT = 36,
|
||||
@isAltantargyBeszamitasa BIT = 0,
|
||||
@nyomtatvanyNyelvEnum INT = 0,
|
||||
@kiiratkozottTanulokMegjelenitese BIT = 1
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @EsemenyTipus INT
|
||||
SET @EsemenyTipus = (SELECT
|
||||
CASE
|
||||
WHEN @pErtekelesTipus = 1519 THEN 1547 --félévi
|
||||
WHEN @pErtekelesTipus = 1520 THEN 1548 --év végi
|
||||
WHEN @pErtekelesTipus = 1522 THEN 1549 --I. negyedévi
|
||||
WHEN @pErtekelesTipus = 1524 THEN 1550 --II. negyedévi
|
||||
WHEN @pErtekelesTipus = 1523 THEN 1551 --III. negyedévi
|
||||
END
|
||||
)
|
||||
|
||||
DECLARE @IdoszakVegeTanevRendje INT
|
||||
SET @IdoszakVegeTanevRendje =
|
||||
CASE @pErtekelesTipus
|
||||
WHEN 1519 THEN 1400 --félévi
|
||||
WHEN 1520 THEN 1395 --év végi
|
||||
WHEN 1522 THEN 1403 --I. negyedévi
|
||||
WHEN 1524 THEN 1400 --II. negyedévi
|
||||
WHEN 1523 THEN 1404 --III. negyedévi
|
||||
END
|
||||
|
||||
DECLARE @IdoszakVege DATE = (SELECT TOP 1 ISNULL(C_DATUM, GETDATE()) FROM T_TANEVRENDJE_OSSZES tr WHERE C_NAPTIPUSA = @IdoszakVegeTanevRendje AND C_TANEVID = @pTanevId AND TOROLT = 'F')
|
||||
|
||||
-- Fejléc
|
||||
IF @pIsMuveszetOktatasi = 0 BEGIN
|
||||
SELECT T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve,
|
||||
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
|
||||
dbo.fnGetDokumentumIntezmenyCime(@pTanevId) IntezmenyCime,
|
||||
T_INTEZMENYADATOK_OSSZES.C_IGAZGATONEVE IntezmenyVezeto,
|
||||
T_INTEZMENYADATOK_OSSZES.C_OMKOD OMKod,
|
||||
T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON,
|
||||
T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM,
|
||||
T_TANEV_OSSZES.C_NEV TANEV,
|
||||
T_INTEZMENYADATOK_OSSZES.C_VAROS VAROS,
|
||||
ofo.C_NYOMTATASINEV OSZTALYFONOK,
|
||||
ofo.ID OsztalyFonokId,
|
||||
ocs.C_NEV OSZTALYNEV,
|
||||
@pOsztalyId OsztalyId,
|
||||
GETDATE() Datum
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID TantervId
|
||||
,ocs.C_KEPZESIFORMA KepzesiForma
|
||||
,o.C_AGAZAT Agazat
|
||||
,o.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
FROM T_INTEZMENYADATOK_OSSZES
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs on ocs.id = @pOsztalyId and ocs.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID and ocs.C_TANEVID = T_INTEZMENYADATOK_OSSZES.C_TANEVID and ocs.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON ocs.ID = o.ID AND o.torolt='F'
|
||||
LEFT JOIN T_FELHASZNALO ofo on ofo.ID = o.C_OSZTALYFONOKID
|
||||
INNER JOIN T_TANEV_OSSZES ON T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID AND T_TANEV_OSSZES.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID AND T_TANEV_OSSZES.TOROLT = 'F'
|
||||
WHERE T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
|
||||
AND T_TANEV_OSSZES.ID = @pTanevId
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve,
|
||||
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
|
||||
dbo.fnGetDokumentumIntezmenyCime(@pTanevId) IntezmenyCime,
|
||||
T_INTEZMENYADATOK_OSSZES.C_IGAZGATONEVE IntezmenyVezeto,
|
||||
T_INTEZMENYADATOK_OSSZES.C_OMKOD OMKod,
|
||||
T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON,
|
||||
T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM,
|
||||
T_TANEV_OSSZES.C_NEV TANEV,
|
||||
T_INTEZMENYADATOK_OSSZES.C_VAROS VAROS,
|
||||
ofo.C_NYOMTATASINEV CsoportVezeto,
|
||||
ofo.ID CsoportVezetoId,
|
||||
ocs.C_NEV OSZTALYNEV,
|
||||
@pOsztalyId CsoportId,
|
||||
GETDATE() Datum
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TIPUSA CsoportTipusa
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
FROM T_INTEZMENYADATOK_OSSZES
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs on ocs.id = @pOsztalyId and ocs.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID and ocs.C_TANEVID = T_INTEZMENYADATOK_OSSZES.C_TANEVID and ocs.TOROLT = 'F'
|
||||
INNER JOIN T_CSOPORT_OSSZES o ON ocs.ID = o.ID AND o.torolt='F'
|
||||
LEFT JOIN T_FELHASZNALO ofo on ofo.ID = o.C_CSOPORTVEZETOID
|
||||
INNER JOIN T_TANEV_OSSZES ON T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID AND T_TANEV_OSSZES.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID AND T_TANEV_OSSZES.TOROLT = 'F'
|
||||
WHERE T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
|
||||
AND T_TANEV_OSSZES.ID = @pTanevId
|
||||
END
|
||||
|
||||
-- TANULÓK
|
||||
DECLARE @Tanulok TABLE
|
||||
(
|
||||
TANULOID INT
|
||||
,TanuloCsoportId INT
|
||||
,BelepesDatum DATE
|
||||
,KilepesDatum DATE
|
||||
,TANULONEV NVARCHAR(MAX)
|
||||
,OKTATASIAZONOSITO NVARCHAR(MAX)
|
||||
,TORZSLAPSZAM NVARCHAR(MAX)
|
||||
,SZULHELY NVARCHAR(MAX), SZULIDO NVARCHAR(MAX)
|
||||
,ANYJANEVE NVARCHAR(MAX)
|
||||
,Osztaly NVARCHAR(MAX)
|
||||
,OsztalyId INT
|
||||
,Osztalyfonok NVARCHAR(MAX)
|
||||
)
|
||||
|
||||
IF @pTanuloId IS NOT NULL BEGIN
|
||||
INSERT INTO @Tanulok
|
||||
SELECT
|
||||
tanulok.TanuloId
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
,IIF(@nyomtatvanyNyelvEnum = 0, felhasznalo.C_NYOMTATASINEV, felhasznalo.C_UTONEV + ' ' + felhasznalo.C_VEZETEKNEV)
|
||||
,felhasznalo.C_OKTATASIAZONOSITO
|
||||
,tanulok.Torzslapszam
|
||||
,felhasznalo.C_SZULETESIHELY
|
||||
,dbo.fnGetDokumentumDatumFormatum(felhasznalo.C_SZULETESIDATUM)
|
||||
,felhasznalo.C_ANYJANEVE
|
||||
,dbo.fnGetDokumentumTanuloAktualisOsztaly(tanulok.TanuloId) Osztaly
|
||||
,dbo.fnGetDokumentumTanuloAktualisOsztalyId(tanulok.TanuloId) OsztalyId
|
||||
,CASE @pIsMuveszetOktatasi
|
||||
WHEN 0 THEN dbo.fnGetDokumentumTanuloAktualisOsztalyfonok(tanulok.TanuloId)
|
||||
WHEN 1 THEn dbo.fnGetDokumentumTanuloAktualisCsoportvezeto(tanulok.TanuloId, @pOsztalyId)
|
||||
END AS Osztalyfonok
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') tanulok
|
||||
INNER JOIN T_FELHASZNALO_OSSZES felhasznalo on felhasznalo.Id=tanulok.TanuloId
|
||||
WHERE
|
||||
tanulok.TanuloId = @pTanuloId
|
||||
AND (@kiiratkozottTanulokMegjelenitese = 1 OR (KilepesDatum IS NULL OR KilepesDatum > @IdoszakVege))
|
||||
|
||||
SELECT
|
||||
TANULOID
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
,TANULONEV
|
||||
,OKTATASIAZONOSITO
|
||||
,TORZSLAPSZAM
|
||||
,SZULHELY
|
||||
,SZULIDO
|
||||
,ANYJANEVE
|
||||
,Osztaly
|
||||
,OsztalyId
|
||||
,Osztalyfonok
|
||||
FROM @Tanulok
|
||||
ORDER BY TANULONEV
|
||||
|
||||
END
|
||||
ELSE BEGIN
|
||||
|
||||
INSERT INTO @Tanulok
|
||||
SELECT
|
||||
tanulok.TanuloId
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
,IIF(@nyomtatvanyNyelvEnum = 0, felhasznalo.C_NYOMTATASINEV, felhasznalo.C_UTONEV + ' ' + felhasznalo.C_VEZETEKNEV)
|
||||
,felhasznalo.C_OKTATASIAZONOSITO
|
||||
,tanulok.Torzslapszam
|
||||
,felhasznalo.C_SZULETESIHELY
|
||||
,dbo.fnGetDokumentumDatumFormatum(felhasznalo.C_SZULETESIDATUM)
|
||||
,felhasznalo.C_ANYJANEVE
|
||||
,dbo.fnGetDokumentumTanuloAktualisOsztaly(tanulok.TanuloId) Osztaly
|
||||
,dbo.fnGetDokumentumTanuloAktualisOsztalyId(tanulok.TanuloId) OsztalyId
|
||||
,CASE @pIsMuveszetOktatasi
|
||||
WHEN 0 THEN dbo.fnGetDokumentumTanuloAktualisOsztalyfonok(tanulok.TanuloId)
|
||||
WHEN 1 THEn dbo.fnGetDokumentumTanuloAktualisCsoportvezeto(tanulok.TanuloId, @pOsztalyId)
|
||||
END AS Osztalyfonok
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') tanulok
|
||||
INNER JOIN T_FELHASZNALO_OSSZES felhasznalo on felhasznalo.Id=tanulok.TanuloId
|
||||
WHERE @kiiratkozottTanulokMegjelenitese = 1 OR (KilepesDatum IS NULL OR KilepesDatum > @IdoszakVege)
|
||||
|
||||
SELECT
|
||||
TANULOID
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
,TANULONEV
|
||||
,OKTATASIAZONOSITO
|
||||
,TORZSLAPSZAM
|
||||
,SZULHELY
|
||||
,SZULIDO
|
||||
,ANYJANEVE
|
||||
,Osztaly
|
||||
,OsztalyId
|
||||
,Osztalyfonok
|
||||
FROM @Tanulok
|
||||
ORDER BY TANULONEV
|
||||
|
||||
END
|
||||
|
||||
-- ÉRTÉKELÉSEK
|
||||
DECLARE @Ertekelesek TABLE (
|
||||
TanuloId INT
|
||||
,TanuloCsoportId INT
|
||||
,Targy NVARCHAR(MAX)
|
||||
,Jegyzet NVARCHAR(MAX)
|
||||
,Ertekeles NVARCHAR(MAX)
|
||||
,ErtekelesValue FLOAT
|
||||
,ErtekelesJegyzettel NVARCHAR(MAX)
|
||||
,Oraszam FLOAT
|
||||
,RENDEZ1 INT
|
||||
,RENDEZ2 NVARCHAR(MAX)
|
||||
,RENDEZ3 INT
|
||||
,RENDEZ4 INT
|
||||
,RENDEZ5 NVARCHAR(MAX)
|
||||
)
|
||||
|
||||
INSERT INTO @Ertekelesek
|
||||
EXEC sp_GetDokumentumErtekelesek
|
||||
@osztalyId = @pOsztalyId,
|
||||
@tanevId = @pTanevId,
|
||||
@ertekelesTipus = @pErtekelesTipus,
|
||||
@isMuveszetOktatasi = @pIsMuveszetOktatasi,
|
||||
@tanitasiHetekSzamaVegzos = @tanitasiHetekSzamaVegzos,
|
||||
@tanitasiHetekSzamaNemVegzos = @tanitasiHetekSzamaNemVegzos,
|
||||
@isAltantargyBeszamitasa = @isAltantargyBeszamitasa,
|
||||
@nyomtatvanyNyelvEnum = @nyomtatvanyNyelvEnum
|
||||
|
||||
SELECT
|
||||
ertekeles.TanuloId
|
||||
,ertekeles.TanuloCsoportId
|
||||
,Targy
|
||||
,Jegyzet
|
||||
,Ertekeles
|
||||
,ErtekelesValue
|
||||
,ErtekelesJegyzettel
|
||||
,Oraszam
|
||||
,RENDEZ1
|
||||
,RENDEZ2
|
||||
,RENDEZ3
|
||||
,RENDEZ4
|
||||
,RENDEZ5
|
||||
,'' TanarNev
|
||||
FROM @Ertekelesek ertekeles
|
||||
INNER JOIN @Tanulok Tanulok ON Tanulok.TANULOID = ertekeles.TanuloId AND Tanulok.TanuloCsoportId = ertekeles.TanuloCsoportId
|
||||
ORDER BY ertekeles.TanuloId, RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5
|
||||
|
||||
IF(@pIsShowTanuloiAtlag = 1) BEGIN
|
||||
--Tanuló Átlaga
|
||||
SELECT
|
||||
atlag.TanuloId TanuloId
|
||||
,atlag.TanuloCsoportId
|
||||
,REPLACE(CAST(AVG(ErtekelesValue) AS DECIMAL(10,2)), '.', ',') ErtekelesAtlag
|
||||
FROM @Ertekelesek atlag
|
||||
INNER JOIN @Tanulok Tanulok ON Tanulok.TANULOID = atlag.TanuloId AND Tanulok.TanuloCsoportId = atlag.TanuloCsoportId
|
||||
GROUP BY atlag.TanuloId, atlag.TanuloCsoportId
|
||||
END
|
||||
|
||||
|
||||
-- MULASZTÁSOK
|
||||
DECLARE @Mulasztasok TABLE (
|
||||
TanuloId INT
|
||||
,TanuloCsoportId INT
|
||||
,Igazolt INT
|
||||
,Igazolatlan INT
|
||||
,ElmeletIgazolt INT
|
||||
,ElmeletIgazolatlan INT
|
||||
,GyakorlatIgazolt INT
|
||||
,GyakorlatIgazolatlan INT
|
||||
,ElmeletOsszes INT
|
||||
,GyakorlatOsszes INT
|
||||
,Osszes INT
|
||||
)
|
||||
|
||||
INSERT INTO @Mulasztasok
|
||||
EXEC sp_GetDokumentumMulasztasok
|
||||
@osztalyId = @pOsztalyId,
|
||||
@tanevId = @pTanevId,
|
||||
@elmeletiOraPercben = @pElmeletiOraPercben,
|
||||
@gyakorlatiOraPercben = @pGyakorlatiOraPercben,
|
||||
@ertekelesTipus = @pErtekelesTipus,
|
||||
@iskolaErdekuSzamit = @pIskolaErdekuSzamit,
|
||||
@isMuveszetOktatasi = @pIsMuveszetOktatasi
|
||||
|
||||
SELECT
|
||||
mulasztasok.TanuloId
|
||||
,mulasztasok.TanuloCsoportId
|
||||
,Igazolt
|
||||
,Igazolatlan
|
||||
,ElmeletIgazolt
|
||||
,ElmeletIgazolatlan
|
||||
,GyakorlatIgazolt
|
||||
,GyakorlatIgazolatlan
|
||||
,ElmeletOsszes
|
||||
,GyakorlatOsszes
|
||||
,Osszes
|
||||
FROM @Mulasztasok mulasztasok
|
||||
INNER JOIN @Tanulok Tanulok ON Tanulok.TANULOID = mulasztasok.TanuloId AND Tanulok.TanuloCsoportId = mulasztasok.TanuloCsoportId
|
||||
|
||||
-- TANTÁRGYI MENTESSÉGEK
|
||||
SELECT
|
||||
Mentessegek.TanuloId
|
||||
,Mentessegek.TanuloCsoportId
|
||||
,TantargyNev
|
||||
,MentessegOka
|
||||
FROM fnGetDokumentumTanuloMentessegei(@pTanevId, @pOsztalyId, DEFAULT) Mentessegek
|
||||
INNER JOIN @Tanulok Tanulok ON Tanulok.TANULOID = Mentessegek.TanuloId AND Tanulok.TanuloCsoportId = Mentessegek.TanuloCsoportId
|
||||
|
||||
--TANULÓ elérhetőségei
|
||||
SELECT
|
||||
GondviseloNev GondviseloNeve
|
||||
,Gondviselo.TanuloId
|
||||
FROM fnGetDokumentumGondviselok (@pOsztalyId, @pTanevId, 'F', 'T') Gondviselo
|
||||
INNER JOIN @Tanulok Tanulok ON Tanulok.TANULOID = Gondviselo.TanuloId
|
||||
|
||||
SELECT DISTINCT
|
||||
TanuloTable.TanuloId tanuloID
|
||||
,C_IRANYITOSZAM + ' ' + C_VAROS + ', ' + C_KOZTERULET + ' ' + kozterulet.C_NAME + ' ' + C_HAZSZAM CimText
|
||||
,cimTipus.C_NAME CimTipusa
|
||||
FROM @Tanulok TanuloTable
|
||||
INNER JOIN T_CIM_OSSZES cim ON cim.C_FELHASZNALOID = TanuloTable.TanuloId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES kozterulet ON kozterulet.Id = C_KOZTERULETJELLEGE AND kozterulet.C_TANEVID = @pTanevId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES cimTipus ON cim.C_CIMTIPUSA = cimTipus.ID AND cimTipus.C_TANEVID = @pTanevId
|
||||
WHERE
|
||||
cim.TOROLT = 'F'
|
||||
AND cim.C_GONDVISELOID IS NULL
|
||||
AND cim.C_ALAPERTELMEZETT = 'T'
|
||||
AND cim.C_TANEVID = @pTanevId
|
||||
|
||||
--Tanuló összefüggő szakmai gyakorlat
|
||||
SELECT
|
||||
SzakmaiGyakorlat.TanuloId
|
||||
,SzakmaiGyakorlat.TanuloCsoportId
|
||||
,isTeljesitett
|
||||
,Ertekeles
|
||||
,Megjegyzes
|
||||
,Datum
|
||||
FROM fnGetDokumentumOsszefuggoSzakmaiGyakorlat(@pTanevId, @pOsztalyId) SzakmaiGyakorlat
|
||||
INNER JOIN @Tanulok Tanulok ON Tanulok.TANULOID = SzakmaiGyakorlat.TanuloId AND Tanulok.TanuloCsoportId = SzakmaiGyakorlat.TanuloCsoportId
|
||||
|
||||
-- Osztály adatok az iktatáshoz
|
||||
IF @pIsMuveszetOktatasi = 0 BEGIN
|
||||
SELECT
|
||||
f.C_NYOMTATASINEV Osztalyfonok
|
||||
,f.ID OsztalyfonokId
|
||||
,ocs.C_NEV Osztalynev
|
||||
,@pOsztalyId OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID TantervId
|
||||
,ocs.C_KEPZESIFORMA KepzesiForma
|
||||
,o.C_AGAZAT Agazat
|
||||
,o.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.id
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = o.C_OSZTALYFONOKID
|
||||
WHERE
|
||||
ocs.ID = @pOsztalyId AND ocs.C_TANEVID = @pTanevId AND ocs.TOROLT = 'F';
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT
|
||||
f.C_NYOMTATASINEV CsoportVezeto
|
||||
,f.ID CsoportVezetoId
|
||||
,ocs.C_NEV OSZTALYNEV
|
||||
,@pOsztalyId CsoportId
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,cs.C_TIPUSA CsoportTipusa
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.ID = ocs.id
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = cs.C_CSOPORTVEZETOID
|
||||
WHERE
|
||||
ocs.ID = @pOsztalyId AND ocs.C_TANEVID = @pTanevId AND ocs.TOROLT = 'F';
|
||||
END
|
||||
|
||||
--Bejegyzések
|
||||
SELECT
|
||||
TanuloTable.TanuloId
|
||||
,TanuloTable.TanuloCsoportId
|
||||
,'A tanév során ' + CAST(SUM(Oraszam) AS NVARCHAR(MAX)) + ' óra közösségi szolgálatot teljesített.' Bejegyzes
|
||||
FROM fnGetDokumentumKozossegiSzolgalatOsztalyonkent (@pTanevId, @pOsztalyId) bejegyzes
|
||||
INNER JOIN @Tanulok TanuloTable ON bejegyzes.TanuloId = TanuloTable.TanuloId AND bejegyzes.TanuloCsoportId = TanuloTable.TanuloCsoportId
|
||||
WHERE
|
||||
@pIsKozossegiSzolgalat = 1
|
||||
-- AND ((@IdoszakVegeTanevRendje = 1395) OR (IntervallumVege <= @IdoszakVege OR @IdoszakVege BETWEEN IntervallumKezdete AND IntervallumVege))
|
||||
GROUP BY TanuloTable.TanuloId, TanuloTable.TanuloCsoportId
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
bejegyzes.TanuloId TanuloId
|
||||
,TanuloCsoportId
|
||||
,Tartalom Bejegyzes
|
||||
FROM fnGetDokumentumTanulokFeljegyzesei(@pTanevId, @pOsztalyId) bejegyzes
|
||||
INNER JOIN @Tanulok TanuloTable ON bejegyzes.TanuloId = TanuloTable.TanuloId
|
||||
WHERE
|
||||
Tipusa IN (1546, @EsemenyTipus)
|
||||
AND BelepesDatum <= Datum
|
||||
AND (KilepesDatum IS NULL OR KilepesDatum >= Datum)
|
||||
|
||||
-- Zaradekok
|
||||
SELECT
|
||||
Hatarozatok.TanuloId
|
||||
,Hatarozatok.TanuloCsoportId
|
||||
,Bejegyzes VegZaradek
|
||||
FROM fnGetDokumentumTanuloZaradekai(@pTanevId, @pOsztalyId, 1) Hatarozatok
|
||||
INNER JOIN @Tanulok Tanulok ON Tanulok.TANULOID = Hatarozatok.TanuloId AND Tanulok.TanuloCsoportId = Hatarozatok.TanuloCsoportId
|
||||
WHERE @pErtekelesTipus IN (1519, 1520)
|
||||
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,80 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
DROP PROCEDURE IF EXISTS uspGetIskolalatogatasiIgazolas
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetIskolalatogatasiIgazolas
|
||||
@osztalyId INT,
|
||||
@tanevId INT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
SET NOCOUNT ON;
|
||||
|
||||
-- fejléc
|
||||
SELECT
|
||||
IntezmenyAdatok.C_NEV AS IntezmenyNeve
|
||||
,IntezmenyAdatok.C_IGAZGATONEVE AS IGAZGATONEVE
|
||||
,IntezmenyAdatok.C_VAROS AS IntezmenyVaros
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@tanevId) AS IntezmenyCime
|
||||
,C_OSZTALYFONOKID AS PartnerID
|
||||
,KepzesTipus.C_NAME AS KepzesForma
|
||||
,Tanev.C_NEV AS TANEV
|
||||
,ocs.C_NEV AS Osztaly
|
||||
,@osztalyId AS OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,Osztaly.C_OSZTALYFONOKID AS OsztalyFonokId
|
||||
,Osztaly.C_TANTERVID AS TantervId
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,Osztaly.C_TECHNIKAIOSZTALY AS OJTechnikaiOsztaly
|
||||
,Osztaly.C_NEMZETISEGI AS OJNemzetisegi
|
||||
,Osztaly.C_KETTANNYELVU AS OJKettannyelvu
|
||||
,Osztaly.C_NYELVIELOKESZITO AS OJNyelviElokeszito
|
||||
,Osztaly.C_LOGOPEDIAI AS OJLogopediai
|
||||
,Osztaly.C_SPORT AS OJSportOsztaly
|
||||
,Osztaly.C_AJPROGRAM AS OJAranyJanosProgram
|
||||
,Osztaly.C_GYOGYPEDAGOGIAI AS OJGyogypedagogiai
|
||||
,Osztaly.C_SZAKMACSOPORT AS SzakmaCsoport
|
||||
,Osztaly.C_AGAZAT AS Agazat
|
||||
,Osztaly.C_SZAKKEPESITES AS Szakkepesites
|
||||
,Osztaly.C_RESZSZAKKEPESITES AS Reszszakkepesites
|
||||
FROM T_INTEZMENYADATOK_OSSZES IntezmenyAdatok
|
||||
INNER JOIN T_TANEV_OSSZES Tanev ON Tanev.ID = IntezmenyAdatok.C_TANEVID AND Tanev.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = @osztalyId AND ocs.C_TANEVID = IntezmenyAdatok.C_TANEVID AND ocs.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.C_ALTANEVID = IntezmenyAdatok.C_TANEVID AND Osztaly.ID = ocs.ID AND Osztaly.TOROLT = 'F'
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES KepzesTipus ON KepzesTipus.ID = ocs.C_KEPZESIFORMA AND KepzesTipus.C_TANEVID = IntezmenyAdatok.C_TANEVID AND KepzesTipus.TOROLT = 'F'
|
||||
WHERE IntezmenyAdatok.TOROLT = 'F' AND IntezmenyAdatok.C_TANEVID = @tanevId
|
||||
|
||||
-- tanulók
|
||||
SELECT
|
||||
Felhasznalo.C_NYOMTATASINEV TanuloNev
|
||||
,Felhasznalo.C_OKTATASIAZONOSITO OktatasiAzonosito
|
||||
,dbo.fnGetDokumentumDatumFormatum(Felhasznalo.C_SZULETESIDATUM) SzuletesiIdo
|
||||
,Felhasznalo.C_SZULETESIHELY SzuletesiHely
|
||||
,Felhasznalo.C_ANYJANEVE AnyjaNeve
|
||||
,dbo.fnGetDokumentumDatumFormatum(TanuloCsoport.C_BELEPESDATUM) JogviszonyKezdete
|
||||
,dbo.fnGetDokumentumDatumFormatum(TanugyiAdatok.C_JOGVISZONYVARHATOBEFEJEZESE) JogviszonyVarhatoBefejezese
|
||||
,dbo.fnGetDokumentumDatumFormatum(TanuloCsoport.C_KILEPESDATUM) KilepesDatum
|
||||
,IIF(TanuloCsoport.C_KILEPESDATUM IS NOT NULL AND TanuloCsoport.C_KILEPESDATUM < GETDATE(), 'T', 'F') IsKilepett
|
||||
,Felhasznalo.ID TanuloId
|
||||
,@osztalyId AS OsztalyId
|
||||
,ocs.C_NEV AS Osztaly
|
||||
,KepzesTipus.C_NAME AS KepzesForma
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') s
|
||||
INNER JOIN T_FELHASZNALO_OSSZES Felhasznalo ON Felhasznalo.Id = s.TanuloId
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport on TanuloCsoport.c_tanuloid = s.TanuloId AND TanuloCsoport.TOROLT = 'F' AND TanuloCsoport.C_TANEVID = @tanevId
|
||||
AND (TanuloCsoport.C_BELEPESDATUM < GETDATE() )
|
||||
INNER JOIN T_TANULOTANUGYIADATOK_OSSZES TanugyiAdatok ON TanugyiAdatok.C_TANULOCSOPORTID = TanuloCsoport.Id AND TanugyiAdatok.TOROLT = 'F' AND TanugyiAdatok.C_TANEVID = @tanevId
|
||||
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = TanuloCsoport.C_OSZTALYCSOPORTID AND Osztaly.TOROLT = 'F' AND Osztaly.C_ALTANEVID = TanuloCsoport.C_TANEVID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = TanuloCsoport.C_OSZTALYCSOPORTID AND ocs.TOROLT = 'F' AND ocs.C_TANEVID = TanuloCsoport.C_TANEVID
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES KepzesTipus ON KepzesTipus.ID = ocs.C_KEPZESIFORMA AND KepzesTipus.C_TANEVID = TanuloCsoport.C_TANEVID AND KepzesTipus.TOROLT = 'F'
|
||||
ORDER BY Felhasznalo.C_NYOMTATASINEV
|
||||
|
||||
END
|
||||
|
||||
GO
|
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,229 @@
|
||||
DROP PROCEDURE IF EXISTS uspGetNemNaplozottOrarendiOrak
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetNemNaplozottOrarendiOrak
|
||||
@IntezmenyId int
|
||||
,@TanevId int
|
||||
,@IdoszakKezdete datetime
|
||||
,@IdoszakVege datetime
|
||||
,@TanarId int = NULL
|
||||
,@OsztalyCsoportId int = NULL
|
||||
,@TantargyId int = NULL
|
||||
,@CsakHelyettesitesreKiirtTanorak bit = 0
|
||||
,@pFeladatKategoriaId int = NULL
|
||||
,@pDatum datetime = NULL
|
||||
,@pOraszam int = NULL
|
||||
,@pIdopont datetime = NULL
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
SET DATEFIRST 1;
|
||||
|
||||
DECLARE
|
||||
@CsakOrarendiOrak bit = 0
|
||||
|
||||
CREATE TABLE #OrarendiOrak (
|
||||
Id int
|
||||
,ORARENDIID int
|
||||
,Datum datetime
|
||||
,Bontott char (1)
|
||||
,Hetirend int
|
||||
,HetNapja int
|
||||
,HetSorszam int
|
||||
,ErvenyessegKezdete datetime
|
||||
,ErvenyessegVege datetime
|
||||
,OraKezdete datetime
|
||||
,OraVege datetime
|
||||
,Oraszam int
|
||||
,TargyNev nvarchar (300)
|
||||
,TargyNevForMobile nvarchar (300)
|
||||
,TargykategoriaID int
|
||||
,Megtartott char (1)
|
||||
,CsengetesiRendOraID int
|
||||
,CsengetesiRendID int
|
||||
,MaxNapiOraszam int
|
||||
,OsztalyNev nvarchar (255)
|
||||
,TanevRendOsztalyCsoportId int
|
||||
,MegjelenesOka nvarchar (300)
|
||||
,TanarNev nvarchar (255)
|
||||
,TeremNev nvarchar (255)
|
||||
,TeremId int
|
||||
,OraTipus nvarchar (200)
|
||||
,Hianyzas char (1)
|
||||
,Keses char (1)
|
||||
,Ures char (1)
|
||||
,HelyettesitoTanarID int
|
||||
,HelyettesitoTanarNev nvarchar (255)
|
||||
,HelyettesitesId int
|
||||
,TanarID int
|
||||
,AdminAltalKiirt char (1)
|
||||
,GroupId int
|
||||
,Tema nvarchar (max)
|
||||
,TantargyId int
|
||||
,OsztCsopId int
|
||||
,INDEX IX1 CLUSTERED(Datum, HetNapja, Oraszam, TanevRendOsztalyCsoportId, TantargyId, TanarID)
|
||||
)
|
||||
|
||||
INSERT INTO #OrarendiOrak (
|
||||
Id
|
||||
,ORARENDIID
|
||||
,Datum
|
||||
,Bontott
|
||||
,Hetirend
|
||||
,HetNapja
|
||||
,HetSorszam
|
||||
,ErvenyessegKezdete
|
||||
,ErvenyessegVege
|
||||
,OraKezdete
|
||||
,OraVege
|
||||
,Oraszam
|
||||
,TargyNev
|
||||
,TargyNevForMobile
|
||||
,TargykategoriaID
|
||||
,Megtartott
|
||||
,CsengetesiRendOraID
|
||||
,CsengetesiRendID
|
||||
,MaxNapiOraszam
|
||||
,OsztalyNev
|
||||
,TanevRendOsztalyCsoportId
|
||||
,MegjelenesOka
|
||||
,TanarNev
|
||||
,TeremNev
|
||||
,TeremId
|
||||
,OraTipus
|
||||
,Hianyzas
|
||||
,Keses
|
||||
,Ures
|
||||
,HelyettesitoTanarID
|
||||
,HelyettesitoTanarNev
|
||||
,HelyettesitesId
|
||||
,TanarID
|
||||
,AdminAltalKiirt
|
||||
,GroupId
|
||||
,Tema
|
||||
,TantargyId
|
||||
,OsztCsopId
|
||||
)
|
||||
EXEC sp_GetOrarend
|
||||
@pIntezmenyId = @IntezmenyId
|
||||
,@pTanevId = @TanevId
|
||||
,@pIdoszakKezdete = @IdoszakKezdete
|
||||
,@pIdoszakVege = @IdoszakVege
|
||||
,@pTanarId = @TanarId
|
||||
,@pIsHelyettesitesNelkul = 0
|
||||
,@pOsztalyCsoportId = @OsztalyCsoportId
|
||||
,@pTanuloId = NULL
|
||||
,@pTantargyId = @TantargyId
|
||||
,@pTeremId = NULL
|
||||
,@pCsakOrarendiOrak = 0
|
||||
,@pIsNapirend = NULL
|
||||
,@pFeladatKategoriaId = @pFeladatKategoriaId
|
||||
|
||||
SELECT
|
||||
orak.Id
|
||||
,orak.ORARENDIID
|
||||
,orak.Bontott
|
||||
,orak.Hetirend
|
||||
,orak.HetNapja
|
||||
,orak.HetSorszam
|
||||
,orak.ErvenyessegKezdete
|
||||
,orak.ErvenyessegVege
|
||||
,orak.OraKezdete
|
||||
,CONVERT(date, orak.OraKezdete) AS OraKezdeteDate
|
||||
,CONVERT(varchar (5), orak.OraKezdete, 108) AS OraKezdeteTimeText
|
||||
,orak.OraVege
|
||||
,IIF(orak.CsengetesiRendID IS NOT NULL, orak.Oraszam, NULL) AS Oraszam
|
||||
,t.C_NEV as TargyNev
|
||||
,orak.TargyNevForMobile
|
||||
,orak.TargykategoriaID
|
||||
,orak.Megtartott
|
||||
,orak.CsengetesiRendOraID
|
||||
,orak.CsengetesiRendID
|
||||
,orak.MaxNapiOraszam
|
||||
,orak.OsztalyNev
|
||||
,orak.MegjelenesOka
|
||||
,orak.TanarNev
|
||||
,f.C_OKTATASIAZONOSITO TanarOktAzon
|
||||
,orak.TeremNev
|
||||
,orak.OraTipus
|
||||
,orak.Hianyzas
|
||||
,orak.Keses
|
||||
,orak.Ures
|
||||
,orak.HelyettesitoTanarID
|
||||
,orak.HelyettesitoTanarNev
|
||||
,orak.HelyettesitesId
|
||||
,orak.TanarID
|
||||
,orak.AdminAltalKiirt
|
||||
,orak.GroupId
|
||||
,orak.Tema
|
||||
,orak.TantargyId
|
||||
,orak.OsztCsopId
|
||||
,IIF(orak.HelyettesitoTanarID IS NOT NULL, orak.TanarNev, NULL) AS HelyettesitettPedagogusNev
|
||||
,CONVERT(nvarchar (25), orak.OraKezdete, 102) AS OraKezdeteDateST
|
||||
,DATEPART(w, orak.OraKezdete) + 1407 AS HetNapjaValos
|
||||
FROM #OrarendiOrak orak
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON orak.TanarID = f.ID
|
||||
AND f.TOROLT ='F'
|
||||
AND f.C_TANEVID = @TanevId
|
||||
INNER JOIN T_TANTARGY_OSSZES t on t.ID = orak.TantargyId
|
||||
AND t.TOROLT ='F'
|
||||
AND t.C_TANEVID = @TanevId
|
||||
WHERE orak.OraTipus = 'OrarendiOra'
|
||||
AND orak.OraKezdete <= @IdoszakVege
|
||||
AND orak.OraVege >= @IdoszakKezdete
|
||||
AND (@CsakHelyettesitesreKiirtTanorak = 0 OR orak.HelyettesitoTanarNev IS NOT NULL)
|
||||
AND (ISNULL(@pDatum, CAST(OraKezdete as date)) = CAST(OraKezdete as date))
|
||||
AND (ISNULL(@pOraszam, Oraszam) = Oraszam)
|
||||
AND (
|
||||
IIF(
|
||||
@pIdopont IS NOT NULL,
|
||||
CONVERT(varchar (5), @pIdopont, 108),
|
||||
CONVERT(varchar (5), orak.OraKezdete, 108)
|
||||
) = CONVERT(varchar (5), orak.OraKezdete, 108))
|
||||
|
||||
-- Iktatás adatok
|
||||
SELECT
|
||||
@OsztalyCsoportId AS OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS Evfolyam
|
||||
,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
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,o.C_TECHNIKAIOSZTALY AS OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI AS OJNemzetisegi
|
||||
,o.C_KETTANNYELVU AS OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO AS OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI AS OJLogopediai
|
||||
,o.C_SPORT AS OJSportOsztaly
|
||||
,o.C_AJPROGRAM AS OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI AS OJGyogypedagogiai
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID AND o.TOROLT = 'F'
|
||||
AND o.C_ALTANEVID = ocs.C_TANEVID
|
||||
AND o.C_ALINTEZMENYID = ocs.C_INTEZMENYID
|
||||
WHERE ocs.ID = @OsztalyCsoportId
|
||||
AND ocs.TOROLT = 'F'
|
||||
AND ocs.C_TANEVID = @TanevId
|
||||
AND ocs.C_INTEZMENYID = @IntezmenyId
|
||||
|
||||
-- Tanár iktatás adatok
|
||||
SELECT DISTINCT
|
||||
f.ID AS TanarId
|
||||
,f.C_OKTATASIAZONOSITO AS TanarOktAzon
|
||||
FROM T_ALKALMAZOTT_OSSZES a
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.ID = a.ID AND f.TOROLT = 'F'
|
||||
AND a.C_ALTANEVID = f.C_TANEVID
|
||||
AND a.C_ALINTEZMENYID = f.C_INTEZMENYID
|
||||
LEFT JOIN #OrarendiOrak orak ON orak.TanarID = f.ID
|
||||
WHERE a.TOROLT = 'F'
|
||||
AND a.C_ALINTEZMENYID = @IntezmenyId
|
||||
AND a.C_ALTANEVID = @TanevId
|
||||
AND (@TanarId IS NULL OR f.ID = @TanarId)
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,346 @@
|
||||
DROP PROCEDURE IF EXISTS uspGetNyomtatvanyokOrarendOsszes
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetNyomtatvanyokOrarendOsszes
|
||||
@intezmenyId int
|
||||
,@tanevID int
|
||||
,@pIdoszakKezdete datetime
|
||||
,@pIdoszakVege datetime
|
||||
,@pTanarId int = NULL
|
||||
,@pIsHelyettesitesNelkul bit = 0
|
||||
,@pOsztalyCsoportId int = NULL
|
||||
,@pTanuloId int = NULL
|
||||
,@pTantargyId int = NULL
|
||||
,@pTeremId int = NULL
|
||||
,@pCsakOrarendiOrak bit = 0
|
||||
,@pIsNapirend bit /* 0 csak orarendi ora, 1 csak napirend, NULL mindkettő */
|
||||
,@pKapcsolodoCsoportokMegjelenitese bit = NULL
|
||||
,@pOsztalyBontasokMegjelenitese bit = NULL
|
||||
,@pFeladatKategoriaId int = NULL
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@intezmenyNev nvarchar(510)
|
||||
|
||||
CREATE TABLE #OrarendiOrak (
|
||||
Id int
|
||||
,ORARENDIID int
|
||||
,Datum datetime
|
||||
,Bontott char (1)
|
||||
,Hetirend int
|
||||
,HetNapja int
|
||||
,HetSorszam int
|
||||
,ErvenyessegKezdete datetime
|
||||
,ErvenyessegVege datetime
|
||||
,OraKezdete datetime
|
||||
,OraVege datetime
|
||||
,Oraszam int
|
||||
,TargyNev nvarchar (300)
|
||||
,TargyNevForMobile nvarchar (300)
|
||||
,TargykategoriaID int
|
||||
,Megtartott char (1)
|
||||
,CsengetesiRendOraID int
|
||||
,CsengetesiRendID int
|
||||
,MaxNapiOraszam int
|
||||
,OsztalyNev nvarchar (255)
|
||||
,TanevRendOsztalyCsoportId int
|
||||
,MegjelenesOka nvarchar (300)
|
||||
,TanarNev nvarchar (255)
|
||||
,TeremNev nvarchar (255)
|
||||
,TeremId int
|
||||
,OraTipus nvarchar (200)
|
||||
,Hianyzas char (1)
|
||||
,Keses char (1)
|
||||
,Ures char (1)
|
||||
,HelyettesitoTanarID int
|
||||
,HelyettesitoTanarNev nvarchar (255)
|
||||
,HelyettesitesId int
|
||||
,TanarID int
|
||||
,AdminAltalKiirt char (1)
|
||||
,GroupId int
|
||||
,Tema nvarchar (max)
|
||||
,TantargyId int
|
||||
,OsztCsopId int
|
||||
,INDEX IX1 CLUSTERED(Datum, HetNapja, Oraszam, TanevRendOsztalyCsoportId, TantargyId, TanarID)
|
||||
)
|
||||
|
||||
CREATE TABLE #Oraszamok (
|
||||
Oraszam int
|
||||
,PRIMARY KEY(Oraszam)
|
||||
)
|
||||
|
||||
SELECT TOP 1
|
||||
@intezmenyNev = i.C_NEV
|
||||
FROM T_INTEZMENYADATOK_OSSZES i
|
||||
WHERE i.C_INTEZMENYID = @intezmenyId
|
||||
AND i.C_TANEVID = @tanevID
|
||||
AND i.TOROLT = 'F'
|
||||
|
||||
INSERT INTO #OrarendiOrak (
|
||||
Id
|
||||
,ORARENDIID
|
||||
,Datum
|
||||
,Bontott
|
||||
,Hetirend
|
||||
,HetNapja
|
||||
,HetSorszam
|
||||
,ErvenyessegKezdete
|
||||
,ErvenyessegVege
|
||||
,OraKezdete
|
||||
,OraVege
|
||||
,Oraszam
|
||||
,TargyNev
|
||||
,TargyNevForMobile
|
||||
,TargykategoriaID
|
||||
,Megtartott
|
||||
,CsengetesiRendOraID
|
||||
,CsengetesiRendID
|
||||
,MaxNapiOraszam
|
||||
,OsztalyNev
|
||||
,TanevRendOsztalyCsoportId
|
||||
,MegjelenesOka
|
||||
,TanarNev
|
||||
,TeremNev
|
||||
,TeremId
|
||||
,OraTipus
|
||||
,Hianyzas
|
||||
,Keses
|
||||
,Ures
|
||||
,HelyettesitoTanarID
|
||||
,HelyettesitoTanarNev
|
||||
,HelyettesitesId
|
||||
,TanarID
|
||||
,AdminAltalKiirt
|
||||
,GroupId
|
||||
,Tema
|
||||
,TantargyId
|
||||
,OsztCsopId
|
||||
)
|
||||
EXEC sp_GetOrarend
|
||||
@pIntezmenyId = @intezmenyId
|
||||
,@pTanevId = @tanevID
|
||||
,@pIdoszakKezdete = @pIdoszakKezdete
|
||||
,@pIdoszakVege = @pIdoszakVege
|
||||
,@pTanarId = @pTanarId
|
||||
,@pIsHelyettesitesNelkul = @pIsHelyettesitesNelkul
|
||||
,@pOsztalyCsoportId = @pOsztalyCsoportId
|
||||
,@pTanuloId = @pTanuloId
|
||||
,@pTantargyId = @pTantargyId
|
||||
,@pTeremId = @pTeremId
|
||||
,@pCsakOrarendiOrak = @pCsakOrarendiOrak
|
||||
,@pIsNapirend = @pIsNapirend
|
||||
,@pFeladatKategoriaId = @pFeladatKategoriaId
|
||||
|
||||
-- a lekért órarendben a minden héten órákat átállítjuk a hétsorszámnak megfelelő hetirendre
|
||||
UPDATE orak
|
||||
SET orak.Hetirend = ISNULL(hr.Hetirend, orak.Hetirend)
|
||||
FROM #OrarendiOrak orak
|
||||
LEFT JOIN (
|
||||
SELECT DISTINCT
|
||||
o.Hetirend
|
||||
,o.HetSorszam
|
||||
FROM #OrarendiOrak o
|
||||
WHERE Hetirend <> 1554
|
||||
) hr ON hr.HetSorszam = orak.HetSorszam
|
||||
WHERE orak.Hetirend = 1554
|
||||
|
||||
-- kapcsolódó csoportok óráinak törlése
|
||||
IF @pKapcsolodoCsoportokMegjelenitese IS NOT NULL AND @pKapcsolodoCsoportokMegjelenitese = 0
|
||||
DELETE orak
|
||||
FROM #OrarendiOrak orak
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.TOROLT = 'F'
|
||||
AND cs.ID = orak.OsztCsopId
|
||||
AND cs.C_OSZTALYBONTASID IS NULL
|
||||
INNER JOIN T_CSOPORTTIPUS_OSSZES cst ON cst.C_ALTANEVID = cs.C_ALTANEVID AND cst.TOROLT = 'F'
|
||||
AND cst.ID = cs.C_TIPUSA
|
||||
AND cst.C_ISTANORAICELU = 'F'
|
||||
WHERE OsztCsopId != @pOsztalyCsoportId
|
||||
|
||||
-- osztálybontott csoportok óráinak törlése
|
||||
IF @pOsztalyBontasokMegjelenitese IS NOT NULL AND @pOsztalyBontasokMegjelenitese = 0
|
||||
DELETE orak
|
||||
FROM #OrarendiOrak orak
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.ID = orak.OsztCsopId
|
||||
AND cs.C_OSZTALYBONTASID IS NOT NULL
|
||||
WHERE orak.OsztCsopId != @pOsztalyCsoportId
|
||||
|
||||
INSERT INTO #Oraszamok (Oraszam)
|
||||
SELECT DISTINCT
|
||||
ora.C_ORASZAM AS Oraszam
|
||||
FROM T_ORARENDIORA_OSSZES ora
|
||||
WHERE ora.C_INTEZMENYID = @intezmenyId
|
||||
AND ora.C_TANEVID = @tanevID
|
||||
AND ora.C_ORASZAM IS NOT NULL
|
||||
|
||||
SELECT DISTINCT
|
||||
COALESCE(@pTanarId, @pTeremId, @pOsztalyCsoportId) AS Id
|
||||
,STUFF(
|
||||
(
|
||||
SELECT DISTINCT
|
||||
', ' + IIF(@pTanarId IS NOT NULL, bo.TanarNev, IIF(@pTeremId IS NOT NULL, bo.TeremNev, IIF(@pOsztalyCsoportId IS NOT NULL, bo.OsztalyNev,'')))
|
||||
FROM #OrarendiOrak bo
|
||||
WHERE bo.Hetirend = o.Hetirend
|
||||
FOR XML PATH(''), TYPE
|
||||
).value
|
||||
('.', 'NVARCHAR(MAX)') ,1 , 2, ''
|
||||
) AS Nev
|
||||
,@intezmenyNev AS IntezmenyNev
|
||||
,STUFF(
|
||||
(
|
||||
SELECT DISTINCT
|
||||
', ' + dic.C_NAME
|
||||
FROM #OrarendiOrak qw
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES dic ON dic.C_TANEVID = @tanevID
|
||||
AND dic.TOROLT = 'F'
|
||||
AND dic.ID = qw.Hetirend
|
||||
WHERE o.Hetirend = qw.Hetirend
|
||||
FOR XML PATH(''), TYPE
|
||||
).value
|
||||
('(./text())[1]', 'VARCHAR(MAX)'), 1, 2, ''
|
||||
) AS Hetirend
|
||||
FROM #OrarendiOrak o
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES dic ON o.Hetirend = dic.ID
|
||||
AND dic.C_TANEVID = @tanevID
|
||||
AND dic.TOROLT = 'F'
|
||||
|
||||
SELECT
|
||||
COALESCE(@pTanarId, @pTeremId, @pOsztalyCsoportId) AS Id
|
||||
,IIF(@pIsNapirend = 0, CAST(t.Oraszam AS nvarchar(3)), ISNULL(t.OraKezdete + ' - ' + t.OraVege, '')) AS Ora
|
||||
,t.Hetirend AS HetirendId
|
||||
,[1408] AS Hetfo
|
||||
,[1409] AS Kedd
|
||||
,[1410] AS Szerda
|
||||
,[1411] AS Csutortok
|
||||
,[1412] AS Pentek
|
||||
,[1413] AS Szombat
|
||||
,[1414] AS Vasarnap
|
||||
,t.HetirendNev AS HetirendNev
|
||||
FROM (
|
||||
SELECT
|
||||
*
|
||||
FROM (
|
||||
SELECT
|
||||
STUFF(
|
||||
(
|
||||
SELECT
|
||||
CONVERT(nvarchar(max),
|
||||
'--------------------' + nchar(13) + nchar(10)
|
||||
+ bo.TargyNev + nchar(13) + nchar(10) + bo.OsztalyNev +
|
||||
IIF(@pTeremId IS NOT NULL OR @pOsztalyCsoportId IS NOT NULL, nchar(13) + nchar(10) + bo.TanarNev, '') + nchar(13) + nchar(10) + bo.TeremNev + nchar(13) + nchar(10))
|
||||
FROM #OrarendiOrak bo
|
||||
WHERE bo.OraKezdete = o.OraKezdete
|
||||
FOR XML PATH(''), TYPE
|
||||
).value
|
||||
('.', 'NVARCHAR(MAX)'), 1, 22, ''
|
||||
) AS TargyNev
|
||||
,o.HetNapja
|
||||
,o.Oraszam
|
||||
,CONVERT(char(5), o.OraKezdete, 108) AS OraKezdete
|
||||
,CONVERT(char(5), o.OraVege, 108) AS OraVege
|
||||
,dic.C_NAME AS HetirendNev
|
||||
,o.Hetirend AS Hetirend
|
||||
FROM #OrarendiOrak AS o
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS dic ON dic.C_TANEVID = @tanevID
|
||||
AND dic.TOROLT = 'F'
|
||||
AND dic.ID = o.Hetirend
|
||||
) ot PIVOT(MAX(ot.TargyNev) FOR ot.HetNapja IN(
|
||||
[1408]
|
||||
,[1409]
|
||||
,[1410]
|
||||
,[1411]
|
||||
,[1412]
|
||||
,[1413]
|
||||
,[1414])
|
||||
) AS pv
|
||||
) AS t
|
||||
ORDER BY
|
||||
HetirendNev
|
||||
,CASE WHEN @pIsNapirend = 0 THEN t.Oraszam ELSE CAST(t.OraKezdete AS datetime) END
|
||||
|
||||
-- Iktatási adatok
|
||||
IF @pOsztalyCsoportId IS NOT NULL
|
||||
BEGIN
|
||||
-- Osztály adatok
|
||||
SELECT
|
||||
@pOsztalyCsoportId AS OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS Evfolyam
|
||||
,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
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM AS CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY AS OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI AS OJNemzetisegi
|
||||
,o.C_KETTANNYELVU AS OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO AS OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI AS OJLogopediai
|
||||
,o.C_SPORT AS OJSportOsztaly
|
||||
,o.C_AJPROGRAM AS OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI AS OJGyogypedagogiai
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID AND o.TOROLT = 'F'
|
||||
AND o.C_ALTANEVID = ocs.C_TANEVID
|
||||
AND o.C_ALINTEZMENYID = ocs.C_INTEZMENYID
|
||||
WHERE ocs.ID = @pOsztalyCsoportId
|
||||
AND ocs.TOROLT = 'F'
|
||||
AND ocs.C_TANEVID = @tanevID
|
||||
AND ocs.C_INTEZMENYID = @intezmenyId
|
||||
|
||||
-- Osztály csoportok
|
||||
SELECT DISTINCT
|
||||
ot.OsztCsopId AS CsoportId
|
||||
FROM #OrarendiOrak ot
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.ID = ot.OsztCsopId
|
||||
AND cs.TOROLT = 'F'
|
||||
|
||||
-- Alkalmazottak
|
||||
SELECT DISTINCT
|
||||
ot.TanarID AS TanarId
|
||||
,f.C_OKTATASIAZONOSITO AS TanarOktAzon
|
||||
FROM #OrarendiOrak ot
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = ot.TanarID
|
||||
AND f.TOROLT = 'F'
|
||||
|
||||
-- Tanulók
|
||||
SELECT DISTINCT
|
||||
f.ID AS TanuloId
|
||||
,f.C_NYOMTATASINEV AS TanuloNeve
|
||||
,f.C_OKTATASIAZONOSITO AS TanuloOktAzon
|
||||
FROM #OrarendiOrak ot
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = ot.OsztCsopId
|
||||
AND tcs.C_TANEVID = @tanevID
|
||||
AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.ID = tcs.C_TANULOID
|
||||
AND f.TOROLT = 'F'
|
||||
|
||||
END
|
||||
ELSE
|
||||
IF @pTanarId IS NOT NULL
|
||||
-- Alkalmazottak
|
||||
SELECT DISTINCT
|
||||
orak.TanarID AS TanarId
|
||||
,f.C_OKTATASIAZONOSITO AS TanarOktAzon
|
||||
,mua.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
FROM #OrarendiOrak orak
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = orak.TanarID
|
||||
AND f.TOROLT = 'F'
|
||||
INNER JOIN T_MUNKAUGYIADATOK_OSSZES mua ON mua.C_ALKALMAZOTTID = orak.TanarID
|
||||
AND mua.TOROLT = 'F'
|
||||
|
||||
ELSE
|
||||
IF @pTeremId IS NOT NULL
|
||||
SELECT
|
||||
t.ID AS TeremId
|
||||
,t.C_MUKODESIHELYID AS FeladatEllatasiHelyId
|
||||
FROM T_TEREM_OSSZES t
|
||||
WHERE t.ID = @pTeremId
|
||||
AND t.TOROLT = 'F'
|
||||
|
||||
END
|
||||
GO
|
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,76 @@
|
||||
DROP PROCEDURE IF EXISTS uspGetTanuloOsztalyCsoportjai
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetTanuloOsztalyCsoportjai
|
||||
@pTanuloIds nvarchar (max)
|
||||
,@pTanevId int
|
||||
,@pIsAktiv bit
|
||||
,@pFeladatKategoriaId int
|
||||
,@pOsztalyfonokIds nvarchar (max)
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@tanevNev nvarchar (30)
|
||||
,@sql nvarchar (max)
|
||||
|
||||
SELECT
|
||||
@tanevNev = C_NEV
|
||||
FROM T_TANEV
|
||||
WHERE ID = @pTanevId
|
||||
|
||||
SET @sql = N'
|
||||
SELECT DISTINCT
|
||||
CASE WHEN @pTanuloIds IS NULL THEN -1 ELSE tcs.ID END AS ID
|
||||
,tcs.C_OSZTALYCSOPORTID AS OsztalyCsoportId
|
||||
,ocs.C_NEV AS Nev
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipus
|
||||
,ocs.C_FELADATKATEGORIAID AS FeladatKategoriaId
|
||||
,feh.C_OKTATASINEVELESIFELADATTIPUS AS OktatasiNevelesiFeladatId
|
||||
,@tanevNev AS Tanev
|
||||
,CASE WHEN @pOsztalyfonokIds IS NULL THEN tcs.C_TANULOID ELSE -1 END AS TanuloId
|
||||
,tcs.C_BELEPESDATUM AS ErvKezd
|
||||
,tcs.C_KILEPESDATUM AS ErvVeg
|
||||
,cs.C_TIPUSA AS CsoportTipus
|
||||
,ob.C_NEV AS Osztalybontas
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,CASE WHEN o.ID IS NOT NULL THEN ''F'' ELSE ''T'' END AS IsCsoport
|
||||
,o.C_OSZTALYFONOKID AS OsztalyfonokId
|
||||
,o.C_OFOHELYETTESID AS OsztalyfonokHelyettesId
|
||||
,cs.C_CSOPORTVEZETOID AS CsoportVezetoId
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND (ocs.C_FELADATKATEGORIAID = @pFeladatKategoriaId OR @pFeladatKategoriaId IS NULL)
|
||||
AND ocs.TOROLT = ''F''
|
||||
AND ocs.C_TANEVID = tcs.C_TANEVID
|
||||
INNER JOIN T_FELADATELLATASIHELY feh ON ocs.C_FELADATELLATASIHELYID = feh.ID
|
||||
AND feh.TOROLT = ''F''
|
||||
AND feh.C_TANEVID = tcs.C_TANEVID
|
||||
LEFT JOIN T_CSOPORT_OSSZES cs ON cs.ID = ocs.ID
|
||||
AND cs.TOROLT = ''F''
|
||||
AND cs.C_ALTANEVID = tcs.C_TANEVID
|
||||
LEFT JOIN T_OSZTALYCSOPORT_OSSZES ob ON ob.ID = cs.C_OSZTALYBONTASID
|
||||
AND ob.TOROLT = ''F''
|
||||
AND ob.C_TANEVID = tcs.C_TANEVID
|
||||
LEFT JOIN T_OSZTALY_OSSZES o ON ocs.ID = o.ID
|
||||
AND o.TOROLT = ''F''
|
||||
AND o.C_ALTANEVID = tcs.C_TANEVID
|
||||
WHERE tcs.TOROLT = ''F''
|
||||
AND tcs.C_TANEVID = @tanevId'
|
||||
+ IIF(@pTanuloIds IS NOT NULL, ' AND tcs.C_TANULOID IN (SELECT value FROM STRING_SPLIT(@pTanuloIds, '',''))', '')
|
||||
+ IIF(@pOsztalyfonokIds IS NOT NULL, ' AND o.C_OSZTALYFONOKID IN (SELECT value FROM STRING_SPLIT(@pOsztalyfonokIds, '',''))', '')
|
||||
+ IIF(@pIsAktiv = 1, ' AND tcs.C_BELEPESDATUM <= GETDATE() AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > GETDATE())', '')
|
||||
|
||||
EXEC sp_executesql @sql, N'
|
||||
@pTanuloIds nvarchar (max)
|
||||
,@tanevNev nvarchar (30)
|
||||
,@tanevId int
|
||||
,@pFeladatKategoriaId int
|
||||
,@pOsztalyfonokIds nvarchar (max)'
|
||||
,@pTanuloIds = @pTanuloIds
|
||||
,@tanevNev = @tanevNev
|
||||
,@tanevId = @pTanevId
|
||||
,@pFeladatKategoriaId = @pFeladatKategoriaId
|
||||
,@pOsztalyfonokIds = @pOsztalyfonokIds
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,113 @@
|
||||
DROP PROCEDURE IF EXISTS dbo.sp_GetTanulokFelmentesekHatarozatok
|
||||
DROP PROCEDURE IF EXISTS dbo.uspGetTanulokFelmentesekHatarozatok
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE dbo.[uspGetTanulokFelmentesekHatarozatok]
|
||||
@OsztalyId INT,
|
||||
@TanevId INT
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
/*Alap adatok*/
|
||||
SELECT DISTINCT
|
||||
@OsztalyId OsztalyId
|
||||
,ocs.C_NEV OSZTALYCSOPORT_NEV
|
||||
,ofo.C_NYOMTATASINEV OSZTFO_NEV
|
||||
,i.C_IGAZGATONEVE INT_IGAZGATO_NEV
|
||||
,i.C_NEV INT_NEV
|
||||
,i.C_IRANYITOSZAM INT_IRSZAM
|
||||
,i.C_VAROS INT_VAROS
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@TanevId) INT_CIM
|
||||
,i.C_OMKOD INT_OMKOD
|
||||
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
|
||||
|
||||
/*Mentességek*/
|
||||
SELECT
|
||||
tt.C_NEV TANTARGY
|
||||
,tm.C_MENTESSEGOKA MENTESSEG_OKA
|
||||
,IIF(C_ERTEKELESMENTESITES = 'T', 'Értékelés alóli felmentés,', '')
|
||||
+ IIF(C_ORAMENTESITES = 'T', 'Tanóra látogatása alóli felmentés,', '')
|
||||
+ IIF(C_SZOVEGESENERTEKELHETO = 'T', 'Szövegesen értékelhető,', '') TIPUSA
|
||||
,dbo.fnGetDokumentumDatumFormatum(tm.C_KEZDETE) Kezdete
|
||||
,dbo.fnGetDokumentumDatumFormatum(tm.C_VEGE) Vege
|
||||
,ft.ID TANULO_ID
|
||||
,ft.C_NYOMTATASINEV AS TANULO_NEV
|
||||
,ft.C_NYOMTATASINEV + ' ' + CAST(ft.ID AS NVARCHAR) GROUPPARAMETER
|
||||
,@OsztalyId AS OsztalyId
|
||||
,ft.C_OKTATASIAZONOSITO AS TanuloOktAzon
|
||||
,feljegyzo.ID AS FeljegyzoId
|
||||
,feljegyzo.C_NYOMTATASINEV AS FeljegyzoNeve
|
||||
,feljegyzo.C_OKTATASIAZONOSITO AS FeljegyzoOktAzon
|
||||
,CASE WHEN tt.C_FOTARGYID IS NULL THEN ISNULL(TargyKategoriaDictionary.C_ORDER, 10000) ELSE ISNULL(FotargyKategoriaDictionary.C_ORDER, 10000) END as RENDEZ1
|
||||
,COALESCE(FotargyTable.C_NEVNYOMTATVANYBAN, FotargyTable.C_NEV, tt.C_NEV) as RENDEZ2
|
||||
,ISNULL(tt.C_FOTARGYID, tt.ID) as RENDEZ3
|
||||
,tt.C_FOTARGYID as RENDEZ4
|
||||
,ISNULL(tt.C_NEVNYOMTATVANYBAN, tt.C_NEV) as RENDEZ5
|
||||
INTO #TanuloMentesseg
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@TanevId, @OsztalyId, 'T') Tanulok
|
||||
INNER JOIN T_FELHASZNALO_OSSZES ft ON ft.ID = Tanulok.TanuloId AND ft.TOROLT = 'F'
|
||||
LEFT JOIN T_TANULOMENTESSEG_OSSZES tm ON tm.C_TANULOID = ft.ID AND tm.TOROLT = 'F'
|
||||
LEFT JOIN T_TANTARGY_OSSZES tt ON tt.ID = tm.C_TANTARGYID AND tt.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES feljegyzo ON feljegyzo.ID = tm.CREATOR AND feljegyzo.TOROLT = 'F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES TargyKategoriaDictionary ON TargyKategoriaDictionary.Id = tt.C_TARGYKATEGORIA
|
||||
AND TargyKategoriaDictionary.TOROLT = 'F'
|
||||
AND TargyKategoriaDictionary.C_TANEVID = @tanevId
|
||||
LEFT JOIN T_TANTARGY_OSSZES FotargyTable ON tt.C_FOTARGYID = FotargyTable.ID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES FotargyKategoriaDictionary ON FotargyKategoriaDictionary.ID = FotargyTable.C_TARGYKATEGORIA
|
||||
AND FotargyKategoriaDictionary.TOROLT = 'F'
|
||||
AND FotargyKategoriaDictionary.C_TANEVID = FotargyTable.C_TANEVID
|
||||
ORDER BY ft.C_NYOMTATASINEV
|
||||
|
||||
SELECT
|
||||
TANTARGY
|
||||
,MENTESSEG_OKA
|
||||
,IIF(TIPUSA = '', '', LEFT(TIPUSA, LEN(TIPUSA) - 1)) TIPUSA
|
||||
,Kezdete
|
||||
,Vege
|
||||
,TANULO_ID
|
||||
,TANULO_NEV
|
||||
,GROUPPARAMETER
|
||||
,OsztalyId
|
||||
,TanuloOktAzon
|
||||
,FeljegyzoId
|
||||
,FeljegyzoNeve
|
||||
,FeljegyzoOktAzon
|
||||
FROM #TanuloMentesseg
|
||||
ORDER BY TANULO_ID, RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5, Kezdete
|
||||
|
||||
/* 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
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
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
|
||||
|
||||
DROP TABLE #TanuloMentesseg
|
||||
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,184 @@
|
||||
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
|
||||
|
||||
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.ErtekelesSzoveg
|
||||
,ErtekelesTable.ErtekelesSzazalek
|
||||
,ErtekelesTable.MagatartasOsztalyzatNev
|
||||
,ErtekelesTable.MagatartasErtek
|
||||
,ErtekelesTable.MagatartasSzoveg
|
||||
,ErtekelesTable.SzorgalomOsztalyzatNev
|
||||
,ErtekelesTable.SzorgalomErtek
|
||||
,ErtekelesTable.SzorgalomSzoveg
|
||||
) 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.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) 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.MagatartasSzoveg
|
||||
) 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 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) 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.SzorgalomSzoveg
|
||||
) 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
|
||||
,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) 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, 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
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
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
|
@@ -0,0 +1,158 @@
|
||||
DROP PROCEDURE IF EXISTS dbo.sp_GetTanulokTantargyMulasztasokReszletezese
|
||||
DROP PROCEDURE IF EXISTS dbo.uspGetTanulokTantargyMulasztasokReszletezese
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[uspGetTanulokTantargyMulasztasokReszletezese]
|
||||
@pOsztalyId int
|
||||
,@pTanevId int
|
||||
,@pIskolaErdekuSzamit bit
|
||||
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
CREATE TABLE #MulasztasOsztalyonkent(
|
||||
TantargyId int
|
||||
,Tipusa int
|
||||
,IgazolasTipusa int
|
||||
,OsztalyCsoportId int
|
||||
,TanuloId int
|
||||
,TantargyNev nvarchar(1000)
|
||||
,OsztalyCsoportNev nvarchar(510)
|
||||
,Igazolt char(1)
|
||||
,KesesPercben int
|
||||
,Datum date
|
||||
,OraszamWithOrakezdeteVege nvarchar(50)
|
||||
,RENDEZ1 INT
|
||||
,RENDEZ2 NVARCHAR(510)
|
||||
,RENDEZ3 INT
|
||||
,RENDEZ4 INT
|
||||
,RENDEZ5 NVARCHAR(510)
|
||||
)
|
||||
|
||||
INSERT INTO #MulasztasOsztalyonkent(
|
||||
TantargyId
|
||||
,Tipusa
|
||||
,IgazolasTipusa
|
||||
,OsztalyCsoportId
|
||||
,TanuloID
|
||||
,TantargyNev
|
||||
,OsztalyCsoportNev
|
||||
,Igazolt
|
||||
,KesesPercben
|
||||
,Datum
|
||||
,OraszamWithOrakezdeteVege
|
||||
,RENDEZ1
|
||||
,RENDEZ2
|
||||
,RENDEZ3
|
||||
,RENDEZ4
|
||||
,RENDEZ5
|
||||
) SELECT
|
||||
TantargyId
|
||||
,Tipusa
|
||||
,IgazolasTipusa
|
||||
,OsztalyCsoportId
|
||||
,TanuloID
|
||||
,TantargyNev
|
||||
,OsztalyCsoportNev
|
||||
,Igazolt
|
||||
,KesesPercben
|
||||
,Datum
|
||||
,OraszamWithOrakezdeteVege
|
||||
,RENDEZ1
|
||||
,RENDEZ2
|
||||
,RENDEZ3
|
||||
,RENDEZ4
|
||||
,RENDEZ5
|
||||
FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes (@pTanevId, @pOsztalyId, @pIskolaErdekuSzamit, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT)
|
||||
|
||||
/*FEJLEC*/
|
||||
SELECT
|
||||
IntezmenyAdat.C_NEV as IntezmenyNeve
|
||||
,IntezmenyAdat.C_OMKOD as IntezmenyOMKod
|
||||
,IntezmenyAdat.C_IGAZGATONEVE IntezmenyVezeto
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@pTanevId) as IntezmenyCime
|
||||
,IntezmenyAdat.C_VAROS as IntezmenyVaros
|
||||
,(SELECT C_NEV FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId) as OsztalyCsoportNev
|
||||
,@pOsztalyId as OsztalyId
|
||||
,ofo.C_NYOMTATASINEV as OsztalyfonokNev
|
||||
FROM T_INTEZMENYADATOK_OSSZES IntezmenyAdat
|
||||
INNER JOIN T_OSZTALY_OSSZES AS o ON o.ID = @pOsztalyId AND o.TOROLT='F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES AS ofo ON ofo.ID = o.C_OSZTALYFONOKID AND ofo.TOROLT='F'
|
||||
WHERE INTEZMENYADAT.C_TANEVID = @pTanevId AND IntezmenyAdat.TOROLT='F'
|
||||
|
||||
/*TANULOK*/
|
||||
SELECT
|
||||
TanuloId
|
||||
,Felhasznalo.C_NYOMTATASINEV as TanuloNev
|
||||
,@pOsztalyId as OsztalyCsoportId
|
||||
,Felhasznalo.C_OKTATASIAZONOSITO as TanuloOktAzon
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') Tanulok
|
||||
INNER JOIN T_FELHASZNALO_OSSZES Felhasznalo ON Felhasznalo.ID = Tanulok.TanuloId AND Felhasznalo.TOROLT='F'
|
||||
ORDER BY Felhasznalo.C_NYOMTATASINEV
|
||||
|
||||
/*MULASZTOTT TANTARGY*/
|
||||
SELECT DISTINCT
|
||||
TanuloId
|
||||
,TantargyId
|
||||
,TantargyNev as TantargyNev
|
||||
,COUNT(1) as COUNT
|
||||
,RENDEZ1
|
||||
,RENDEZ2
|
||||
,RENDEZ3
|
||||
,RENDEZ4
|
||||
,RENDEZ5
|
||||
FROM #MulasztasOsztalyonkent MulasztasokOsztalyonkent
|
||||
INNER JOIN T_TANTARGY_OSSZES Tantargy ON Tantargy.ID = MulasztasokOsztalyonkent.TantargyId AND Tantargy.TOROLT='F'
|
||||
GROUP BY TanuloId, TantargyId, TantargyNev, RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5
|
||||
ORDER BY TanuloId, RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,OsztalyCsoportId
|
||||
,OsztalyCsoportNev as OsztalyCsoportNev
|
||||
,CASE
|
||||
WHEN Igazolt = 'T' THEN 'Igen'
|
||||
WHEN Igazolt = 'F' THEN 'Nem'
|
||||
ELSE ''
|
||||
END as Igazolt
|
||||
,MulasztasTipus.C_NAME as Tipusa
|
||||
,IgazolasTipus.C_NAME as IgazolasTipusa
|
||||
,KesesPercben as Keses
|
||||
,Datum as Datum
|
||||
,OraszamWithOrakezdeteVege as Oraszam
|
||||
,TantargyId
|
||||
,Felhasznalo.C_NYOMTATASINEV as OsztalyfonokNev
|
||||
FROM #MulasztasOsztalyonkent MulasztasokOsztalyonkent
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES MulasztasTipus ON MulasztasokOsztalyonkent.Tipusa = MulasztasTipus.ID AND MulasztasTipus.C_TANEVID = @pTanevId AND MulasztasTipus.TOROLT='F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES IgazolasTipus ON MulasztasokOsztalyonkent.IgazolasTipusa = IgazolasTipus.ID AND IgazolasTipus.C_TANEVID = @pTanevId AND IgazolasTipus.TOROLT='F'
|
||||
LEFT JOIN T_OSZTALY_OSSZES Osztaly ON MulasztasokOsztalyonkent.OsztalyCsoportId = Osztaly.ID AND Osztaly.TOROLT='F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES Felhasznalo ON Osztaly.C_OSZTALYFONOKID = Felhasznalo.ID AND Felhasznalo.TOROLT='F'
|
||||
ORDER BY Datum, RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5
|
||||
|
||||
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
|
||||
,ocs.C_KERESZTFELEVES as OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM as CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY as OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI as OJNemzetisegi
|
||||
,o.C_KETTANNYELVU as OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO as OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI as OJLogopediai
|
||||
,o.C_SPORT as OJSportOsztaly
|
||||
,o.C_AJPROGRAM as OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI as OJGyogypedagogiai
|
||||
FROM T_OSZTALY_OSSZES as o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.TOROLT = 'F'
|
||||
WHERE o.ID = @pOsztalyId AND o.TOROLT='F'
|
||||
END
|
||||
GO
|
||||
|
@@ -0,0 +1,134 @@
|
||||
DROP PROCEDURE IF EXISTS [dbo].[uspGetTanuloszerzodes]
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[uspGetTanuloszerzodes]
|
||||
@pIntezmenyId INT,
|
||||
@pTanevId INT,
|
||||
@pTanuloIdList nvarchar(max)
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
SET NOCOUNT ON;
|
||||
|
||||
CREATE TABLE #Tanulok (Id int PRIMARY KEY)
|
||||
INSERT INTO #Tanulok
|
||||
SELECT CAST(value as int) FROM string_split(@pTanuloIdList, ',')
|
||||
|
||||
/*TANULO*/
|
||||
SELECT DISTINCT
|
||||
t.ID AS tanuloId
|
||||
,f.C_NYILVANTARTASISZAM AS torzslapSzam
|
||||
,f.C_OKTATASIAZONOSITO AS oktAzon
|
||||
,f.C_TAJSZAM AS tajSzam
|
||||
,f.C_ANYJANEVE AS anyjaNeve
|
||||
,f.C_SZULETESIHELY AS szulHely
|
||||
,dbo.fnGetDokumentumDatumFormatum(f.C_SZULETESIDATUM) AS szulIdo
|
||||
,tt.C_NEV AS kepzes
|
||||
,f.C_NYOMTATASINEV AS tanuloNeve
|
||||
,f.C_SZULETESINEV AS szuletesiNev
|
||||
,d.C_NAME AS allampolgarsaga
|
||||
,ISNULL(Cim.C_OSSZETETTCIM, '') AS tanuloCimText
|
||||
,ISNULL(Email.C_EMAILCIM, '') AS tanuloEmailCim
|
||||
,ISNULL(Telefon.C_TELEFONSZAM, '') AS tanuloTelefonszam
|
||||
,IIF(t.C_SZAKKEPESITESSZAMA IS NOT NULL, 'van, '
|
||||
+ 'OKJ száma: ............., megnevezése: ', 'nincs') AS okj
|
||||
FROM T_TANULO_OSSZES t
|
||||
INNER JOIN #Tanulok Tanulok ON t.ID = Tanulok.Id
|
||||
LEFT JOIN T_CIM_OSSZES Cim ON Cim.C_FELHASZNALOID = t.ID
|
||||
AND Cim.C_TANEVID = @pTanevId
|
||||
AND Cim.TOROLT = 'F'
|
||||
AND Cim.C_ALAPERTELMEZETT = 'T'
|
||||
AND Cim.C_GONDVISELOID IS NULL
|
||||
LEFT JOIN T_EMAIL_OSSZES Email ON Email.C_FELHASZNALOID = t.ID
|
||||
AND Email.C_TANEVID = @pTanevId
|
||||
AND Email.TOROLT = 'F'
|
||||
AND Email.C_ALAPERTELMEZETT = 'T'
|
||||
AND Email.C_GONDVISELOID IS NULL
|
||||
LEFT JOIN T_TELEFON_OSSZES Telefon ON Telefon.C_FELHASZNALOID = t.ID
|
||||
AND Telefon.C_TANEVID = @pTanevId
|
||||
AND Telefon.TOROLT = 'F'
|
||||
AND Telefon.C_ALAPERTELMEZETT= 'T'
|
||||
AND Telefon.C_GONDVISELOID IS NULL
|
||||
INNER JOIN T_TANTERV_OSSZES tt ON tt.ID = t.C_TANTERVID
|
||||
AND tt.TOROLT ='F'
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.ID = t.ID
|
||||
AND f.TOROLT = 'F'
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES d ON d.id=f.C_ALLAMPOLGARSAGA
|
||||
AND d.C_TANEVID = f.C_TANEVID
|
||||
AND d.TOROLT = 'F'
|
||||
WHERE t.TOROLT = 'F'
|
||||
|
||||
/*INTEZMENYADATOK*/
|
||||
SELECT DISTINCT
|
||||
INTEZMENY.C_INTEZMENYID AS intezmenyId
|
||||
,INTEZMENY.C_NEV AS Nev
|
||||
,INTEZMENY.C_IGAZGATONEVE AS IgazgatoNev
|
||||
,dbo.fnGetDokumentumIntezmenyCime (@pTanevId) AS IntezmenyCim
|
||||
,INTEZMENY.C_TELEFONSZAM AS IntezmenyTelefonszam
|
||||
,INTEZMENY.C_EMAILCIM AS IntezmenyEmail
|
||||
,INTEZMENY.C_OMKOD AS OktAzon
|
||||
,TANEV.C_NEV
|
||||
INTO #IntemenyAdatok
|
||||
FROM T_TANEV_OSSZES TANEV
|
||||
INNER JOIN T_INTEZMENYADATOK_OSSZES INTEZMENY ON TANEV.ID = INTEZMENY.C_TANEVID AND INTEZMENY.TOROLT = 'F'
|
||||
WHERE TANEV.ID = @pTanevId
|
||||
AND TANEV.TOROLT = 'F'
|
||||
AND INTEZMENY.C_INTEZMENYID = @pIntezmenyId
|
||||
|
||||
CREATE TABLE #Osztalyok (Id int, FeladatellatasiHelyId int);
|
||||
INSERT INTO #Osztalyok
|
||||
SELECT DISTINCT C_OSZTALYCSOPORTID, C_FELADATELLATASIHELYID
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN #Tanulok Tanulok ON Tanulok.Id = tcs.C_TANULOID
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = tcs.C_OSZTALYCSOPORTID AND o.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID
|
||||
AND ocs.C_FELADATKATEGORIAID = 7553 /*OktNevelesiKategoriaEnum.Alapkepzes*/
|
||||
AND ocs.TOROLT = 'F'
|
||||
WHERE tcs.TOROLT = 'F'
|
||||
AND tcs.C_TANEVID = @pTanevId
|
||||
|
||||
/*TAGINTEZMENYADATOK*/
|
||||
SELECT DISTINCT
|
||||
TAGINTEZMENY.C_INTEZMENYID AS intezmenyId
|
||||
,TAGINTEZMENY.C_NEV AS TagintezmenyNev
|
||||
,TAGINTEZMENY.C_IRANYITOSZAM + ' ' + TAGINTEZMENY.C_VAROS + ', '
|
||||
+ TAGINTEZMENY.C_KOZTERULETNEV + ' ' + TAGINTEZMENY.C_HAZSZAM
|
||||
+ ISNULL(', ' + TAGINTEZMENY.C_EMELET + '. EMELET', '')
|
||||
+ ISNULL(', ' + TAGINTEZMENY.C_AJTO + '. AJTÓ', '') AS TagintezmenyCim
|
||||
INTO #TagintezmenyAdatok
|
||||
FROM T_TANEV_OSSZES TANEV
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES feh ON feh.C_TANEVID = TANEV.ID AND feh.TOROLT = 'F'
|
||||
INNER JOIN #Osztalyok o ON o.FeladatellatasiHelyId = feh.ID
|
||||
INNER JOIN T_MUKODESIHELY_OSSZES TAGINTEZMENY ON TAGINTEZMENY.ID = feh.C_MUKODESIHELYID AND TAGINTEZMENY.TOROLT = 'F'
|
||||
WHERE TANEV.ID = @pTanevId
|
||||
AND TANEV.TOROLT = 'F'
|
||||
AND TAGINTEZMENY.C_INTEZMENYID = @pIntezmenyId
|
||||
|
||||
|
||||
/*==============INTÉZMÉNY/TAGINTÉZMÉNY==================*/
|
||||
|
||||
SELECT DISTINCT
|
||||
*
|
||||
FROM #IntemenyAdatok intezmeny
|
||||
INNER JOIN #TagintezmenyAdatok tagintezmeny ON intezmeny.intezmenyId = tagintezmeny.intezmenyId
|
||||
|
||||
|
||||
/*BESOROLAS*/
|
||||
SELECT DISTINCT
|
||||
TANCSOP.C_TANULOID AS tanuloId
|
||||
,OKTATASINEVELESIFELADAT.C_NAME AS FeladatEllatasiHely
|
||||
,MUNKAREND.C_NAME AS NappaliRend
|
||||
,EVFOLYAM.C_NAME_1 AS Evfolyam
|
||||
FROM T_TANULOCSOPORT_OSSZES TANCSOP
|
||||
INNER JOIN #Tanulok Tanulok ON TANCSOP.C_TANULOID = Tanulok.Id
|
||||
INNER JOIN T_OSZTALY_OSSZES OSZTALY ON OSZTALY.ID = TANCSOP.C_OSZTALYCSOPORTID AND OSZTALY.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES OSZTALYCSOP ON OSZTALYCSOP.ID = OSZTALY.ID AND OSZTALYCSOP.C_FELADATKATEGORIAID = 7553 /*OktNevelesiKategoriaEnum.Alapkepzes*/ AND OSZTALYCSOP.TOROLT = 'F'
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES ON T_FELADATELLATASIHELY_OSSZES.ID = OSZTALYCSOP.C_FELADATELLATASIHELYID AND T_FELADATELLATASIHELY_OSSZES.C_TANEVID = OSZTALYCSOP.C_TANEVID AND T_FELADATELLATASIHELY_OSSZES.C_INTEZMENYID = @pIntezmenyId AND T_FELADATELLATASIHELY_OSSZES.TOROLT = 'F'
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES MUNKAREND ON OSZTALYCSOP.C_KEPZESIFORMA = MUNKAREND.ID AND MUNKAREND.C_TANEVID = OSZTALYCSOP.C_TANEVID AND MUNKAREND.TOROLT = 'F'
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES AS OKTATASINEVELESIFELADAT ON T_FELADATELLATASIHELY_OSSZES.C_OKTATASINEVELESIFELADATTIPUS = OKTATASINEVELESIFELADAT.ID AND OKTATASINEVELESIFELADAT.C_TANEVID = T_FELADATELLATASIHELY_OSSZES.C_TANEVID AND OKTATASINEVELESIFELADAT.TOROLT = 'F'
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES EVFOLYAM ON EVFOLYAM.ID = OSZTALYCSOP.C_EVFOLYAMTIPUSA AND EVFOLYAM.C_TANEVID = OSZTALYCSOP.C_TANEVID AND EVFOLYAM.TOROLT = 'F'
|
||||
WHERE OSZTALYCSOP.C_TANEVID = @pTanevId
|
||||
AND TANCSOP.TOROLT = 'F'
|
||||
AND TANCSOP.C_TANEVID = @pTanevId
|
||||
|
||||
END
|
@@ -0,0 +1,156 @@
|
||||
DROP PROCEDURE IF EXISTS dbo.sp_GetUzenofuzetErtekelolap
|
||||
DROP PROCEDURE IF EXISTS dbo.uspGetUzenofuzetErtekelolap
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[uspGetUzenofuzetErtekelolap]
|
||||
@osztalyId INT,
|
||||
@tanevId INT,
|
||||
@intezmenyId INT
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
--Intézmény, tanév
|
||||
SELECT
|
||||
T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve
|
||||
,T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@tanevId) IntezmenyCime
|
||||
,T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON
|
||||
,T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM
|
||||
,T_INTEZMENYADATOK_OSSZES.C_OMKOD IntezmenyOMKod
|
||||
,T_INTEZMENYADATOK_OSSZES.C_IGAZGATONEVE Intezmenyvezeto
|
||||
,(SELECT C_OSZTALYFONOKID FROM T_OSZTALY_OSSZES WHERE T_OSZTALY_OSSZES.ID = @osztalyId AND T_OSZTALY_OSSZES.C_ALTANEVID = @tanevId AND T_OSZTALY_OSSZES.TOROLT = 'F') PartnerID
|
||||
,T_TANEV_OSSZES.C_NEV TANEV
|
||||
,@osztalyId AS OsztalyId
|
||||
FROM T_INTEZMENYADATOK_OSSZES
|
||||
INNER JOIN T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID AND T_TANEV_OSSZES.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID AND T_TANEV_OSSZES.TOROLT = 'F'
|
||||
WHERE T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
|
||||
AND T_TANEV_OSSZES.ID = @tanevId
|
||||
|
||||
--Osztály, évfolyam
|
||||
SELECT
|
||||
ocs.C_NEV
|
||||
,ocs.C_EVFOLYAMTIPUSA
|
||||
,f.C_NYOMTATASINEV Osztalyfonok
|
||||
,ocs.ID AS OsztalyId
|
||||
,f.ID AS OsztalyfonokId
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID TantervId
|
||||
,ocs.C_KEPZESIFORMA KepzesiForma
|
||||
,o.C_AGAZAT Agazat
|
||||
,o.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,o.C_TECHNIKAIOSZTALY OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,o.C_LOGOPEDIAI OJLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
,o.C_GYOGYPEDAGOGIAI OJGyogypedagogiai
|
||||
FROM T_OSZTALYCSOPORT_OSSZES AS ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES AS o ON ocs.id = o.ID
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES AS f ON f.id = o.c_osztalyfonokid
|
||||
WHERE ocs.TOROLT='F'
|
||||
AND ocs.ID = @osztalyId
|
||||
AND ocs.C_TANEVID = @tanevId
|
||||
|
||||
|
||||
--Tanuló adatai
|
||||
SELECT
|
||||
TanuloId Id
|
||||
,TanuloCsoportId TanuloCsoportId
|
||||
,OsztalyTanuloi.BelepesDatum BelepesDatum
|
||||
,OsztalyTanuloi.KilepesDatum KilepesDatum
|
||||
INTO #studentsWithTanuloCsoport
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') OsztalyTanuloi
|
||||
|
||||
SELECT
|
||||
T_FELHASZNALO_OSSZES.ID TanuloId,
|
||||
TanuloCsoportId,
|
||||
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV TANULONEV,
|
||||
T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO OKTATASIAZONOSITO
|
||||
,@osztalyId AS OsztalyId
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN #studentsWithTanuloCsoport Tanulok ON Tanulok.Id = T_FELHASZNALO_OSSZES.Id
|
||||
ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV
|
||||
|
||||
SELECT
|
||||
Datum
|
||||
,TipusId
|
||||
,ErtekelesSzoveg
|
||||
,ErtekelesSzovegRovidNev
|
||||
,ErtekelesOsztalyzatId
|
||||
,ErtekelesOsztalyzatValue
|
||||
,ErtekelesOsztalyzatNev
|
||||
,ErtekelesSzazalek
|
||||
,MagatartasOsztalyzatId
|
||||
,MagatartasOsztalyzatNev
|
||||
,MagatartasSzoveg
|
||||
,MagatartasErtekId
|
||||
,MagatartasErtek
|
||||
,SzorgalomOsztalyzatId
|
||||
,SzorgalomOsztalyzatNev
|
||||
,SzorgalomSzoveg
|
||||
,SzorgalomErtekId
|
||||
,SzorgalomErtek
|
||||
,TanuloId
|
||||
,TanuloCsoportId
|
||||
,OsztalyCsoportId
|
||||
,TantargyId
|
||||
,TantargyNevZarojellel
|
||||
,TantargyNev
|
||||
,TantargyNevNyomtatvanyban
|
||||
,TargyKategoriaId
|
||||
,FotargyE
|
||||
,FotargyId
|
||||
,Altantargy
|
||||
,ErtekelesTema
|
||||
,Jeloles
|
||||
,JelolesAndErtekelesTema
|
||||
,isMagatartasSzorgalom
|
||||
,RENDEZ1
|
||||
,RENDEZ2
|
||||
,RENDEZ3
|
||||
,RENDEZ4
|
||||
,RENDEZ5
|
||||
INTO #ErtekelesekTemp
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent (@tanevId, @osztalyId, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT)
|
||||
|
||||
CREATE TABLE #Tantargyak(
|
||||
ID INT
|
||||
,C_FOTARGYID INT
|
||||
,C_NEV NVARCHAR(255) COLLATE DATABASE_DEFAULT
|
||||
,C_NEVNYOMTATVANYBAN NVARCHAR(255) COLLATE DATABASE_DEFAULT
|
||||
,C_TARGYKATEGORIA INT
|
||||
,c_tanuloid int
|
||||
,c_tanulocsoportid int
|
||||
,RENDEZ1 int
|
||||
,RENDEZ2 nvarchar(255) COLLATE DATABASE_DEFAULT
|
||||
,RENDEZ3 int
|
||||
,RENDEZ4 int
|
||||
,RENDEZ5 nvarchar(255) COLLATE DATABASE_DEFAULT
|
||||
,C_INTEZMENYID INT
|
||||
,C_TANEVID INT
|
||||
);
|
||||
EXEC sp_GetDokumentumErtekelesekIdoszakonkent
|
||||
@tanevId = @tanevId,
|
||||
@osztalyCsoportId = @osztalyId,
|
||||
@ertekelesTipusa = NULL,
|
||||
@csakTanorai = 1,
|
||||
@csakKivlasztottOsztalyCsoport = 0,
|
||||
@atsoroltTanuloErtekelesek = 0,
|
||||
@fuggolegesTantargyak = 0,
|
||||
@isMegjegyzesMegjelenjen = 0,
|
||||
@intezmenyId = @intezmenyId
|
||||
|
||||
DROP TABLE #studentsWithTanuloCsoport
|
||||
DROP TABLE #Tantargyak
|
||||
END
|
||||
|
||||
GO
|
@@ -0,0 +1,47 @@
|
||||
-- ===================================================================================================
|
||||
-- KIRSTAT - Felhasználó Gyógytestnevelés
|
||||
-- ===================================================================================================
|
||||
-- 4. MUNKALAP FELSŐ - A02T11 - GYÓGYTESTNEVELÉS, NYITÓADATOK
|
||||
|
||||
DROP PROCEDURE IF EXISTS uspKIRstat_FelhasznaloGyogytestneveles
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspKIRstat_FelhasznaloGyogytestneveles
|
||||
@pFeladatellatasiHelyId int
|
||||
,@pTanevId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@oktoberEgy datetime
|
||||
|
||||
SET @oktoberEgy = (SELECT LEFT(C_NEV, 4) FROM T_TANEV WHERE ID = @pTanevId) + '1001'
|
||||
|
||||
SELECT
|
||||
dk.ID AS TanuloId
|
||||
,fh.C_NYOMTATASINEV AS TanuloNev
|
||||
,d.C_NAME AS TestnevelesTipusa
|
||||
,IIF(fh.C_NEME = 5, 'Leány','Fiú') AS Neme
|
||||
,def.C_NAME_4 AS Evfolyam
|
||||
FROM T_FELHASZNALO fh
|
||||
INNER JOIN T_TANULO dk ON dk.ID = fh.ID AND dk.TOROLT = 'F'
|
||||
INNER JOIN T_DICTIONARYITEMBASE d ON d.ID = dk.C_TESTNEVELESTIPUSA AND d.C_TANEVID = dk.C_ALTANEVID AND d.TOROLT = 'F'
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_TANULOID = fh.ID
|
||||
AND tcs.C_BELEPESDATUM <= @oktoberEgy
|
||||
AND (tcs.C_KILEPESDATUM > @oktoberEgy OR tcs.C_KILEPESDATUM IS NULL)
|
||||
AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs On ocs.ID = tcs.C_OSZTALYCSOPORTID
|
||||
AND ocs.C_FELADATELLATASIHELYID = @pFeladatellatasiHelyId
|
||||
AND ocs.TOROLT = 'F'
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES def ON def.ID = ocs.C_EVFOLYAMTIPUSA
|
||||
AND def.C_TANEVID = ocs.C_TANEVID
|
||||
AND def.TOROLT = 'F'
|
||||
WHERE dk.C_TESTNEVELESTIPUSA BETWEEN 1092 AND 1094
|
||||
AND fh.TOROLT = 'F'
|
||||
AND EXISTS (SELECT 1 FROM T_OSZTALYCSOPORT nappalisOsztaly WHERE nappalisOsztaly.ID = ocs.ID AND nappalisOsztaly.C_KEPZESIFORMA = 1096)
|
||||
AND fh.C_TANEVID = @pTanevId
|
||||
|
||||
END
|
||||
GO
|
||||
|
||||
|
@@ -0,0 +1,74 @@
|
||||
-- ===================================================================================================
|
||||
-- KIRSTAT - Felhasználó - Tanorán kívüli csoportok
|
||||
-- ===================================================================================================
|
||||
-- 5. MUNKALAP – ALSÓ – A02T15 - A SZERVEZETT TANÓRÁN KÍVÜLI FOGLALKOZÁSOK NYITÓADATAI
|
||||
|
||||
DROP PROCEDURE IF EXISTS uspKIRstat_FelhasznaloTanoranKivuliCsoport
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspKIRstat_FelhasznaloTanoranKivuliCsoport
|
||||
@pFeladatEllatasiHelyId int
|
||||
,@pTanevid int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@oktoberEgy datetime
|
||||
|
||||
SET @oktoberEgy = (SELECT LEFT(C_NEV, 4) FROM T_TANEV WHERE ID = @pTanevid) + '1001'
|
||||
|
||||
SELECT
|
||||
ocs.C_NEV
|
||||
,CASE cs.C_TIPUSA
|
||||
WHEN 1035 THEN 'Napközi'
|
||||
WHEN 1041 THEN 'Művészeti csoport'
|
||||
WHEN 1039 THEN 'Önképzőkör'
|
||||
WHEN 1042 THEN 'Iskolai sportkör'
|
||||
WHEN 1040 THEN 'Énekkar'
|
||||
WHEN 1037 THEN 'Szakkör, érdeklődési kör'
|
||||
WHEN 1038 THEN 'Szakkör, érdeklődési kör'
|
||||
ELSE 'Délutáni egyéb foglalkozás'
|
||||
END AS Besorolas
|
||||
,d.C_NAME AS CsoportTipus
|
||||
,tcs.TanulokSzama AS TanulokSzama
|
||||
,f.HetiOraszam AS PedagogusOraszam
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.ID = ocs.ID AND cs.TOROLT = 'F'
|
||||
INNER JOIN T_CSOPORTTIPUS_OSSZES cst ON cst.ID = cs.C_TIPUSA
|
||||
AND cst.C_ALTANEVID = cs.C_ALTANEVID
|
||||
AND cst.C_ISTANORAICELU = 'F'
|
||||
AND cst.TOROLT = 'F'
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES d ON d.ID = cst.ID
|
||||
AND d.C_TANEVID = cst.C_ALTANEVID
|
||||
AND d.TOROLT = 'F'
|
||||
CROSS APPLY (
|
||||
SELECT SUM(f.C_ORASZAM) AS HetiOraszam
|
||||
FROM T_FOGLALKOZAS_OSSZES f
|
||||
WHERE f.C_OSZTALYCSOPORTID = ocs.ID
|
||||
AND f.TOROLT = 'F'
|
||||
) f
|
||||
CROSS APPLY (
|
||||
SELECT COUNT(1) AS TanulokSzama
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
WHERE tcs.C_OSZTALYCSOPORTID = ocs.ID
|
||||
AND tcs.C_BELEPESDATUM <= @oktoberEgy AND (tcs.C_KILEPESDATUM > @oktoberEgy OR tcs.C_KILEPESDATUM IS NULL)
|
||||
AND tcs.TOROLT = 'F'
|
||||
AND EXISTS (
|
||||
SELECT 1
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs2
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = tcs2.C_OSZTALYCSOPORTID AND o.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT ocs2 ON ocs2.ID = tcs2.C_OSZTALYCSOPORTID
|
||||
AND ocs2.C_FELADATELLATASIHELYID = @pFeladatEllatasiHelyId
|
||||
AND ocs2.TOROLT = 'F'
|
||||
WHERE tcs2.C_TANULOID = tcs.C_TANULOID
|
||||
AND tcs2.TOROLT = 'F'
|
||||
AND ocs2.C_KEPZESIFORMA = 1096 /*nappali*/
|
||||
AND tcs2.C_BELEPESDATUM <= @oktoberEgy
|
||||
AND (tcs2.C_KILEPESDATUM > @oktoberEgy OR tcs2.C_KILEPESDATUM IS NULL)
|
||||
)
|
||||
) tcs
|
||||
WHERE ocs.TOROLT = 'F'
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
AND ocs.C_FELADATELLATASIHELYID = @pFeladatEllatasiHelyId
|
||||
END
|
||||
GO
|
Reference in New Issue
Block a user