137 lines
No EOL
5.5 KiB
Transact-SQL
137 lines
No EOL
5.5 KiB
Transact-SQL
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
|
|
IF OBJECT_ID('sp_GetElfogadottTantargyfelosztasok') IS NOT NULL
|
|
BEGIN
|
|
DROP PROCEDURE sp_GetElfogadottTantargyfelosztasok
|
|
END
|
|
GO
|
|
CREATE PROCEDURE sp_GetElfogadottTantargyfelosztasok
|
|
@tanevId INT,
|
|
@intezmenyId INT,
|
|
@isElfogadott BIT
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
|
|
--Fejléc
|
|
SELECT
|
|
intezmenyAdatok.C_NEV IntezmenyNeve
|
|
,tanev.C_NEV Tanev
|
|
,intezmenyAdatok.C_ENGEDELYEZETTALLASHELYEK EngedelyezettAllashelyek
|
|
,ISNULL('Hatályos: <b>' + FORMAT(intezmenyAdatSzolgaltatas.C_ELFOGADOTTTTFDATUMA, 'yyyy.MM.dd.') +'</b> napjától','') ElfogadasDatuma
|
|
FROM T_INTEZMENYADATOK_OSSZES intezmenyAdatok
|
|
INNER JOIN T_TANEV_OSSZES tanev ON tanev.ID = intezmenyAdatok.C_TANEVID
|
|
INNER JOIN T_INTEZMENYADATSZOLGALTATAS_OSSZES intezmenyAdatSzolgaltatas ON
|
|
intezmenyAdatSzolgaltatas.C_INTEZMENYID = intezmenyAdatok.C_INTEZMENYID
|
|
AND intezmenyAdatSzolgaltatas.C_TANEVID = tanev.ID
|
|
WHERE
|
|
intezmenyAdatok.C_TANEVID = @tanevId
|
|
|
|
IF @isElfogadott = 0
|
|
BEGIN
|
|
--Pedagógusok
|
|
SELECT
|
|
foglalkozasokTanarok.C_TANAROKID PedagogusId
|
|
,felhasznalo.C_NYOMTATASINEV PedagogusNev
|
|
,munkakor.C_NAME Munkakor
|
|
,kepesites.C_NAME Kepesites
|
|
,munkaugyiAdatok.C_KOTELEZOORASZAM KotelezoOraszam
|
|
,munkaugyiAdatok.C_MUNKAIDOKEDVEZMENYORASZAM MunkaidoKedvezmenyOraszam
|
|
,munkaidoKedvezmenyOka.C_NAME MunkaidoKedvezmenyOka
|
|
,SUM(foglalkozas.C_ORASZAM) HetiOraszam
|
|
,ISNULL(munkaugyiAdatok.C_MUNKAIDOKEDVEZMENYORASZAM, 0) + SUM(foglalkozas.C_ORASZAM) LekotottOraszam
|
|
FROM T_FOGLALKOZASOK_TANAROK foglalkozasokTanarok
|
|
INNER JOIN T_MUNKAUGYIADATOK_OSSZES munkaugyiAdatok ON munkaugyiAdatok.C_ALKALMAZOTTID = foglalkozasokTanarok.C_TANAROKID
|
|
INNER JOIN T_FELHASZNALO_OSSZES felhasznalo ON felhasznalo.ID = foglalkozasokTanarok.C_TANAROKID
|
|
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES munkakor ON munkakor.ID = munkaugyiAdatok.C_MUNKAKORTIPUSA AND munkaugyiAdatok.C_TANEVID = munkakor.C_TANEVID
|
|
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES kepesites ON kepesites.ID = munkaugyiAdatok.C_BESOROLASIFOKOZAT AND munkaugyiAdatok.C_TANEVID = kepesites.C_TANEVID
|
|
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES munkaidoKedvezmenyOka ON munkaidoKedvezmenyOka.ID = munkaugyiAdatok.C_MUNKAIDOKEDVEZMENYOKA AND munkaugyiAdatok.C_TANEVID = munkaidoKedvezmenyOka.C_TANEVID
|
|
INNER JOIN T_FOGLALKOZAS_OSSZES foglalkozas ON foglalkozas.ID = foglalkozasokTanarok.C_FOGLALKOZASOKID AND foglalkozas.TOROLT = 'F'
|
|
INNER JOIN T_INTEZMENYADATSZOLGALTATAS_OSSZES intezmenyAdatSzolgaltatas ON intezmenyAdatSzolgaltatas.C_TANEVID = foglalkozas.C_TANEVID AND intezmenyAdatSzolgaltatas.TOROLT = 'F'
|
|
WHERE
|
|
foglalkozas.C_TANEVID = @tanevId
|
|
AND munkaugyiAdatok.TOROLT = 'F'
|
|
GROUP BY C_TANAROKID, C_NYOMTATASINEV, munkakor.C_NAME, kepesites.C_NAME, C_KOTELEZOORASZAM, C_MUNKAIDOKEDVEZMENYORASZAM, munkaidoKedvezmenyOka.C_NAME
|
|
ORDER BY felhasznalo.C_NYOMTATASINEV
|
|
|
|
--Osztályok / csoportok
|
|
SELECT
|
|
ocs.C_NEV OsztalyCsoport
|
|
,SUM(C_ORASZAM) Osszesoraszam
|
|
FROM T_FOGLALKOZAS_OSSZES foglalkozas
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = foglalkozas.C_OSZTALYCSOPORTID
|
|
INNER JOIN T_INTEZMENYADATSZOLGALTATAS_OSSZES intezmenyAdatSzolgaltatas ON intezmenyAdatSzolgaltatas.C_TANEVID = foglalkozas.C_TANEVID AND intezmenyAdatSzolgaltatas.TOROLT = 'F'
|
|
WHERE
|
|
foglalkozas.TOROLT = 'F'
|
|
AND foglalkozas.C_TANEVID = @tanevId
|
|
GROUP BY ocs.C_NEV
|
|
|
|
--Tantárgyfelosztás
|
|
SELECT
|
|
felhasznalo.C_NYOMTATASINEV PedagogusNeve
|
|
,osztalyCsoport.C_NEV OsztalyCsoport
|
|
,tantargy.C_NEV Tantargy
|
|
,foglalkozas.C_ORASZAM Oraszam
|
|
FROM T_FOGLALKOZAS_OSSZES foglalkozas
|
|
INNER JOIN T_FOGLALKOZASOK_TANAROK foglalkozasokTanarok ON foglalkozas.ID = foglalkozasokTanarok.C_FOGLALKOZASOKID
|
|
INNER JOIN T_FELHASZNALO_OSSZES felhasznalo ON felhasznalo.ID = foglalkozasokTanarok.C_TANAROKID
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES osztalyCsoport ON osztalyCsoport.ID = foglalkozas.C_OSZTALYCSOPORTID
|
|
INNER JOIN T_TANTARGY_OSSZES tantargy ON tantargy.ID = foglalkozas.C_TANTARGYID
|
|
INNER JOIN T_INTEZMENYADATSZOLGALTATAS_OSSZES intezmenyAdatSzolgaltatas ON intezmenyAdatSzolgaltatas.C_TANEVID = foglalkozas.C_TANEVID AND intezmenyAdatSzolgaltatas.TOROLT = 'F'
|
|
WHERE
|
|
foglalkozas.C_TANEVID = @tanevId
|
|
AND foglalkozas.TOROLT = 'F'
|
|
ORDER BY felhasznalo.C_NYOMTATASINEV
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
--Pedagógusok
|
|
SELECT
|
|
C_TANARNEVE PedagogusNev
|
|
,C_TANARMUNKAKORE Munkakor
|
|
,C_TANARPEDAGOGIAIKEPESITESE Kepesites
|
|
,C_TANARKOTELEZOORASZAMA KotelezoOraszam
|
|
,C_TANARMUNKAIDOKEDVEZMENYE MunkaidoKedvezmenyOraszam
|
|
,C_TANARMUNKAIDOKEDVEZMENYOKA MunkaidoKedvezmenyOka
|
|
,SUM(C_ORASZAM) HetiOraszam
|
|
,ISNULL(C_TANARMUNKAIDOKEDVEZMENYE, 0) + SUM(C_ORASZAM) LekotottOraszam
|
|
FROM T_FOGLALKOZASARCHIV_OSSZES
|
|
WHERE
|
|
C_TANEVID = @tanevId
|
|
AND C_INTEZMENYID = @intezmenyId
|
|
AND TOROLT = 'F'
|
|
GROUP BY C_TANARNEVE, C_TANARMUNKAKORE, C_TANARPEDAGOGIAIKEPESITESE, C_TANARKOTELEZOORASZAMA, C_TANARMUNKAIDOKEDVEZMENYE, C_TANARMUNKAIDOKEDVEZMENYOKA
|
|
ORDER BY C_TANARNEVE
|
|
|
|
--Osztályok / csoportok
|
|
SELECT
|
|
C_OSZTALYCSOPORTNEVE OsztalyCsoport
|
|
,SUM(C_ORASZAM) OsszesOraszam
|
|
FROM T_FOGLALKOZASARCHIV_OSSZES
|
|
WHERE
|
|
TOROLT = 'F'
|
|
AND C_TANEVID = @tanevId
|
|
AND C_INTEZMENYID = @intezmenyId
|
|
GROUP BY C_OSZTALYCSOPORTNEVE
|
|
|
|
--Tantárgyfelosztás
|
|
SELECT
|
|
C_TANARNEVE PedagogusNeve
|
|
,C_OSZTALYCSOPORTNEVE OsztalyCsoport
|
|
,C_TANTARGYNEVE Tantargy
|
|
,C_ORASZAM Oraszam
|
|
FROM T_FOGLALKOZASARCHIV_OSSZES
|
|
WHERE
|
|
TOROLT = 'F'
|
|
AND C_TANEVID = @tanevId
|
|
AND C_INTEZMENYID = @intezmenyId
|
|
ORDER BY C_TANARNEVE
|
|
END
|
|
|
|
END
|
|
|
|
GO |