145 lines
6.6 KiB
Transact-SQL
145 lines
6.6 KiB
Transact-SQL
IF OBJECT_ID('dbo.sp_GetNaploEllenorzes') IS NOT NULL BEGIN
|
|
DROP PROCEDURE dbo.sp_GetNaploEllenorzes
|
|
END
|
|
GO
|
|
|
|
IF OBJECT_ID('[DBO].[sp_GetNaploEllenorzes]') IS NOT NULL BEGIN
|
|
DROP PROCEDURE [DBO].[sp_GetNaploEllenorzes]
|
|
END
|
|
GO
|
|
|
|
-- =============================================
|
|
-- Author: Kelemen Attila
|
|
-- Create date: 2016.03.21.
|
|
-- Description: Naplóellenőrzés összegzése
|
|
-- =============================================
|
|
CREATE PROCEDURE [dbo].[sp_GetNaploEllenorzes]
|
|
@osztalyId int
|
|
AS
|
|
BEGIN
|
|
-- SET NOCOUNT ON added to prevent extra result sets from
|
|
-- interfering with SELECT statements.
|
|
SET NOCOUNT ON;
|
|
select
|
|
'' Osszegzes,
|
|
Eszrevetelek.EV,
|
|
Eszrevetelek.HetSzama ID,
|
|
count(1) NemNaplozottOrakSzama,
|
|
(case when T_NAPLOELLENORZES.ID IS NULL then 'F' else 'T' end) Ellenorizve,
|
|
T_NAPLOELLENORZES.ID EllenorzesID,
|
|
Ellenorzo.C_NYOMTATASINEV EllenorzoSzemely,
|
|
T_NAPLOELLENORZES.C_ELLENORZESDATUMA EllenorzesDatum,
|
|
T_NAPLOELLENORZES.C_ESZREVETEL Eszrevetel,
|
|
Eszrevetelek.OsztalyID
|
|
from (
|
|
select KapcsolodoCsoportok.OsztalyID osztalyID,
|
|
KapcsolodoCsoportok.OsztalyNev OsztalyNev,
|
|
naptar.C_HETSORSZAMA HetSzama,
|
|
YEAR(naptar.c_napdatuma) EV
|
|
from T_ORARENDIORA
|
|
inner join T_FOGLALKOZAS on T_FOGLALKOZAS.ID= T_ORARENDIORA.C_FOGLALKOZASID
|
|
left join T_TANTARGY on T_TANTARGY.ID= T_FOGLALKOZAS.C_TANTARGYID
|
|
inner join T_NAPTARINAP naptar on (( CONVERT(date,naptar.C_NAPDATUMA) BETWEEN CONVERT(date,T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE) AND CONVERT(date,T_ORARENDIORA.C_ORAERVENYESSEGVEGE))
|
|
AND (naptar.C_HETIREND = T_ORARENDIORA.C_HETIREND OR T_ORARENDIORA.C_HETIREND = 1554
|
|
AND naptar.C_HETNAPJA = T_ORARENDIORA.C_HETNAPJA) )
|
|
LEFT JOIN T_TANITASIORA ON (T_TANITASIORA.C_ORARENDIORAGROUPID = T_ORARENDIORA.C_ORARENDIORAGROUPID AND T_TANITASIORA.C_DATUM BETWEEN T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE AND T_ORARENDIORA.C_ORAERVENYESSEGVEGE AND T_TANITASIORA.TOROLT='F' AND naptar.C_NAPDATUMA = T_TANITASIORA.C_DATUM)
|
|
left join (select T_OSZTALYCSOPORT.ID OsztalyID,
|
|
T_OSZTALYCSOPORT.C_NEV OsztalyNev,
|
|
kcs.CsoportID
|
|
from T_OSZTALYCSOPORT
|
|
--Az osztályhoz kapcsolódó csoportok óráit is listázzuk
|
|
left join (Select OsztalyID,
|
|
OsztalyNev,
|
|
CsoportID
|
|
from (select C_OSZTALYCSOPORTID OsztalyID,
|
|
T_OSZTALYCSOPORT.C_NEV OsztalyNev,
|
|
C_TANULOID TanuloID
|
|
from T_TANULOCSOPORT
|
|
INNER JOIN T_OSZTALY on T_TANULOCSOPORT.C_OSZTALYCSOPORTID = T_OSZTALY.ID
|
|
INNER JOIN T_OSZTALYCSOPORT on T_OSZTALY.ID = T_OSZTALYCSOPORT.ID
|
|
where T_TANULOCSOPORT.TOROLT='F'
|
|
and T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE()
|
|
and (T_TANULOCSOPORT.C_KILEPESDATUM is null or T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE())) OsztalyTanuloi
|
|
inner join
|
|
(select T_CSOPORT.ID CsoportID,
|
|
C_TANULOID TanuloID
|
|
from T_TANULOCSOPORT
|
|
inner join T_CSOPORT on T_TANULOCSOPORT.ID=T_CSOPORT.ID
|
|
where T_CSOPORT.TOROLT='F'
|
|
and T_TANULOCSOPORT.TOROLT='F'
|
|
and T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE()
|
|
and (T_TANULOCSOPORT.C_KILEPESDATUM is null or T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE())) Csoportok
|
|
on OsztalyTanuloi.TanuloID = Csoportok.TanuloID) kcs
|
|
on kcs.OsztalyID = T_OSZTALYCSOPORT.ID
|
|
where T_OSZTALYCSOPORt.TOROLT = 'F') KapcsolodoCsoportok
|
|
on KapcsolodoCsoportok.OsztalyID = @osztalyId
|
|
and KapcsolodoCsoportok.OsztalyID = T_FOGLALKOZAS.C_OSZTALYCSOPORTID
|
|
|
|
where
|
|
T_ORARENDIORA.TOROLT='F'
|
|
and naptar.TOROLT = 'F'
|
|
and T_FOGLALKOZAS.TOROLT='F'
|
|
and GETDATE() >= naptar.C_NAPDATUMA
|
|
and T_TANITASIORA.ID IS NULL
|
|
and KapcsolodoCsoportok.OsztalyID = @osztalyId
|
|
|
|
union all
|
|
|
|
select KapcsolodoCsoportok.OsztalyID osztalyID,
|
|
KapcsolodoCsoportok.OsztalyNev OsztalyNev,
|
|
naptar.C_HETSORSZAMA HetSzama,
|
|
YEAR(naptar.c_napdatuma) EV
|
|
from T_TANITASIORA
|
|
inner join T_FOGLALKOZAS on T_FOGLALKOZAS.ID= T_TANITASIORA.C_FOGLALKOZASID
|
|
inner join T_NAPTARINAP naptar on T_TANITASIORA.C_DATUM = naptar.C_NAPDATUMA
|
|
left join (select T_OSZTALYCSOPORT.ID OsztalyID,
|
|
T_OSZTALYCSOPORT.C_NEV OsztalyNev,
|
|
kcs.CsoportID
|
|
from T_OSZTALYCSOPORT
|
|
left join (Select OsztalyID,
|
|
OsztalyNev,
|
|
CsoportID
|
|
from
|
|
(select C_OSZTALYCSOPORTID OsztalyID,
|
|
T_OSZTALYCSOPORT.C_NEV OsztalyNev,
|
|
C_TANULOID TanuloID
|
|
from T_TANULOCSOPORT
|
|
inner join T_OSZTALY on T_TANULOCSOPORT.C_OSZTALYCSOPORTID = T_OSZTALY.ID
|
|
inner join T_OSZTALYCSOPORT on T_OSZTALY.ID = T_OSZTALYCSOPORT.ID
|
|
where T_TANULOCSOPORT.TOROLT='F'
|
|
and T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE()
|
|
and (T_TANULOCSOPORT.C_KILEPESDATUM is null or T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE())) OsztalyTanuloi
|
|
inner join
|
|
(select T_CSOPORT.ID CsoportID,
|
|
C_TANULOID TanuloID
|
|
from T_TANULOCSOPORT
|
|
inner join T_CSOPORT on T_TANULOCSOPORT.ID=T_CSOPORT.ID
|
|
where T_CSOPORT.TOROLT='F'
|
|
and T_TANULOCSOPORT.TOROLT='F'
|
|
and T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE()
|
|
and (T_TANULOCSOPORT.C_KILEPESDATUM is null or T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE())
|
|
) Csoportok on OsztalyTanuloi.TanuloID = Csoportok.TanuloID) kcs
|
|
on kcs.OsztalyID = T_OSZTALYCSOPORT.ID
|
|
where T_OSZTALYCSOPORt.TOROLT = 'F')
|
|
KapcsolodoCsoportok on
|
|
KapcsolodoCsoportok.OsztalyID = @osztalyId
|
|
and KapcsolodoCsoportok.OsztalyID = T_FOGLALKOZAS.C_OSZTALYCSOPORTID
|
|
where T_TANITASIORA.C_ORARENDIORAGROUPID is null
|
|
and T_TANITASIORA.C_MEGTARTOTT is null
|
|
and KapcsolodoCsoportok.OsztalyID = @osztalyId
|
|
) Eszrevetelek
|
|
left join T_NAPLOELLENORZES on ( T_NAPLOELLENORZES.C_OSZTALYID = @osztalyId
|
|
AND T_NAPLOELLENORZES.C_HETSORSZAMA = Eszrevetelek.HetSzama
|
|
AND T_NAPLOELLENORZES.TOROLT = 'F')
|
|
left join T_FELHASZNALO Ellenorzo on Ellenorzo.ID = T_NAPLOELLENORZES.C_ELLENORZOSZEMELYID
|
|
group by Eszrevetelek.EV,
|
|
Eszrevetelek.HetSzama,
|
|
T_NAPLOELLENORZES.ID,
|
|
Ellenorzo.C_NYOMTATASINEV,
|
|
T_NAPLOELLENORZES.C_ELLENORZESDATUMA,
|
|
T_NAPLOELLENORZES.C_ESZREVETEL,
|
|
T_NAPLOELLENORZES.C_OSZTALYID,
|
|
Eszrevetelek.OsztalyID
|
|
|
|
order by EV desc, Eszrevetelek.HetSzama desc
|
|
END
|