init
This commit is contained in:
@@ -0,0 +1,143 @@
|
||||
-- Az el<65>z<EFBFBD> <20>ra adati tant<6E>rgy, oszt<7A>lycsoport <20>s tan<61>r alapj<70>n
|
||||
-- SZEKERES ANDR<44>S (based on Telek <20>kos fn_GetOraEvesSorszamLista)
|
||||
-- 2017.05.08.
|
||||
|
||||
|
||||
IF OBJECT_ID('dbo.sp_GetElozoOraAdatai') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE dbo.sp_GetElozoOraAdatai
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE dbo.sp_GetElozoOraAdatai
|
||||
@tantargyId int
|
||||
,@osztalycsoportId int
|
||||
,@tanarId int
|
||||
,@datum datetime
|
||||
,@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 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 TOP 1
|
||||
tanora.ID AS Id
|
||||
,tanora.C_TEMA AS Tema
|
||||
,tanora.C_DATUM AS Datum
|
||||
,felhasznalo.C_NYOMTATASINEV AS HelyettesNev
|
||||
,IIF(tanora.C_SORSZAMOZANDO = 'T', ROW_NUMBER() OVER (PARTITION BY tanora.C_SORSZAMOZANDO ORDER BY tanora.C_ORAKEZDETE), NULL) AS EvesSorszam
|
||||
FROM T_TANITASIORA_OSSZES tanora
|
||||
INNER JOIN T_ORAK_TANAROK orakTanarok ON tanora.ID = orakTanarok.C_ORAKID
|
||||
LEFT JOIN T_FELHASZNALO felhasznalo ON felhasznalo.ID = tanora.C_HELYETTESITOTANARID
|
||||
WHERE tanora.C_TANEVID = @tanevId
|
||||
AND tanora.C_INTEZMENYID = @intezmenyId
|
||||
AND tanora.C_MEGTARTOTT = 'T'
|
||||
AND tanora.TOROLT = 'F'
|
||||
AND tanora.C_TANTARGYID = @tantargyId
|
||||
AND tanora.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND orakTanarok.C_TANAROKID = @tanarId
|
||||
AND tanora.C_ORAKEZDETE < @datum
|
||||
ORDER BY tanora.C_ORAKEZDETE DESC
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT TOP 1
|
||||
tanora.ID AS Id
|
||||
,tanora.C_TEMA AS Tema
|
||||
,tanora.C_DATUM AS Datum
|
||||
,felhasznalo.C_NYOMTATASINEV AS HelyettesNev
|
||||
,IIF(tanora.C_SORSZAMOZANDO = 'T', ROW_NUMBER() OVER (PARTITION BY tanora.C_SORSZAMOZANDO ORDER BY tanora.C_ORAKEZDETE), NULL) AS EvesSorszam
|
||||
FROM T_TANITASIORA_OSSZES tanora
|
||||
LEFT JOIN T_FELHASZNALO felhasznalo ON felhasznalo.ID = tanora.C_HELYETTESITOTANARID
|
||||
WHERE tanora.C_TANEVID = @tanevId
|
||||
AND tanora.C_INTEZMENYID = @intezmenyId
|
||||
AND tanora.C_MEGTARTOTT = 'T'
|
||||
AND tanora.TOROLT = 'F'
|
||||
AND tanora.C_TANTARGYID = @tantargyId
|
||||
AND tanora.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND tanora.C_ORAKEZDETE < @datum
|
||||
ORDER BY tanora.C_ORAKEZDETE DESC
|
||||
END
|
||||
END
|
||||
ELSE BEGIN
|
||||
IF @tanarSzamit = 1 BEGIN
|
||||
SELECT TOP 1
|
||||
tanora.ID AS Id
|
||||
,tanora.C_TEMA AS Tema
|
||||
,tanora.C_DATUM AS Datum
|
||||
,felhasznalo.C_NYOMTATASINEV AS HelyettesNev
|
||||
,IIF(tanora.C_SORSZAMOZANDO = 'T', ROW_NUMBER() OVER (PARTITION BY tanora.C_SORSZAMOZANDO ORDER BY tanora.C_ORAKEZDETE), NULL) AS EvesSorszam
|
||||
FROM T_TANITASIORA_OSSZES tanora
|
||||
INNER JOIN T_ORAK_TANAROK orakTanarok ON tanora.ID = orakTanarok.C_ORAKID
|
||||
LEFT JOIN T_FELHASZNALO felhasznalo ON felhasznalo.ID = tanora.C_HELYETTESITOTANARID
|
||||
WHERE tanora.C_TANEVID = @tanevId
|
||||
AND tanora.C_INTEZMENYID = @intezmenyId
|
||||
AND tanora.C_TANTARGYID = @tantargyId
|
||||
AND tanora.C_OSZTALYCSOPORTID IN (
|
||||
SELECT csoport.ID
|
||||
FROM T_CSOPORT csoport
|
||||
WHERE csoport.C_OSZTALYBONTASID = (SELECT subCsoport.C_OSZTALYBONTASID FROM T_CSOPORT subCsoport WHERE subCsoport.ID = @osztalyCsoportId)
|
||||
UNION
|
||||
SELECT csoport.C_OSZTALYBONTASID
|
||||
FROM T_CSOPORT csoport
|
||||
WHERE csoport.ID = @osztalyCsoportId
|
||||
UNION
|
||||
SELECT csoport.ID
|
||||
FROM T_CSOPORT csoport
|
||||
WHERE csoport.C_OSZTALYBONTASID = @osztalyCsoportId
|
||||
UNION
|
||||
SELECT @osztalyCsoportId
|
||||
)
|
||||
AND orakTanarok.C_TANAROKID = @tanarId
|
||||
AND tanora.C_ORAKEZDETE < @datum
|
||||
AND tanora.TOROLT = 'F'
|
||||
AND tanora.C_MEGTARTOTT = 'T'
|
||||
ORDER BY tanora.C_ORAKEZDETE DESC
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT TOP 1
|
||||
tanora.ID AS Id
|
||||
,tanora.C_TEMA AS Tema
|
||||
,tanora.C_DATUM AS Datum
|
||||
,felhasznalo.C_NYOMTATASINEV AS HelyettesNev
|
||||
,IIF(tanora.C_SORSZAMOZANDO = 'T', ROW_NUMBER() OVER (PARTITION BY tanora.C_SORSZAMOZANDO ORDER BY tanora.C_ORAKEZDETE), NULL) AS EvesSorszam
|
||||
FROM T_TANITASIORA_OSSZES tanora
|
||||
LEFT JOIN T_FELHASZNALO felhasznalo ON felhasznalo.ID = tanora.C_HELYETTESITOTANARID
|
||||
WHERE tanora.C_TANEVID = @tanevId
|
||||
AND tanora.C_INTEZMENYID = @intezmenyId
|
||||
AND tanora.C_TANTARGYID = @tantargyId
|
||||
AND tanora.C_OSZTALYCSOPORTID IN (
|
||||
SELECT csoport.ID
|
||||
FROM T_CSOPORT csoport
|
||||
WHERE csoport.C_OSZTALYBONTASID = (SELECT subCsoport.C_OSZTALYBONTASID FROM T_CSOPORT subCsoport WHERE subCsoport.ID = @osztalyCsoportId)
|
||||
UNION
|
||||
SELECT csoport.C_OSZTALYBONTASID
|
||||
FROM T_CSOPORT csoport
|
||||
WHERE csoport.ID = @osztalyCsoportId
|
||||
UNION
|
||||
SELECT csoport.ID
|
||||
FROM T_CSOPORT csoport
|
||||
WHERE csoport.C_OSZTALYBONTASID = @osztalyCsoportId
|
||||
UNION
|
||||
SELECT @osztalyCsoportId
|
||||
)
|
||||
AND tanora.C_ORAKEZDETE < @datum
|
||||
AND tanora.TOROLT = 'F'
|
||||
AND tanora.C_MEGTARTOTT = 'T'
|
||||
ORDER BY tanora.C_ORAKEZDETE DESC
|
||||
END
|
||||
END
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,47 @@
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GetFelhasznaloFoglalkozasokErtekelesekhez]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GetFelhasznaloFoglalkozasokErtekelesekhez]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: <Felhaszn<7A>l<EFBFBD>hoz k<>thet<65> foglalkoz<6F>sok az <20>rt<72>kel<65>sek sz<73>r<EFBFBD>s<EFBFBD>hez>
|
||||
-- =============================================
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GetFelhasznaloFoglalkozasokErtekelesekhez]
|
||||
@pTanarID INT,
|
||||
@pTanevID INT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
SELECT
|
||||
foglalkozas.ID ID,
|
||||
osztalyCsoport.C_NEV + ' - ' + tantargy.C_Nev Nev,
|
||||
osztalyCsoport.C_EVFOLYAMTIPUSA Evfolyam
|
||||
FROM
|
||||
T_FOGLALKOZAS_OSSZES foglalkozas
|
||||
LEFT JOIN T_OSZTALYCSOPORT_OSSZES osztalyCsoport
|
||||
ON osztalyCsoport.ID = foglalkozas.C_OSZTALYCSOPORTID
|
||||
LEFT JOIN T_TANTARGY_OSSZES tantargy
|
||||
ON tantargy.ID = foglalkozas.C_TANTARGYID
|
||||
LEFT JOIN T_FOGLALKOZASOK_TANAROK foglalkozasokTanarok
|
||||
ON foglalkozasokTanarok.C_FOGLALKOZASOKID = foglalkozas.ID
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES felhasznalo
|
||||
ON felhasznalo.ID = foglalkozasokTanarok.C_TANAROKID
|
||||
WHERE
|
||||
foglalkozas.TOROLT = 'F' AND
|
||||
foglalkozas.C_TANEVID = @pTanevID AND
|
||||
foglalkozasokTanarok.C_TANAROKID = @pTanarID
|
||||
ORDER BY
|
||||
Evfolyam
|
||||
|
||||
END
|
@@ -0,0 +1,105 @@
|
||||
IF OBJECT_ID('sp_GetOraEvesSorszama') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_GetOraEvesSorszama
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_GetOraEvesSorszama
|
||||
@tantargyId int,
|
||||
@osztalyCsoportId int,
|
||||
@datum datetime,
|
||||
@tanarId int,
|
||||
@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 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 COUNT(1) AS cnt
|
||||
FROM T_TANITASIORA_OSSZES t
|
||||
INNER JOIN T_ORAK_TANAROK o ON t.ID = o.C_ORAKID
|
||||
WHERE t.C_MEGTARTOTT = 'T'
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND t.C_TANTARGYID = @tantargyId
|
||||
AND t.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND o.C_TANAROKID = @tanarId
|
||||
AND t.C_ORAKEZDETE <= @datum
|
||||
AND t.TOROLT = 'F'
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT COUNT(1) AS cnt
|
||||
FROM T_TANITASIORA_OSSZES t
|
||||
WHERE t.C_MEGTARTOTT = 'T'
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND t.C_TANTARGYID = @tantargyId
|
||||
AND t.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND t.C_ORAKEZDETE <= @datum
|
||||
AND t.TOROLT = 'F'
|
||||
END
|
||||
END
|
||||
ELSE BEGIN
|
||||
IF @tanarSzamit = 1 BEGIN
|
||||
SELECT COUNT(1) AS cnt
|
||||
FROM T_TANITASIORA_OSSZES t
|
||||
INNER JOIN T_ORAK_TANAROK o ON t.ID = o.C_ORAKID
|
||||
WHERE t.C_TANTARGYID = @tantargyId
|
||||
AND t.C_OSZTALYCSOPORTID IN (
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT cs
|
||||
WHERE cs.C_OSZTALYBONTASID = (SELECT scs.C_OSZTALYBONTASID FROM T_CSOPORT scs WHERE scs.ID = @osztalyCsoportId)
|
||||
UNION
|
||||
SELECT cs.C_OSZTALYBONTASID
|
||||
FROM T_CSOPORT cs
|
||||
WHERE cs.ID = @osztalyCsoportId
|
||||
UNION
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT cs
|
||||
WHERE cs.C_OSZTALYBONTASID = @osztalyCsoportId
|
||||
UNION
|
||||
SELECT @osztalyCsoportId
|
||||
)
|
||||
AND o.C_TANAROKID = @tanarId
|
||||
AND t.C_ORAKEZDETE <= @datum
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND t.C_MEGTARTOTT = 'T'
|
||||
AND t.TOROLT = 'F'
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT COUNT(1) AS cnt
|
||||
FROM T_TANITASIORA_OSSZES t
|
||||
WHERE t.C_TANTARGYID = @tantargyId
|
||||
AND t.C_OSZTALYCSOPORTID IN (
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT cs
|
||||
WHERE cs.C_OSZTALYBONTASID = (SELECT scs.C_OSZTALYBONTASID FROM T_CSOPORT scs WHERE scs.ID = @osztalyCsoportId)
|
||||
UNION
|
||||
SELECT cs.C_OSZTALYBONTASID
|
||||
FROM T_CSOPORT cs
|
||||
WHERE cs.ID = @osztalyCsoportId
|
||||
UNION
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT cs
|
||||
WHERE cs.C_OSZTALYBONTASID = @osztalyCsoportId
|
||||
UNION
|
||||
SELECT @osztalyCsoportId
|
||||
)
|
||||
AND t.C_ORAKEZDETE <= @datum
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND t.C_MEGTARTOTT = 'T'
|
||||
AND t.TOROLT = 'F'
|
||||
END
|
||||
END
|
||||
END
|
||||
GO
|
||||
|
Reference in New Issue
Block a user