init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,60 @@
|
|||
/*
|
||||
Minden olyan esetben amikor egy osztályhoz tartozó csoportokat kell meghatározni,
|
||||
akkor az alábbi módon kell ezeket megadni:
|
||||
a. Egy osztályhoz tartozik minden olyan csoport, amelynek tagja az osztály bármelyik tanulója.
|
||||
Tehát ha egy osztályból akár egyetlen tanuló is tagja egy csoportnak, akkor az az osztályhoz is kapcsolódik.
|
||||
b. Továbbá egy osztályhoz mindig kapcsolódnak az osztálybontásosnak jelölt csoportjaik is,
|
||||
függetlenül attól, hogy abban van-e tanuló!
|
||||
*/
|
||||
|
||||
IF OBJECT_ID('fnGetKapcsolodoOsztalycsoportok') IS NOT NULL BEGIN
|
||||
DROP FUNCTION fnGetKapcsolodoOsztalycsoportok
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION [dbo].[fnGetKapcsolodoOsztalycsoportok] (@osztalyCsoportId int)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT @osztalyCsoportId AS ID, 'OsztalycsoportOraja' AS OKA
|
||||
UNION
|
||||
SELECT ID, 'OsztalybontottOra' AS OKA FROM T_CSOPORT_OSSZES
|
||||
WHERE C_OSZTALYBONTASID = @osztalyCsoportId AND TOROLT = 'F'
|
||||
UNION
|
||||
SELECT DISTINCT tcs.C_OSZTALYCSOPORTID, 'TanuloMasOra' AS OKA FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
WHERE tcs.TOROLT = 'F' AND tcs.C_TANULOID IN (
|
||||
SELECT x.C_TANULOID FROM T_TANULOCSOPORT_OSSZES x
|
||||
WHERE x.C_OSZTALYCSOPORTID = @osztalyCsoportId AND x.TOROLT = 'F'
|
||||
AND (x.C_BELEPESDATUM <= GETDATE() AND (x.C_KILEPESDATUM > GETDATE() OR x.C_KILEPESDATUM IS NULL))
|
||||
)
|
||||
AND tcs.C_BELEPESDATUM <= GETDATE() AND (tcs.C_KILEPESDATUM > GETDATE() OR tcs.C_KILEPESDATUM IS NULL)
|
||||
AND tcs.C_OSZTALYCSOPORTID <> @osztalyCsoportId
|
||||
AND tcs.C_OSZTALYCSOPORTID NOT IN (
|
||||
SELECT ID FROM T_CSOPORT_OSSZES
|
||||
WHERE C_OSZTALYBONTASID = @osztalyCsoportId AND TOROLT = 'F'
|
||||
)
|
||||
AND tcs.C_OSZTALYCSOPORTID NOT IN (
|
||||
SELECT C_OSZTALYBONTASID AS ID FROM T_CSOPORT_OSSZES
|
||||
WHERE ID = @osztalyCsoportId
|
||||
AND C_OSZTALYBONTASID IS NOT NULL AND TOROLT = 'F'
|
||||
)
|
||||
AND tcs.C_OSZTALYCSOPORTID NOT IN (
|
||||
SELECT ID
|
||||
FROM T_CSOPORT_OSSZES
|
||||
WHERE C_OSZTALYBONTASID IN (
|
||||
SELECT C_OSZTALYBONTASID
|
||||
FROM T_CSOPORT_OSSZES
|
||||
WHERE ID = @osztalyCsoportId AND TOROLT = 'F'
|
||||
) AND TOROLT = 'F'
|
||||
)
|
||||
UNION
|
||||
SELECT C_OSZTALYBONTASID AS ID, 'OsztalybontottOra' AS OKA FROM T_CSOPORT_OSSZES
|
||||
WHERE ID = @osztalyCsoportId
|
||||
AND C_OSZTALYBONTASID IS NOT NULL AND TOROLT = 'F'
|
||||
UNION
|
||||
SELECT ID, 'OsztalybontottOra' AS OKA FROM T_CSOPORT_OSSZES
|
||||
WHERE C_OSZTALYBONTASID IN (
|
||||
SELECT C_OSZTALYBONTASID FROM T_CSOPORT_OSSZES
|
||||
WHERE ID = @osztalyCsoportId AND TOROLT = 'F'
|
||||
)
|
||||
AND ID <> @osztalyCsoportId AND TOROLT = 'F'
|
||||
)
|
Loading…
Add table
Add a link
Reference in a new issue