init
This commit is contained in:
@@ -0,0 +1,94 @@
|
||||
DROP PROCEDURE IF EXISTS sp_GetOraSorszamByOsztaly
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_GetOraSorszamByOsztaly
|
||||
@osztalyCsoportId int
|
||||
,@datum date
|
||||
,@intezmenyId int
|
||||
,@tanevId int
|
||||
AS
|
||||
BEGIN
|
||||
DECLARE
|
||||
@tanarSzamit bit
|
||||
,@osztalybontasEgybe bit
|
||||
,@osztalybontasCsoport bit
|
||||
|
||||
SET @tanarSzamit = dbo.fnGetRendszerbeallitasEnumBool(3075, @intezmenyId, @tanevId)
|
||||
SET @osztalybontasEgybe = dbo.fnGetRendszerbeallitasEnumBool(3078, @intezmenyId, @tanevId)
|
||||
SET @osztalybontasCsoport = 0
|
||||
|
||||
IF EXISTS (SELECT 1 FROM T_CSOPORT_OSSZES WHERE (ID = @osztalyCsoportId AND C_OSZTALYBONTASID IS NOT NULL) OR C_OSZTALYBONTASID = @osztalyCsoportId) BEGIN
|
||||
SET @osztalybontasCsoport = 1
|
||||
END
|
||||
|
||||
IF @osztalybontasEgybe = 0 OR @osztalybontasCsoport = 0 BEGIN
|
||||
IF @tanarSzamit = 1 BEGIN
|
||||
SELECT
|
||||
t.ID AS TanitasiOraId
|
||||
,ROW_NUMBER() OVER (PARTITION BY t.C_OSZTALYCSOPORTID, t.C_TANARID, t.C_TANTARGYID ORDER BY t.C_ORAKEZDETE, C_BEJEGYZESIDEJE) AS OraSorszam
|
||||
FROM T_TANITASIORA_OSSZES t
|
||||
WHERE t.C_MEGTARTOTT = 'T'
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND CAST(t.C_ORAKEZDETE AS date) <= @datum
|
||||
AND t.TOROLT = 'F'
|
||||
AND t.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT
|
||||
t.ID AS TanitasiOraId
|
||||
,ROW_NUMBER() OVER (PARTITION BY t.C_OSZTALYCSOPORTID, t.C_TANTARGYID ORDER BY C_ORAKEZDETE, C_BEJEGYZESIDEJE) AS OraSorszam
|
||||
FROM T_TANITASIORA_OSSZES t
|
||||
WHERE t.C_MEGTARTOTT = 'T'
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND t.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND CAST(t.C_ORAKEZDETE AS date) <= @datum
|
||||
AND t.TOROLT = 'F'
|
||||
END
|
||||
END
|
||||
ELSE BEGIN
|
||||
DECLARE @osztalyId int, @csoportId int
|
||||
|
||||
IF EXISTS (SELECT 1 FROM T_CSOPORT_OSSZES WHERE ID = @osztalyCsoportId) BEGIN
|
||||
SET @csoportId = @osztalyCsoportId
|
||||
SELECT @osztalyId = C_OSZTALYBONTASID FROM T_CSOPORT_OSSZES WHERE ID = @osztalyCsoportId
|
||||
END
|
||||
ELSE BEGIN
|
||||
SET @osztalyId = @osztalyCsoportId
|
||||
SELECT TOP(1) @csoportId = csoport
|
||||
FROM (
|
||||
SELECT
|
||||
t.C_OSZTALYCSOPORTID as csoport
|
||||
,COUNT(1) AS cnt
|
||||
FROM T_TANITASIORA_OSSZES t
|
||||
WHERE t.C_OSZTALYCSOPORTID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_OSZTALYBONTASID = @osztalyCsoportId)
|
||||
AND CAST(t.C_ORAKEZDETE AS date) <= @datum
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND t.C_MEGTARTOTT = 'T'
|
||||
AND t.TOROLT = 'F'
|
||||
GROUP BY t.C_OSZTALYCSOPORTID
|
||||
) x
|
||||
ORDER BY cnt DESC
|
||||
END
|
||||
CREATE TABLE #kapcsolodoOsztalyCsoportok (Id int PRIMARY KEY)
|
||||
INSERT INTO #kapcsolodoOsztalyCsoportok
|
||||
SELECT ID FROM T_CSOPORT_OSSZES WHERE C_OSZTALYBONTASID = @osztalyId AND TOROLT = 'F'
|
||||
UNION
|
||||
SELECT @osztalyId
|
||||
|
||||
IF @csoportId IS NOT NULL AND @csoportId NOT IN (SELECT ID FROM #kapcsolodoOsztalyCsoportok)
|
||||
BEGIN
|
||||
INSERT INTO #kapcsolodoOsztalyCsoportok SELECT @csoportId
|
||||
END
|
||||
SELECT
|
||||
t.ID AS TanitasiOraId
|
||||
,ROW_NUMBER() OVER (PARTITION BY t.C_TANTARGYID ORDER BY C_ORAKEZDETE, C_BEJEGYZESIDEJE) AS OraSorszam
|
||||
FROM T_TANITASIORA_OSSZES t
|
||||
WHERE t.C_OSZTALYCSOPORTID IN (SELECT ID FROM #kapcsolodoOsztalyCsoportok)
|
||||
AND t.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND CAST(t.C_ORAKEZDETE AS date) <= @datum
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND t.C_MEGTARTOTT = 'T'
|
||||
AND t.TOROLT = 'F'
|
||||
END
|
||||
END
|
||||
GO
|
@@ -0,0 +1,302 @@
|
||||
DROP PROCEDURE IF EXISTS dbo.sp_GetSzakmaiGyNaplo
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GetSzakmaiGyNaplo]
|
||||
@tanevId int
|
||||
,@intezmenyId int
|
||||
,@csoportId int
|
||||
,@iskolaErdekuSzamit bit
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
CREATE TABLE #Tanulo (
|
||||
Tanulo int
|
||||
,Osztaly nvarchar(max)
|
||||
,TanuloNeve nvarchar(255)
|
||||
,TanuloOktAzon nvarchar(20)
|
||||
,BelepesDatum DATETIME
|
||||
)
|
||||
CREATE TABLE #OraSorszam (
|
||||
TanitasioraId int
|
||||
,OraSorszam int
|
||||
)
|
||||
CREATE TABLE #mulasztas (
|
||||
Csoport nvarchar(1)
|
||||
,Tanulo int
|
||||
,Oraszam int
|
||||
)
|
||||
CREATE TABLE #hianyzas (
|
||||
Tanulo int
|
||||
,Osztaly nvarchar(max)
|
||||
,Honap int
|
||||
,IgazoltE nvarchar(1)
|
||||
)
|
||||
CREATE TABLE #hianyzasOssz (
|
||||
Osztaly int
|
||||
,Honap int
|
||||
,IgazoltE nvarchar(1)
|
||||
)
|
||||
CREATE TABLE #igazoltH (Csoport int, [1] int, [2] int, [3] int, [4] int, [5] int, [6] int, [7] int, [8] int, [9] int, [10] int,
|
||||
[11] int, [12] int)
|
||||
CREATE TABLE #igazolatlanH (Csoport int, [1] int, [2] int, [3] int, [4] int, [5] int, [6] int, [7] int, [8] int, [9] int, [10] int,
|
||||
[11] int, [12] int)
|
||||
CREATE TABLE #Igazolt (
|
||||
Csoport int
|
||||
,Osszes int
|
||||
)
|
||||
CREATE TABLE #IgazoltOsszesOsszes (
|
||||
Csoport int
|
||||
,Osszes int
|
||||
)
|
||||
|
||||
--Kezdőoldal
|
||||
SELECT
|
||||
ia.c_nev as IntezmenyNev
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@tanevId) as IntezmenyCim
|
||||
,ia.c_omkod as OMKOD
|
||||
,ia.c_igazgatoneve as IntezmenyVezeto
|
||||
,ocs.c_nev NapkozisCsoport
|
||||
,isnull(f.c_nyomtatasinev,'-') as CsoportVezeto
|
||||
,isnull(cs.c_csoportnaploleiras,'-') as CsoportNaploLeiras
|
||||
,FORMAT(cs.c_csoportnaplomegnyitasa, 'yyyy. MMMM dd.', 'hu-hu') as Megnyitas
|
||||
,isnull(FORMAT(cs.c_csoportnaplozarasa, 'yyyy. MMMM dd.', 'hu-hu'),'-') as Lezaras
|
||||
,t.c_nev as Tanev
|
||||
,cs.c_csoportnaploleiras as Megjegyzes
|
||||
,ocs.ID NapkozisCsoportId
|
||||
,f.ID CsoportVezetoId
|
||||
,ISNULL(ocs.C_EVFOLYAMTIPUSA, 1296) AS EvfolyamTipusa -- 1296 = Na
|
||||
,ocs.C_FELADATELLATASIHELYID as FeladatEllatasiHelyId
|
||||
,ocs.C_KERESZTFELEVES as OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM as CSJVegzosEvfolyamu
|
||||
,cs.C_TIPUSA as CsoportTipusa
|
||||
FROM T_INTEZMENY_OSSZES i
|
||||
INNER JOIN T_INTEZMENYADATOK_OSSZES ia on ia.C_INTEZMENYID = i.ID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs on ocs.C_INTEZMENYID = i.ID
|
||||
INNER JOIN T_CSOPORT_OSSZES cs on cs.ID = ocs.ID
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f on f.ID = cs.C_CSOPORTVEZETOID
|
||||
INNER JOIN T_TANEV_OSSZES t on t.ID = ia.C_TANEVID
|
||||
WHERE i.ID = @intezmenyid
|
||||
AND ia.C_TANEVID = @tanevid
|
||||
AND ocs.ID = @csoportId
|
||||
|
||||
--Csoport tanulóinak osztályai
|
||||
SELECT
|
||||
COUNT(DISTINCT TanuloId) Tanulo
|
||||
,dbo.fnGetDokumentumTanuloAktualisOsztaly(TanuloId) Osztaly
|
||||
,dbo.fnGetDokumentumTanuloAktualisOsztalyId(TanuloId) OsztalyId
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @csoportId, 'T')
|
||||
GROUP BY dbo.fnGetDokumentumTanuloAktualisOsztaly(TanuloId), dbo.fnGetDokumentumTanuloAktualisOsztalyId(TanuloId)
|
||||
|
||||
INSERT INTO #Tanulo
|
||||
SELECT
|
||||
ocst.TanuloId
|
||||
,dbo.fnGetDokumentumTanuloAktualisOsztaly(ocst.TanuloId) /*TODO:Tobb Osztaly*//*OM-1600*/
|
||||
,fh.C_NYOMTATASINEV
|
||||
,fh.C_OKTATASIAZONOSITO
|
||||
,ocst.BelepesDatum AS BelepesDatum
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @csoportId, 'T') AS ocst
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID=ocst.TanuloId AND fh.TOROLT='F'
|
||||
|
||||
DECLARE @datum date = getdate()
|
||||
|
||||
INSERT INTO #OraSorszam
|
||||
EXEC [sp_GetOraSorszamByOsztaly]
|
||||
@osztalyCsoportId = @csoportId
|
||||
,@datum = @datum
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@tanevId = @tanevId
|
||||
|
||||
INSERT INTO #mulasztas
|
||||
SELECT
|
||||
'x' Csoport
|
||||
,tm.c_oratanuloiid Tanulo
|
||||
,oes.OraSorszam AS OraSzam
|
||||
FROM T_TANULOMULASZTAS_OSSZES tm
|
||||
INNER JOIN T_TANITASIORA_OSSZES tao on tm.C_TANITASIORAKID=tao.ID and tao.C_TANEVID=@tanevid
|
||||
LEFT JOIN #OraSorszam oes on oes.TanitasioraId=tao.ID
|
||||
WHERE tao.C_OSZTALYCSOPORTID=@csoportId
|
||||
AND tm.TOROLT='F'
|
||||
AND tm.C_TANEVID=@tanevid
|
||||
AND tm.C_INTEZMENYID=@intezmenyid
|
||||
AND (@iskolaErdekuSzamit = 1 OR (C_IGAZOLASTIPUSA <> 1533 OR C_IGAZOLASTIPUSA IS NULL))
|
||||
|
||||
SELECT f.c_nyomtatasinev Tanulo, tanulo.Osztaly Osztaly, m.[1], m.[2], m.[3], m.[4], m.[5], m.[6], m.[7], m.[8], m.[9], m.[10],
|
||||
m.[11], m.[12], m.[13], m.[14], m.[15], m.[16], m.[17], m.[18],m.[19],m.[20],
|
||||
m.[21], m.[22], m.[23], m.[24], m.[25], m.[26], m.[27], m.[28],m.[29],m.[30],
|
||||
m.[31], m.[32], m.[33], m.[34], m.[35], m.[36], m.[37], m.[38],m.[39],m.[40],
|
||||
m.[41], m.[42], m.[43], m.[44], m.[45], m.[46], m.[47], m.[48],m.[49],m.[50],
|
||||
osszesM.Osszes, tanulo.BelepesDatum
|
||||
FROM #Tanulo tanulo
|
||||
LEFT JOIN (select * from #mulasztas mulasztas pivot (max(Csoport) for Oraszam in ([1], [2], [3], [4], [5], [6], [7], [8], [9], [10],
|
||||
[11], [12], [13], [14], [15], [16], [17], [18],[19],[20],
|
||||
[21], [22], [23], [24], [25], [26], [27], [28],[29],[30],
|
||||
[31], [32], [33], [34], [35], [36], [37], [38],[39],[40],
|
||||
[41], [42], [43], [44], [45], [46], [47], [48],[49],[50])) pv)m on m.Tanulo=tanulo.Tanulo
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f on f.id=tanulo.Tanulo
|
||||
LEFT JOIN (select Tanulo, count(Csoport) as Osszes from #mulasztas m group by Tanulo) osszesM on osszesM.Tanulo=tanulo.Tanulo
|
||||
order by f.c_nyomtatasinev
|
||||
|
||||
--napló
|
||||
declare @letszam int=(select count(tcs.c_tanuloid) from T_TANULOCSOPORT_OSSZES tcs where tcs.c_osztalycsoportid=@csoportId and tcs.Torolt='F')
|
||||
|
||||
SELECT
|
||||
tao.Id TanitasioraId
|
||||
,dbo.fnGetDokumentumDatumFormatum(tao.C_DATUM) Datum
|
||||
,C_ORATULAJDONOSID PedagogusId
|
||||
,ISNULL('Helyettesítő: ' + helyettesito.C_NYOMTATASINEV, pedagogus.C_NYOMTATASINEV) PedagogusNev
|
||||
,IIF(C_MEGTARTOTT = 'T', REPLACE(REPLACE(C_TEMA, CHAR(0x0007),''), CHAR(0x000B), ''), 'Elmaradt') Tema
|
||||
,@letszam-isnull(hianyzo.Hianyzok,0) as Letszam
|
||||
,IIF(tantargy.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL, C_NEVNYOMTATVANYBAN + ' (' + tantargy.C_NEV + ')', tantargy.C_NEV) TantargyNev
|
||||
,tao.C_TANTARGYID TantargyId
|
||||
,tao.C_MEGTARTOTT Megtartott
|
||||
,C_OSZTALYCSOPORTID OsztalyCsoportId
|
||||
INTO #megtartottOrak
|
||||
FROM T_TANITASIORA_OSSZES tao
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
tm.c_tanitasiorakid as Tanitasiora
|
||||
,count(tm.c_oratanuloiid) Hianyzok
|
||||
FROM T_TANULOMULASZTAS_OSSZES tm
|
||||
WHERE tm.TOROLT='F'
|
||||
GROUP BY tm.c_tanitasiorakid) hianyzo ON hianyzo.Tanitasiora=tao.id
|
||||
INNER JOIN T_FELHASZNALO_OSSZES pedagogus ON pedagogus.ID = tao.C_TANARID
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES helyettesito ON helyettesito.ID = tao.C_HELYETTESITOTANARID
|
||||
INNER JOIN T_TANTARGY_OSSZES tantargy ON tantargy.ID = tao.C_TANTARGYID AND tantargy.C_GYAKORLATI = 'T'
|
||||
WHERE C_OSZTALYCSOPORTID = @csoportId
|
||||
AND tao.TOROLT = 'F'
|
||||
ORDER BY tao.C_DATUM
|
||||
|
||||
SELECT * FROM #megtartottOrak
|
||||
|
||||
--hiányzások
|
||||
|
||||
INSERT INTO #hianyzas
|
||||
SELECT
|
||||
Tanulo
|
||||
,Osztaly
|
||||
,datepart(month,tao.c_datum) as Honap
|
||||
,tm.c_igazolt as IgazoltE
|
||||
FROM #Tanulo tanulo
|
||||
LEFT JOIN T_TANULOMULASZTAS_OSSZES tm on tm.C_ORATANULOIID=tanulo.Tanulo AND tm.TOROLT='F' AND tm.C_TANEVID=@tanevid
|
||||
LEFT JOIN T_TANITASIORA_OSSZES tao on tao.ID=tm.C_TANITASIORAKID AND tao.C_TANEVID=@tanevid
|
||||
WHERE tao.C_OSZTALYCSOPORTID=@csoportId
|
||||
AND tao.TOROLT='F'
|
||||
AND (@iskolaErdekuSzamit = 1 OR (C_IGAZOLASTIPUSA <> 1533 OR C_IGAZOLASTIPUSA IS NULL))
|
||||
|
||||
SELECT f.c_nyomtatasinev as Tanulo, tanulo.Osztaly Osztaly,
|
||||
--igazolt
|
||||
iif(i.[1]=0,null, i.[1]) as [1], iif(i.[2]=0,null, i.[2]) as [2], iif(i.[3]=0,null, i.[3]) as [3], iif(i.[4]=0,null, i.[4]) as [4], iif(i.[5]=0,null, i.[5]) as [5],iif(i.[6]=0,null, i.[6]) as [6],
|
||||
iif(i.[7]=0,null, i.[7]) as [7], iif(i.[8]=0,null, i.[8]) as [8], iif(i.[9]=0,null, i.[9]) as [9], iif(i.[10]=0,null, i.[10]) as [10], iif(i.[11]=0,null, i.[11]) as [11], iif(i.[12]=0,null, i.[12]) as [12],
|
||||
--igazolatlan
|
||||
iif(ni.[1]=0,null, ni.[1]) as n1, iif(ni.[2]=0,null, ni.[2]) as n2, iif(ni.[3]=0,null, ni.[3]) as n3, iif(ni.[4]=0,null, ni.[4]) as n4, iif(ni.[5]=0,null, ni.[5]) as n5,iif(ni.[6]=0,null, ni.[6]) as n6,
|
||||
iif(ni.[7]=0,null, ni.[7]) as n7, iif(ni.[8]=0,null, ni.[8]) as n8, iif(ni.[9]=0,null, ni.[9]) as n9, iif(ni.[10]=0,null, ni.[10]) as n10, iif(ni.[11]=0,null, ni.[11]) as n11, iif(ni.[12]=0,null, ni.[12]) as n12,
|
||||
igazolt.Igazolt, igazolatlan.Igazolatlan, tanulo.BelepesDatum
|
||||
FROM #Tanulo tanulo
|
||||
LEFT JOIN (select pv.* from #hianyzas hianyzas pivot (count(Honap) for Honap in ([1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [11], [12]))pv where pv.IgazoltE='T')i on tanulo.Tanulo=i.Tanulo
|
||||
LEFT JOIN (select pv.* from #hianyzas hianyzas pivot (count(Honap) for Honap in ([1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [11], [12]))pv where pv.IgazoltE='F')ni on tanulo.Tanulo=ni.Tanulo
|
||||
LEFT JOIN (select hianyzas.Tanulo Tanulo, count(IgazoltE) as Igazolt from #hianyzas hianyzas where hianyzas.IgazoltE='T' group by hianyzas.Tanulo) igazolt on igazolt.Tanulo=tanulo.Tanulo
|
||||
LEFT JOIN (select hianyzas.Tanulo Tanulo, count(IgazoltE) as Igazolatlan from #hianyzas hianyzas where hianyzas.IgazoltE='F' group by hianyzas.Tanulo) igazolatlan on igazolatlan.Tanulo=tanulo.Tanulo
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f on f.id=tanulo.Tanulo
|
||||
|
||||
--Mulasztások összesen
|
||||
|
||||
insert into #hianyzasOssz
|
||||
select @csoportId, datepart(month,tao.c_datum) as Honap, tm.c_igazolt as IgazoltE from #Tanulo tanulo
|
||||
left join T_TANULOMULASZTAS_OSSZES tm on tm.c_oratanuloiid=tanulo.Tanulo and tm.torolt='F' and tm.c_tanevid=@tanevid
|
||||
left join T_TANITASIORA_OSSZES tao on tao.id=tm.c_tanitasiorakid and tao.c_tanevid=@tanevid
|
||||
where
|
||||
tao.c_osztalycsoportid=@csoportId
|
||||
and tao.torolt='F'
|
||||
AND (@iskolaErdekuSzamit = 1 OR (C_IGAZOLASTIPUSA <> 1533 OR C_IGAZOLASTIPUSA IS NULL))
|
||||
|
||||
|
||||
insert into #igazoltH
|
||||
select @csoportId, iif(i.[1]=0,null, i.[1]) as [1], iif(i.[2]=0,null, i.[2]) as [2], iif(i.[3]=0,null, i.[3]) as [3], iif(i.[4]=0,null, i.[4]) as [4], iif(i.[5]=0,null, i.[5]) as [5],iif(i.[6]=0,null, i.[6]) as [6],
|
||||
iif(i.[7]=0,null, i.[7]) as [7], iif(i.[8]=0,null, i.[8]) as [8], iif(i.[9]=0,null, i.[9]) as [9], iif(i.[10]=0,null, i.[10]) as [10], iif(i.[11]=0,null, i.[11]) as [11], iif(i.[12]=0,null, i.[12]) as [12]
|
||||
from #hianyzasOssz ho pivot (count(Honap) for Honap in ([1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [11], [12]))i where i.IgazoltE='T'
|
||||
|
||||
--Mulasztott órák összesen
|
||||
|
||||
insert into #igazolatlanH
|
||||
select @csoportId, iif(ni.[1]=0,null, ni.[1]) as n1, iif(ni.[2]=0,null, ni.[2]) as n2, iif(ni.[3]=0,null, ni.[3]) as n3, iif(ni.[4]=0,null, ni.[4]) as n4, iif(ni.[5]=0,null, ni.[5]) as n5,iif(ni.[6]=0,null, ni.[6]) as n6,
|
||||
iif(ni.[7]=0,null, ni.[7]) as n7, iif(ni.[8]=0,null, ni.[8]) as n8, iif(ni.[9]=0,null, ni.[9]) as n9, iif(ni.[10]=0,null, ni.[10]) as n10, iif(ni.[11]=0,null, ni.[11]) as n11, iif(ni.[12]=0,null, ni.[12]) as n12
|
||||
from #hianyzasOssz ho pivot (count(Honap) for Honap in ([1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [11], [12]))ni where ni.IgazoltE='F'
|
||||
|
||||
select iif(i.[1]=0,null, i.[1]) as [1], iif(i.[2]=0,null, i.[2]) as [2], iif(i.[3]=0,null, i.[3]) as [3], iif(i.[4]=0,null, i.[4]) as [4], iif(i.[5]=0,null, i.[5]) as [5],iif(i.[6]=0,null, i.[6]) as [6],
|
||||
iif(i.[7]=0,null, i.[7]) as [7], iif(i.[8]=0,null, i.[8]) as [8], iif(i.[9]=0,null, i.[9]) as [9], iif(i.[10]=0,null, i.[10]) as [10], iif(i.[11]=0,null, i.[11]) as [11], iif(i.[12]=0,null, i.[12]) as [12],
|
||||
iif(ni.[1]=0,null, ni.[1]) as n1, iif(ni.[2]=0,null, ni.[2]) as n2, iif(ni.[3]=0,null, ni.[3]) as n3, iif(ni.[4]=0,null, ni.[4]) as n4, iif(ni.[5]=0,null, ni.[5]) as n5,iif(ni.[6]=0,null, ni.[6]) as n6,
|
||||
iif(ni.[7]=0,null, ni.[7]) as n7, iif(ni.[8]=0,null, ni.[8]) as n8, iif(ni.[9]=0,null, ni.[9]) as n9, iif(ni.[10]=0,null, ni.[10]) as n10, iif(ni.[11]=0,null, ni.[11]) as n11, iif(ni.[12]=0,null, ni.[12]) as n12
|
||||
from #igazolth i
|
||||
left join #igazolatlanH ni on i.Csoport=ni.csoport
|
||||
|
||||
--Mulasztó tanulók szama
|
||||
|
||||
INSERT INTO #Igazolt
|
||||
SELECT
|
||||
@csoportId as Id
|
||||
,count(Tanulo) as IgazoltOsszes
|
||||
FROM (select distinct tanulo from #hianyzas where IgazoltE='T')m
|
||||
|
||||
SELECT
|
||||
i.Osszes IgazoltOsszes
|
||||
,ni.Osszes IgazolatlanOsszes
|
||||
FROM #Igazolt i
|
||||
left join (select @csoportId as Id, count(Tanulo) as Osszes from (select distinct tanulo from #hianyzas where IgazoltE='F')m) ni on ni.Id=i.Csoport
|
||||
|
||||
--Mulasztott órák összesen-összesen
|
||||
|
||||
INSERT INTO #IgazoltOsszesOsszes
|
||||
SELECT
|
||||
@csoportId
|
||||
,count(IgazoltE)
|
||||
FROM #hianyzasOssz
|
||||
WHERE IgazoltE='T'
|
||||
|
||||
select
|
||||
ioo.Osszes IgazoltOsszesOsszes
|
||||
,nioo.Osszes as IgazolatlanOsszesOsszes
|
||||
from #IgazoltOsszesOsszes ioo
|
||||
LEFT JOIN (select @csoportId as Id, count(IgazoltE) Osszes from #hianyzasOssz where IgazoltE='F') nioo on nioo.Id=ioo.Csoport
|
||||
|
||||
--Megtartott órák száma
|
||||
SELECT
|
||||
COUNT(TantargyId) TantargyOraszam
|
||||
,Tantargynev TantargyNev
|
||||
INTO #MegtartottOrakSzama
|
||||
FROM #megtartottOrak
|
||||
WHERE Megtartott = 'T'
|
||||
GROUP BY TantargyId, TantargyNev
|
||||
|
||||
|
||||
SELECT DISTINCT
|
||||
SUM(tmp.TantargyOraszam) OsszesTantargySzam
|
||||
,STUFF((
|
||||
SELECT DISTINCT ', ' + btmp.TantargyNev + '(' + CAST(btmp.TantargyOraszam AS nvarchar(MAX)) + ')'
|
||||
FROM #MegtartottOrakSzama btmp
|
||||
FOR XML PATH(''), TYPE) .value('.','nvarchar(MAX)'),1,2,'') Tantargyak
|
||||
FROM #MegtartottOrakSzama tmp
|
||||
|
||||
-- Csoport tanárai
|
||||
SELECT
|
||||
targy.C_NEV TargyNev
|
||||
,tanar.C_NYOMTATASINEV TanarNev
|
||||
,targykategoria.C_ORDER
|
||||
,tanar.ID TanarId
|
||||
,tanar.C_OKTATASIAZONOSITO TanarOktAzon
|
||||
FROM T_FELHASZNALO_OSSZES tanar
|
||||
INNER JOIN T_FOGLALKOZAS_OSSZES f ON f.C_TANARID = tanar.ID and f.TOROLT='F' and f.C_OSZTALYCSOPORTID = @csoportId
|
||||
INNER JOIN T_TANTARGY_OSSZES targy ON targy.ID = f.C_TANTARGYID and targy.C_GYAKORLATI = 'T' and targy.TOROLT='F'
|
||||
INNER JOIN T_TARGYKATEGORIATIPUS_OSSZES ON T_TARGYKATEGORIATIPUS_OSSZES.ID = targy.C_TARGYKATEGORIA
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES targykategoria ON targykategoria.ID = T_TARGYKATEGORIATIPUS_OSSZES.ID AND targykategoria.TOROLT = 'F' AND targykategoria.C_TANEVID = @tanevId
|
||||
WHERE tanar.TOROLT = 'F' AND f.TOROLT = 'F'
|
||||
AND tanar.C_INTEZMENYID = @intezmenyid
|
||||
AND tanar.C_TANEVID = @tanevId
|
||||
GROUP BY C_ORDER, targy.C_NEV, tanar.C_NYOMTATASINEV, tanar.ID, tanar.C_OKTATASIAZONOSITO
|
||||
ORDER BY C_ORDER, targy.C_NEV, tanar.C_NYOMTATASINEV
|
||||
|
||||
-- Csoport tanulói
|
||||
SELECT * FROM #Tanulo
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,443 @@
|
||||
DROP PROCEDURE IF EXISTS uspGetTanoranKivuliNaplo
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetTanoranKivuliNaplo
|
||||
@tanevId int
|
||||
,@intezmenyId int
|
||||
,@csoportId int
|
||||
,@iskolaErdekuSzamit bit
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@datum date = GETDATE()
|
||||
,@letszam int
|
||||
|
||||
CREATE TABLE #students (
|
||||
ID int
|
||||
,Osztaly nvarchar (max)
|
||||
,OsztalyId int
|
||||
,BelepesDatum datetime
|
||||
)
|
||||
|
||||
CREATE TABLE #OraSorszam (
|
||||
TanitasioraId int
|
||||
,OraSorszam nvarchar (100)
|
||||
)
|
||||
|
||||
CREATE TABLE #TanuloCimTable (
|
||||
FelhasznaloId int
|
||||
,Cim nvarchar (max)
|
||||
,Cimtipusa nvarchar (max)
|
||||
)
|
||||
|
||||
CREATE TABLE #GondViseloCimTable (
|
||||
GondviseloId int
|
||||
,Cim nvarchar (max)
|
||||
,Cimtipusa nvarchar (max)
|
||||
)
|
||||
|
||||
CREATE TABLE #EmailCimTableTemp (
|
||||
FelhasznaloId int
|
||||
,EmailCim nvarchar (max)
|
||||
,GondviseloId int
|
||||
)
|
||||
|
||||
CREATE TABLE #EmailCimTanuloTable(
|
||||
FelhasznaloId int
|
||||
,EmailCim nvarchar (max)
|
||||
)
|
||||
|
||||
CREATE TABLE #EmailCimGondviseloTable (
|
||||
GondviseloId int
|
||||
,EmailCim nvarchar (max)
|
||||
)
|
||||
|
||||
CREATE TABLE #TelefonTableTemp(
|
||||
FelhasznaloId int
|
||||
,Telefon nvarchar (max)
|
||||
,GondviseloId int
|
||||
)
|
||||
|
||||
CREATE TABLE #TanuloTelefonTable(
|
||||
FelhasznaloId int
|
||||
,Telefon nvarchar (max)
|
||||
)
|
||||
|
||||
CREATE TABLE #GondviseloTelefonTable (
|
||||
GondviseloId int
|
||||
,Telefon nvarchar (max)
|
||||
)
|
||||
|
||||
SELECT
|
||||
@letszam = COUNT(tcs.C_TANULOID)
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
WHERE tcs.C_OSZTALYCSOPORTID = @csoportId
|
||||
AND tcs.TOROLT='F'
|
||||
|
||||
--Fejlecoldal (Fejléc)
|
||||
SELECT
|
||||
ia.C_NEV AS IntezmenyNev
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@tanevId) AS IntezmenyCim
|
||||
,ia.C_OMKOD AS OMKOD
|
||||
,ia.C_IGAZGATONEVE AS IntezmenyVezeto
|
||||
,ocs.C_NEV AS Csoport
|
||||
,ocs.ID AS CsoportId
|
||||
,ISNULL(f.C_NYOMTATASINEV,'-') AS CsoportVezeto
|
||||
,ISNULL(cs.C_CSOPORTNAPLOLEIRAS,'-') AS CsoportNaploLeiras
|
||||
,dbo.fnGetDokumentumDatumFormatum(cs.C_CSOPORTNAPLOMEGNYITASA) AS Megnyitas
|
||||
,ISNULL(dbo.fnGetDokumentumDatumFormatum(cs.C_CSOPORTNAPLOZARASA),'-') AS Lezaras
|
||||
,t.C_NEV AS Tanev
|
||||
,cs.C_CSOPORTNAPLOLEIRAS AS Megjegyzes
|
||||
,f.ID AS CsoportVezetoId
|
||||
,ISNULL(ocs.C_EVFOLYAMTIPUSA, 1296) AS EvfolyamTipusa -- 1296 = Na
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM AS CSJVegzosEvfolyamu
|
||||
,cs.C_TIPUSA AS CsoportTipusa
|
||||
FROM T_INTEZMENY_OSSZES i
|
||||
INNER JOIN T_INTEZMENYADATOK_OSSZES ia ON ia.C_INTEZMENYID = i.ID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.C_INTEZMENYID = i.ID
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.ID = ocs.ID
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = cs.C_CSOPORTVEZETOID
|
||||
INNER JOIN T_TANEV_OSSZES t ON t.ID = ia.C_TANEVID
|
||||
WHERE ia.C_TANEVID = @tanevid
|
||||
AND ocs.ID = @csoportId
|
||||
|
||||
INSERT INTO #students (
|
||||
ID
|
||||
,Osztaly
|
||||
,OsztalyId
|
||||
,BelepesDatum
|
||||
)
|
||||
SELECT
|
||||
TanuloId
|
||||
,dbo.fnGetDokumentumTanuloAktualisOsztaly(TanuloId) AS Osztaly
|
||||
,dbo.fnGetDokumentumTanuloAktualisOsztalyId(TanuloId) AS OsztalyId
|
||||
,BelepesDatum AS BelepesDatum
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @csoportId, 'T')
|
||||
|
||||
--Osztaly (Csoport tanulóinak osztályai)
|
||||
SELECT
|
||||
COUNT(Id) AS Tanulo
|
||||
,Osztaly
|
||||
,OsztalyId
|
||||
FROM #students
|
||||
GROUP BY
|
||||
Osztaly
|
||||
,OsztalyId
|
||||
|
||||
--Napló
|
||||
INSERT INTO #OraSorszam (
|
||||
TanitasioraId
|
||||
,OraSorszam
|
||||
)
|
||||
EXEC sp_GetOraSorszamByOsztaly
|
||||
@osztalyCsoportId = @csoportId
|
||||
,@datum = @datum
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@tanevId = @tanevId
|
||||
|
||||
SELECT
|
||||
dbo.fnGetDokumentumDatumFormatum(tao.C_ORAKEZDETE) + CONVERT(varchar(5), tao.C_ORAKEZDETE, 108) + '-' + CONVERT(varchar(5), tao.C_ORAVEGE, 108) AS Datum
|
||||
,IIF(tantargy.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL, C_NEVNYOMTATVANYBAN
|
||||
+ ' (' + tantargy.C_NEV + ')', tantargy.C_NEV) AS TantargyNev
|
||||
,tao.C_TANTARGYID AS TantargyId
|
||||
,tao.C_MEGTARTOTT AS Megtartott
|
||||
,IIF(C_MEGTARTOTT = 'F', 'Elmaradt', tao.C_TEMA) AS Tema
|
||||
,@letszam - ISNULL(hianyzo.Hianyzok, 0) AS Letszam
|
||||
,IIF(C_MEGTARTOTT = 'F', '-', f.C_NYOMTATASINEV) AS Pedagogus
|
||||
,Terem.C_NEV AS TeremNev
|
||||
,ISNULL(Oraszam.OraSorszam + '.', '-') AS OraSorszam
|
||||
,tao.C_ORAKEZDETE AS OraKezdete
|
||||
INTO #megtartottOrak
|
||||
FROM T_TANITASIORA_OSSZES tao
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
tm.C_TANITASIORAKID AS Tanitasiora
|
||||
,COUNT(tm.C_ORATANULOIID) AS Hianyzok
|
||||
FROM T_TANULOMULASZTAS_OSSZES tm
|
||||
WHERE tm.torolt = 'F'
|
||||
AND C_TIPUS IN (1499, 1500)
|
||||
GROUP BY tm.C_TANITASIORAKID
|
||||
) hianyzo ON hianyzo.Tanitasiora = tao.ID
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.id = tao.C_ORATULAJDONOSID
|
||||
INNER JOIN T_TANTARGY_OSSZES tantargy ON tantargy.Id = tao.C_TANTARGYID
|
||||
LEFT JOIN T_TEREM_OSSZES Terem ON Terem.Id = tao.C_TEREMID
|
||||
LEFT JOIN #OraSorszam Oraszam ON Oraszam.TanitasioraId = tao.Id
|
||||
WHERE tao.C_OSZTALYCSOPORTID = @csoportId
|
||||
AND tao.TOROLT='F'
|
||||
SELECT
|
||||
Datum
|
||||
,TantargyNev
|
||||
,TantargyId
|
||||
,Megtartott
|
||||
,Tema
|
||||
,Letszam
|
||||
,Pedagogus
|
||||
,TeremNev
|
||||
,OraSorszam
|
||||
,OraKezdete
|
||||
FROM #megtartottOrak
|
||||
ORDER BY OraKezdete
|
||||
|
||||
/*TANULÓ adatai*/
|
||||
SELECT DISTINCT
|
||||
ta.TanuloId
|
||||
,ta.OktAzon
|
||||
,ta.TajSzam
|
||||
,ta.AnyjaNeve
|
||||
,ta.SzulHely
|
||||
,ta.SzulIdo
|
||||
,ta.SocAdat
|
||||
,ta.Kepzes
|
||||
,ta.TanuloNeve
|
||||
,ta.Allampolgarsaga
|
||||
,ta.DiakIgazolvanySzam
|
||||
,ta.AktualisOsztaly Osztalya
|
||||
,ta.BelepesDatum
|
||||
FROM fnGetDokumentumTanulokAdatai(@tanevId, @csoportId) ta
|
||||
ORDER BY TanuloNeve
|
||||
|
||||
/*TANULÓ elérhetőségei */
|
||||
INSERT INTO #TanuloCimTable (
|
||||
FelhasznaloId
|
||||
,Cim
|
||||
,Cimtipusa
|
||||
)
|
||||
SELECT DISTINCT
|
||||
TanuloId
|
||||
,STUFF(
|
||||
(
|
||||
SELECT DISTINCT
|
||||
CAST(Btemp.Cim AS nvarchar (max)) + char(13) + char(10)
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim (0, @tanevId, @csoportid) btemp
|
||||
WHERE temp.TanuloId = btemp.TanuloId
|
||||
AND temp.CimTipusa = btemp.CimTipusa
|
||||
FOR XML PATH(''), TYPE
|
||||
).value
|
||||
('.', 'NVARCHAR(MAX)'), 1, 0, ''
|
||||
)
|
||||
,cimTipusa.C_NAME
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim (0, @tanevId, @csoportid) temp
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES cimTipusa ON cimTipusa.Id = temp.CimTipusa
|
||||
AND cimTipusa.C_TANEVID = @tanevId
|
||||
|
||||
INSERT INTO #GondViseloCimTable (
|
||||
GondviseloId
|
||||
,Cim
|
||||
,Cimtipusa
|
||||
)
|
||||
SELECT DISTINCT
|
||||
GondviseloId
|
||||
,STUFF(
|
||||
(
|
||||
SELECT DISTINCT
|
||||
CAST(Btemp.Cim AS nvarchar (max)) + char(13) + char(10)
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim (1, @tanevId, @csoportid) btemp
|
||||
WHERE temp.GondviseloId = btemp.GondviseloId
|
||||
AND temp.CimTipusa = btemp.CimTipusa
|
||||
FOR XML PATH(''), TYPE
|
||||
).value
|
||||
('.', 'NVARCHAR(MAX)'), 1 ,0, ''
|
||||
)
|
||||
,cimTipusa.C_NAME
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim (1, @tanevId, @csoportid) temp
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES cimTipusa ON cimTipusa.Id = temp.CimTipusa
|
||||
AND cimTipusa.C_TANEVID = @tanevId
|
||||
|
||||
INSERT INTO #EmailCimTableTemp (
|
||||
FelhasznaloId
|
||||
,EmailCim
|
||||
,GondviseloId
|
||||
)
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_EMAILCIM
|
||||
,C_GONDVISELOID
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @csoportid, '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
|
||||
|
||||
INSERT INTO #EmailCimTanuloTable (
|
||||
FelhasznaloId
|
||||
,EmailCim
|
||||
)
|
||||
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
|
||||
|
||||
INSERT INTO #EmailCimGondviseloTable (
|
||||
GondviseloId
|
||||
,EmailCim
|
||||
)
|
||||
SELECT DISTINCT
|
||||
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
|
||||
|
||||
INSERT INTO #TelefonTableTemp (
|
||||
FelhasznaloId
|
||||
,Telefon
|
||||
,GondviseloId
|
||||
)
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_TELEFONSZAM
|
||||
,C_GONDVISELOID
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @csoportid, 'T') tanulo
|
||||
INNER JOIN T_TELEFON_OSSZES telefon ON telefon.C_FELHASZNALOID = TanuloId
|
||||
WHERE
|
||||
telefon.TOROLT = 'F'
|
||||
AND telefon.C_TANEVID = @tanevId
|
||||
AND LEN(telefon.C_TELEFONSZAM) > 0
|
||||
|
||||
INSERT INTO #TanuloTelefonTable (
|
||||
FelhasznaloId
|
||||
,Telefon
|
||||
)
|
||||
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
|
||||
|
||||
INSERT INTO #GondviseloTelefonTable (
|
||||
GondviseloId
|
||||
,Telefon
|
||||
)
|
||||
SELECT DISTINCT
|
||||
GondviseloId
|
||||
,STUFF(
|
||||
(
|
||||
SELECT DISTINCT
|
||||
CAST(btemp.Telefon AS nvarchar (max)) + char(13) + char(10)
|
||||
FROM #TelefonTableTemp btemp
|
||||
WHERE temp.GondviseloId = btemp.GondviseloId
|
||||
AND temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
AND GondviseloId IS NOT NULL
|
||||
FOR XML PATH(''), TYPE
|
||||
).value
|
||||
('.', 'NVARCHAR(MAX)'), 1 ,0, ''
|
||||
)
|
||||
FROM #TelefonTableTemp temp
|
||||
WHERE GondviseloId IS NOT NULL
|
||||
|
||||
SELECT
|
||||
s.Id AS tanuloid
|
||||
,cim.Cimtipusa AS cimtipus
|
||||
,cim.Cim
|
||||
,email.EmailCim AS email
|
||||
,telefon.Telefon AS telefonszam
|
||||
FROM #students s
|
||||
LEFT JOIN #TanuloCimTable cim ON cim.FelhasznaloId = s.Id
|
||||
LEFT JOIN #EmailCimTanuloTable email ON email.FelhasznaloId = s.Id
|
||||
LEFT JOIN #TanuloTelefonTable telefon ON telefon.FelhasznaloId = s.Id
|
||||
ORDER BY Cimtipusa
|
||||
|
||||
/*gondviselő elérhetőségei */
|
||||
SELECT DISTINCT
|
||||
Gondviselok.TanuloId AS TanuloId
|
||||
,Gondviselok.GondviseloNev + ' (' + RokonsagiFok.C_NAME + ')' AS C_NEV
|
||||
,cim.Cimtipusa AS C_CIMTIPUSA
|
||||
,cim.cim AS C_OSSZETETTCIM
|
||||
,telefon.telefon AS C_TELEFONSZAM
|
||||
,email.emailcim AS C_EMAILCIM
|
||||
FROM fnGetDokumentumGondviselok (@csoportId, @tanevId, 'F', 'T') Gondviselok
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES RokonsagiFok ON RokonsagiFok.ID = Gondviselok.RokonsagifokId AND RokonsagiFok.C_TANEVID = @tanevId
|
||||
LEFT JOIN #EmailCimGondviseloTable email ON email.GondviseloId = Gondviselok.GondviseloId
|
||||
LEFT JOIN #GondviseloTelefonTable telefon ON telefon.GondviseloId = Gondviselok.GondviseloId
|
||||
LEFT JOIN #GondViseloCimTable cim ON cim.GondviseloId = Gondviselok.GondviseloId
|
||||
ORDER BY cim.Cimtipusa
|
||||
|
||||
--megtartott órák száma
|
||||
SELECT
|
||||
COUNT(mo.TantargyId) AS TantargyOraszam
|
||||
,mo.Tantargynev AS TantargyNev
|
||||
INTO #megtartottOrakSzama
|
||||
FROM #megtartottOrak mo
|
||||
WHERE mo.Megtartott = 'T'
|
||||
GROUP BY
|
||||
mo.TantargyId
|
||||
,mo.TantargyNev
|
||||
|
||||
SELECT DISTINCT
|
||||
SUM(tmp.TantargyOraszam) AS OsszesTantargySzam
|
||||
,STUFF(
|
||||
(
|
||||
SELECT DISTINCT
|
||||
', ' + btmp.TantargyNev + '(' + CAST(btmp.TantargyOraszam AS nvarchar (max)) + ')'
|
||||
FROM #megtartottOrakSzama btmp
|
||||
FOR XML PATH(''), TYPE
|
||||
).value('.', 'NVARCHAR(MAX)'), 1 , 2, ''
|
||||
) AS Tantargyak
|
||||
FROM #megtartottOrakSzama tmp
|
||||
|
||||
-- Csoport tanárai
|
||||
SELECT
|
||||
targy.C_NEV AS TargyNev
|
||||
,tanar.C_NYOMTATASINEV AS TanarNev
|
||||
,targykategoria.C_ORDER
|
||||
,tanar.ID TanarId
|
||||
,tanar.C_OKTATASIAZONOSITO AS TanarOktAzon
|
||||
FROM T_FELHASZNALO_OSSZES tanar
|
||||
INNER JOIN T_FOGLALKOZAS_OSSZES f ON f.C_TANARID = tanar.ID
|
||||
AND f.TOROLT='F'
|
||||
AND f.C_OSZTALYCSOPORTID = @csoportId
|
||||
INNER JOIN T_TANTARGY_OSSZES targy ON targy.ID = f.C_TANTARGYID
|
||||
AND targy.TOROLT='F'
|
||||
INNER JOIN T_TARGYKATEGORIATIPUS_OSSZES ON T_TARGYKATEGORIATIPUS_OSSZES.ID = targy.C_TARGYKATEGORIA
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES targykategoria ON targykategoria.ID = T_TARGYKATEGORIATIPUS_OSSZES.ID
|
||||
AND targykategoria.TOROLT = 'F'
|
||||
AND targykategoria.C_TANEVID = @tanevId
|
||||
WHERE tanar.TOROLT = 'F'
|
||||
AND tanar.C_INTEZMENYID = @intezmenyid
|
||||
AND tanar.c_tanevId = @tanevId
|
||||
GROUP BY
|
||||
C_ORDER
|
||||
,targy.C_NEV
|
||||
,tanar.C_NYOMTATASINEV
|
||||
,tanar.ID
|
||||
,tanar.C_OKTATASIAZONOSITO
|
||||
ORDER BY
|
||||
C_ORDER
|
||||
,targy.C_NEV
|
||||
,tanar.C_NYOMTATASINEV
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,360 @@
|
||||
-- =============================================
|
||||
-- Description: <Előszedjük a tanuló értékeléseket a megadott paraméterek alapján>
|
||||
-- =============================================
|
||||
DROP PROCEDURE IF EXISTS uspGetTanuloErtekelesListDataSet
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetTanuloErtekelesListDataSet
|
||||
@pTanevId int
|
||||
,@pId int = NULL
|
||||
,@pTanuloIdsString nvarchar(max) = NULL
|
||||
,@pOsztalyCsoportId int = NULL
|
||||
,@pCsoportTipusId int = NULL
|
||||
,@pTantargyId int = NULL
|
||||
,@pErtekeloId int = NULL
|
||||
,@pOsztalyzatId int = NULL
|
||||
,@pErtekelesModId int = NULL
|
||||
,@pTipusId int = NULL
|
||||
,@pDatumTol datetime = NULL
|
||||
,@pDatumIg datetime = NULL
|
||||
,@pRogzitesDatumTol datetime = NULL
|
||||
,@pRogzitesDatumIg datetime = NULL
|
||||
,@pErtekelesSzoveg nvarchar(max) = NULL
|
||||
,@pErtekelesTema nvarchar(255) = NULL
|
||||
,@pKellKapcsolodoCsoportok char = 'F'
|
||||
,@pFeladatKategoriaId int = NULL
|
||||
,@pOktatasiNevelesiFeladatId int = NULL
|
||||
,@pFeladatEllatasiHelyId int = NULL
|
||||
,@pEgyszerAdhatoTanuloErtekelesTipusIdListString nvarchar(255) = NULL
|
||||
,@pSpecialisErtekelesOsztalyzatEnumId int = NULL
|
||||
,@pSpecialisErtekelesOsztalyzatSzoveg nvarchar(255) = NULL
|
||||
,@pSpecialisErtekelesOsztalyzatSzovegRovidNev nvarchar(3) = NULL
|
||||
,@pSpecialisErtekelesOsztalyzatId int = NULL
|
||||
,@pSpecialisErtekelesOsztalyzatTema nvarchar(255) = NULL
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@sql nvarchar(max)
|
||||
,@preSelectSql nvarchar(max) = ''
|
||||
,@selectSql nvarchar(max) = N''
|
||||
,@joinSql nvarchar(max)
|
||||
,@whereSql nvarchar(max)
|
||||
,@postSelectSql nvarchar(max) = ''
|
||||
|
||||
IF @pTanuloIdsString IS NOT NULL AND LEN(@pTanuloIdsString)>0
|
||||
BEGIN
|
||||
SET @selectSql = N'
|
||||
CREATE TABLE #TanuloIds (
|
||||
TanuloId int PRIMARY KEY
|
||||
)
|
||||
|
||||
INSERT INTO #TanuloIds(TanuloId)
|
||||
SELECT value FROM STRING_SPLIT(@pTanuloIdsString, '','')
|
||||
'
|
||||
END
|
||||
SET @selectSql += N'
|
||||
--NOTE: Azért kell a DISTINCT, ha ugyanoda ki-/besorolgatják a tanulót!
|
||||
SELECT DISTINCT
|
||||
ert.ID AS ID
|
||||
,ert.C_DATUM AS Datum
|
||||
,ert.C_ROGZITESDATUM AS RogzitesDatum
|
||||
,ert.C_TIPUSID AS TipusId
|
||||
,ert.C_ISERTESITESELKULDVE AS IsErtesitesElkuldve
|
||||
,ert.C_ERTEKELESMODID AS ErtekelesModId
|
||||
,ert.C_ERTEKELESTEMA AS ErtekelesTema
|
||||
,ert.C_ERTEKELESOSZTALYZATID AS ErtekelesOsztalyzatId
|
||||
,ert.C_ERTEKELESSZOVEG AS ErtekelesSzoveg
|
||||
,ert.C_ERTEKELESSZOVEGFORMAZOTT AS ErtekelesSzovegFormazott
|
||||
,ert.C_ERTEKELESSZAZALEK AS ErtekelesSzazalek
|
||||
,ert.C_ISMAGATARTASSZORGALOM AS IsMagatartasSzorgalom
|
||||
,ert.C_MAGATARTASOSZTALYZATID AS MagatartasOsztalyzatId
|
||||
,ert.C_MAGATARTASSZOVEG AS MagatartasSzoveg
|
||||
,ert.C_MAGATARTASSZOVEGFORMAZOTT AS MagatartasSzovegFormazott
|
||||
,ert.C_MAGATARTASERTEKID AS MagatartasErtekId
|
||||
,ert.C_SZORGALOMOSZTALYZATID AS SzorgalomOsztalyzatId
|
||||
,ert.C_SZORGALOMSZOVEG AS SzorgalomSzoveg
|
||||
,ert.C_SZORGALOMSZOVEGFORMAZOTT AS SzorgalomSzovegFormazott
|
||||
,ert.C_SZORGALOMERTEKID AS SzorgalomErtekId
|
||||
,ert.CREATED AS Created
|
||||
,ert.C_OSZTALYCSOPORTID AS OsztalyCsoportId
|
||||
,ert.C_ERTEKELESSZOVEGROVIDNEV AS SzovegesErtekelesRovidNev
|
||||
,ISNULL(suly.C_SULY, 100) AS ErtekelesSuly
|
||||
,tantargy.ID AS TantargyId
|
||||
,ISNULL(tantargy.C_NEV, ''Magatartás/Szorgalom'') AS TantargyNev
|
||||
,tantargy.C_TARGYKATEGORIA AS TantargyKategoriaId
|
||||
,fotargy.ID AS FotargyId
|
||||
,fotargy.C_NEV AS FotargyNev
|
||||
,fotargy.C_TARGYKATEGORIA AS FotargyTantargyKategoriaId
|
||||
,tanulo.ID AS TanuloId
|
||||
,tanulo.C_NYOMTATASINEV AS TanuloNev
|
||||
,IIF(tanulo.C_NEVSORREND = ''T'',
|
||||
tanulo.C_UTONEV + '' '' + tanulo.C_VEZETEKNEV,
|
||||
tanulo.C_VEZETEKNEV + '' '' + tanulo.C_UTONEV
|
||||
) AS TanuloNevElotagNelkul
|
||||
,tanulo.C_OKTATASIAZONOSITO AS TanuloOktatasiAzonosito
|
||||
,tanulo.C_SZULETESIHELY AS TanuloSzuletesiHely
|
||||
,tanulo.C_SZULETESIDATUM AS TanuloSzuletesiIdo
|
||||
,tanulo.C_ANYJANEVE AS TanuloAnyjaNeve
|
||||
,tanar.ID AS ErtekeloId
|
||||
,tanar.C_NYOMTATASINEV AS ErtekeloNyomtatasiNev
|
||||
,IIF(tanar.C_NEVSORREND = ''T'',
|
||||
tanar.C_UTONEV + '' '' + tanar.C_VEZETEKNEV,
|
||||
tanar.C_VEZETEKNEV + '' '' + tanar.C_UTONEV
|
||||
) AS ErtekeloNyomtatasiNevElotagNelkul
|
||||
,ocs.C_NEV AS OsztalyCsoportNev
|
||||
,ocs.C_FELADATKATEGORIAID AS FeladatKategoriaId
|
||||
,rogziteskoriTanuloOsztaly.ID AS RogziteskoriTanuloOsztalyId
|
||||
,rogziteskoriTanuloOsztaly.C_NEV AS RogziteskoriTanuloOsztalyNev
|
||||
,rogziteskoriTanuloOsztaly.C_EVFOLYAMTIPUSA AS RogziteskoriTanuloOsztalyEvfolyamTipusId
|
||||
FROM T_TANULOERTEKELES_OSSZES ert'
|
||||
|
||||
SET @joinSql = N'
|
||||
LEFT JOIN T_TANARIATLAGSULY_OSSZES suly ON suly.C_TANEVID = ert.C_TANEVID AND suly.TOROLT = ''F''
|
||||
AND suly.C_ERTEKELESMODID = ert.C_ERTEKELESMODID
|
||||
LEFT JOIN T_TANTARGY_OSSZES tantargy ON tantargy.C_TANEVID = ert.C_TANEVID AND tantargy.TOROLT = ''F''
|
||||
AND tantargy.ID = ert.C_TANTARGYID
|
||||
LEFT JOIN T_TANTARGY_OSSZES fotargy ON fotargy.C_TANEVID = ert.C_TANEVID AND fotargy.TOROLT = ''F''
|
||||
AND fotargy.ID = tantargy.C_FOTARGYID
|
||||
LEFT JOIN T_OSZTALYCSOPORT_OSSZES rogziteskoriTanuloOsztaly ON rogziteskoriTanuloOsztaly.C_TANEVID = ert.C_TANEVID AND rogziteskoriTanuloOsztaly.TOROLT = ''F''
|
||||
AND rogziteskoriTanuloOsztaly.ID = ert.C_ROGZITESKORITANULOOSZTALYID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES tanulo ON tanulo.C_TANEVID = ert.C_TANEVID AND tanulo.TOROLT = ''F''
|
||||
AND tanulo.ID = ert.C_TANULOID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES tanar ON tanar.C_TANEVID = ert.C_TANEVID AND tanar.TOROLT = ''F''
|
||||
AND tanar.ID = ert.C_ERTEKELOID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.C_TANEVID = ert.C_TANEVID AND ocs.TOROLT = ''F''
|
||||
AND ocs.ID = ert.C_OSZTALYCSOPORTID'
|
||||
|
||||
SET @whereSql = N'
|
||||
WHERE ert.C_TANEVID = @pTanevId
|
||||
AND ert.TOROLT = ''F'''
|
||||
|
||||
IF @pId IS NOT NULL BEGIN
|
||||
SET @whereSql += N'
|
||||
AND ert.ID = @pId'
|
||||
END
|
||||
|
||||
IF (@pTanuloIdsString IS NOT NULL AND LEN(@pTanuloIdsString) > 0) BEGIN
|
||||
SET @joinSql += N'
|
||||
INNER JOIN #TanuloIds tanuloIds ON tanuloids.TanuloId = ert.C_TANULOID'
|
||||
END
|
||||
|
||||
IF @pOsztalyCsoportId IS NOT NULL BEGIN
|
||||
|
||||
SET @preSelectSql += N'
|
||||
CREATE TABLE #OsztalyCsoportIdList(
|
||||
ID int PRIMARY KEY
|
||||
)
|
||||
INSERT INTO #OsztalyCsoportIdList (ID)'
|
||||
|
||||
IF(@pKellKapcsolodoCsoportok = 'T') BEGIN
|
||||
|
||||
SET @preSelectSql += N'
|
||||
SELECT ID
|
||||
FROM fnGetKapcsolodoOsztalycsoportok(@pOsztalyCsoportId)'
|
||||
END
|
||||
ELSE BEGIN
|
||||
SET @preSelectSql += N'
|
||||
VALUES (@pOsztalyCsoportId)'
|
||||
END
|
||||
|
||||
SET @joinSql += N'
|
||||
LEFT JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_TANEVID = ert.C_TANEVID AND tcs.TOROLT = ''F''
|
||||
AND tcs.C_TANULOID = tanulo.ID
|
||||
AND tcs.C_BELEPESDATUM <= GETDATE()
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= GETDATE())'
|
||||
|
||||
SET @whereSql += N'
|
||||
AND ert.C_OSZTALYCSOPORTID IN (SELECT ID FROM #OsztalyCsoportIdList)
|
||||
AND EXISTS (
|
||||
SELECT 1
|
||||
FROM
|
||||
T_TANULOCSOPORT_OSSZES tcs
|
||||
WHERE tcs.C_TANEVID = ert.C_TANEVID
|
||||
AND tcs.TOROLT = ''F''
|
||||
AND tcs.C_OSZTALYCSOPORTID = @pOsztalyCsoportId
|
||||
AND tcs.C_TANULOID = ert.C_TANULOID
|
||||
)'
|
||||
|
||||
SET @postSelectSql += N'
|
||||
DROP TABLE IF EXISTS #OsztalyCsoportIdList'
|
||||
END
|
||||
|
||||
IF @pCsoportTipusId IS NOT NULL BEGIN
|
||||
SET @joinSql += N'
|
||||
LEFT JOIN T_CSOPORT_OSSZES csoport ON csoport.C_ALTANEVID = ert.C_TANEVID AND csoport.TOROLT = ''F''
|
||||
AND csoport.ID = ocs.ID'
|
||||
|
||||
SET @whereSql += N'
|
||||
AND csoport.C_TIPUSA = @pCsoportTipusId'
|
||||
END
|
||||
|
||||
IF @pTantargyId IS NOT NULL BEGIN
|
||||
SET @whereSql += N'
|
||||
AND tantargy.ID = @pTantargyId'
|
||||
END
|
||||
|
||||
IF @pErtekeloId IS NOT NULL BEGIN
|
||||
SET @whereSql += N'
|
||||
AND tanar.ID = @pErtekeloId'
|
||||
END
|
||||
|
||||
IF @pOsztalyzatId IS NOT NULL BEGIN
|
||||
SET @whereSql += N'
|
||||
AND (ert.C_ERTEKELESOSZTALYZATID = @pOsztalyzatId OR
|
||||
ert.C_MAGATARTASOSZTALYZATID = @pOsztalyzatId OR
|
||||
ert.C_SZORGALOMOSZTALYZATID = @pOsztalyzatId)'
|
||||
END
|
||||
|
||||
IF @pErtekelesModId IS NOT NULL BEGIN
|
||||
SET @whereSql += N'
|
||||
AND ert.C_ERTEKELESMODID = @pErtekelesModId'
|
||||
END
|
||||
|
||||
IF @pTipusId IS NOT NULL BEGIN
|
||||
SET @whereSql += N'
|
||||
AND ert.C_TIPUSID = @pTipusId'
|
||||
END
|
||||
|
||||
IF @pDatumTol IS NOT NULL BEGIN
|
||||
--NOTE: Ide az adott nap 00:00:00 időponttal fog bejönni.
|
||||
SET @whereSql += N'
|
||||
AND ert.C_DATUM >= @pDatumTol'
|
||||
END
|
||||
|
||||
IF @pDatumIg IS NOT NULL BEGIN
|
||||
--NOTE: Ide az adott nap 23:59:59 időponttal fog bejönni.
|
||||
SET @whereSql += N'
|
||||
AND ert.C_DATUM <= @pDatumIg'
|
||||
END
|
||||
|
||||
IF @pRogzitesDatumTol IS NOT NULL
|
||||
BEGIN
|
||||
--NOTE: Ide az adott nap 00:00:00 időponttal fog bejönni.
|
||||
SET @whereSql += N'
|
||||
AND ert.C_ROGZITESDATUM >= @pRogzitesDatumTol'
|
||||
END
|
||||
|
||||
IF @pRogzitesDatumIg IS NOT NULL BEGIN
|
||||
--NOTE: Ide az adott nap 23:59:59 időponttal fog bejönni.
|
||||
SET @whereSql += N'
|
||||
AND ert.C_ROGZITESDATUM <= @pRogzitesDatumIg'
|
||||
END
|
||||
|
||||
IF @pErtekelesSzoveg IS NOT NULL BEGIN
|
||||
SET @whereSql += N'
|
||||
AND (ert.C_ERTEKELESSZOVEG LIKE ''%'' + @pErtekelesSzoveg + ''%'' OR
|
||||
ert.C_MAGATARTASSZOVEG LIKE ''%'' + @pErtekelesSzoveg + ''%'' OR
|
||||
ert.C_SZORGALOMSZOVEG LIKE ''%'' + @pErtekelesSzoveg + ''%'')'
|
||||
END
|
||||
|
||||
IF @pErtekelesTema IS NOT NULL BEGIN
|
||||
SET @whereSql += N'
|
||||
AND ert.C_ERTEKELESTEMA LIKE ''%'' + @pErtekelesTema + ''%'''
|
||||
END
|
||||
|
||||
IF @pFeladatKategoriaId IS NOT NULL BEGIN
|
||||
SET @whereSql += N'
|
||||
AND ocs.C_FELADATKATEGORIAID = @pFeladatKategoriaId'
|
||||
END
|
||||
|
||||
IF @pOktatasiNevelesiFeladatId IS NOT NULL BEGIN
|
||||
|
||||
SET @joinSql += N'
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES feh ON feh.C_TANEVID = ert.C_TANEVID
|
||||
AND feh.ID = ocs.C_FELADATELLATASIHELYID
|
||||
AND feh.TOROLT = ''F'''
|
||||
|
||||
SET @whereSql += N'
|
||||
AND feh.C_OKTATASINEVELESIFELADATTIPUS = @pOktatasiNevelesiFeladatId'
|
||||
END
|
||||
|
||||
IF @pFeladatEllatasiHelyId IS NOT NULL BEGIN
|
||||
SET @whereSql += N'
|
||||
AND ocs.C_FELADATELLATASIHELYID = @pFeladatEllatasiHelyId'
|
||||
END
|
||||
|
||||
IF (@pSpecialisErtekelesOsztalyzatEnumId) IS NOT NULL BEGIN
|
||||
IF (@pSpecialisErtekelesOsztalyzatEnumId = 1/*NOTE: NemIrt*/) BEGIN
|
||||
SET @whereSql += N'
|
||||
--NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
|
||||
-- Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
|
||||
AND (ert.C_TIPUSID NOT IN (' + @pEgyszerAdhatoTanuloErtekelesTipusIdListString + ') AND
|
||||
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(ert.C_ERTEKELESSZOVEG),CHAR(160),CHAR(32)),CHAR(32),''(¤¤)''),''¤)(¤'',''''),''(¤¤)'',CHAR(32)))) = LOWER(@pSpecialisErtekelesOsztalyzatSzoveg) AND
|
||||
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(ert.C_ERTEKELESSZOVEGROVIDNEV),CHAR(160),CHAR(32)),CHAR(32),''(¤¤)''),''¤)(¤'',''''),''(¤¤)'',CHAR(32)))) = LOWER(@pSpecialisErtekelesOsztalyzatSzovegRovidNev))'
|
||||
END
|
||||
|
||||
IF (@pSpecialisErtekelesOsztalyzatEnumId = 2/*NOTE: Dicseret*/ OR
|
||||
@pSpecialisErtekelesOsztalyzatEnumId = 3/*NOTE: Kituno*/) BEGIN
|
||||
SET @whereSql += N'
|
||||
--NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
|
||||
-- Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
|
||||
AND (ert.C_TIPUSID IN (' + @pEgyszerAdhatoTanuloErtekelesTipusIdListString + ') AND
|
||||
ert.C_ERTEKELESOSZTALYZATID = @pSpecialisErtekelesOsztalyzatId AND
|
||||
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(ert.C_ERTEKELESTEMA),CHAR(160),CHAR(32)),CHAR(32),''(¤¤)''),''¤)(¤'',''''),''(¤¤)'',CHAR(32)))) = LOWER(@pSpecialisErtekelesOsztalyzatTema))'
|
||||
END
|
||||
|
||||
IF (@pSpecialisErtekelesOsztalyzatEnumId = 4/*NOTE: Mentesitve*/) BEGIN
|
||||
SET @whereSql += N'
|
||||
--NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
|
||||
-- Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
|
||||
AND (ert.C_TIPUSID IN (' + @pEgyszerAdhatoTanuloErtekelesTipusIdListString + ') AND
|
||||
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(ert.C_ERTEKELESSZOVEG),CHAR(160),CHAR(32)),CHAR(32),''(¤¤)''),''¤)(¤'',''''),''(¤¤)'',CHAR(32)))) = LOWER(@pSpecialisErtekelesOsztalyzatSzoveg) AND
|
||||
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(ert.C_ERTEKELESSZOVEGROVIDNEV),CHAR(160),CHAR(32)),CHAR(32),''(¤¤)''),''¤)(¤'',''''),''(¤¤)'',CHAR(32)))) = LOWER(@pSpecialisErtekelesOsztalyzatSzovegRovidNev))'
|
||||
END
|
||||
END
|
||||
|
||||
SET @sql = @preSelectSql + @selectSql + @joinSql + @whereSql + @postSelectSql
|
||||
|
||||
EXEC sp_executesql @sql, N'
|
||||
@pTanevId int
|
||||
,@pId int = NULL
|
||||
,@pTanuloIdsString nvarchar(MAX) = NULL
|
||||
,@pOsztalyCsoportId int = NULL
|
||||
,@pCsoportTipusId int = NULL
|
||||
,@pTantargyId int = NULL
|
||||
,@pErtekeloId int = NULL
|
||||
,@pOsztalyzatId int = NULL
|
||||
,@pErtekelesModId int = NULL
|
||||
,@pTipusId int = NULL
|
||||
,@pDatumTol datetime = NULL
|
||||
,@pDatumIg datetime = NULL
|
||||
,@pRogzitesDatumTol datetime = NULL
|
||||
,@pRogzitesDatumIg datetime = NULL
|
||||
,@pErtekelesSzoveg nvarchar(max) = NULL
|
||||
,@pErtekelesTema nvarchar(255) = NULL
|
||||
,@pFeladatKategoriaId int = NULL
|
||||
,@pOktatasiNevelesiFeladatId int = NULL
|
||||
,@pFeladatEllatasiHelyId int = NULL
|
||||
,@pSpecialisErtekelesOsztalyzatSzoveg nvarchar(255) = NULL
|
||||
,@pSpecialisErtekelesOsztalyzatSzovegRovidNev nvarchar(3) = NULL
|
||||
,@pSpecialisErtekelesOsztalyzatId int = NULL
|
||||
,@pSpecialisErtekelesOsztalyzatTema nvarchar(255) = NULL'
|
||||
,@pTanevId = @pTanevId
|
||||
,@pId = @pId
|
||||
,@pTanuloIdsString = @pTanuloIdsString
|
||||
,@pOsztalyCsoportId = @pOsztalyCsoportId
|
||||
,@pCsoportTipusId = @pCsoportTipusId
|
||||
,@pTantargyId = @pTantargyId
|
||||
,@pErtekeloId = @pErtekeloId
|
||||
,@pOsztalyzatId = @pOsztalyzatId
|
||||
,@pErtekelesModId = @pErtekelesModId
|
||||
,@pTipusId = @pTipusId
|
||||
,@pDatumTol = @pDatumTol
|
||||
,@pDatumIg = @pDatumIg
|
||||
,@pRogzitesDatumTol = @pRogzitesDatumTol
|
||||
,@pRogzitesDatumIg = @pRogzitesDatumIg
|
||||
,@pErtekelesSzoveg = @pErtekelesSzoveg
|
||||
,@pErtekelesTema = @pErtekelesTema
|
||||
,@pFeladatKategoriaId = @pFeladatKategoriaId
|
||||
,@pOktatasiNevelesiFeladatId = @pOktatasiNevelesiFeladatId
|
||||
,@pFeladatEllatasiHelyId = @pFeladatEllatasiHelyId
|
||||
,@pSpecialisErtekelesOsztalyzatSzoveg = @pSpecialisErtekelesOsztalyzatSzoveg
|
||||
,@pSpecialisErtekelesOsztalyzatSzovegRovidNev = @pSpecialisErtekelesOsztalyzatSzovegRovidNev
|
||||
,@pSpecialisErtekelesOsztalyzatId = @pSpecialisErtekelesOsztalyzatId
|
||||
,@pSpecialisErtekelesOsztalyzatTema = @pSpecialisErtekelesOsztalyzatTema
|
||||
|
||||
END
|
||||
GO
|
Reference in New Issue
Block a user