This commit is contained in:
skidoodle 2024-03-13 00:33:46 +01:00
commit e124a47765
19374 changed files with 9806149 additions and 0 deletions

View file

@ -0,0 +1,80 @@
IF OBJECT_ID('dbo.sp_ImportTanuloBesorolas') IS NOT NULL BEGIN
DROP PROCEDURE dbo.sp_ImportTanuloBesorolas
END
GO
CREATE PROCEDURE dbo.sp_ImportTanuloBesorolas
@xml xml,
@besorolasDatuma datetime,
@intezmenyId int,
@tanevId int,
@userId int
AS
BEGIN
DECLARE @TanuloBesorolas TABLE (
TanuloId int,
OsztalyId int,
CsoportId int
)
INSERT INTO @TanuloBesorolas (Tanuloid, OsztalyId, CsoportId)
SELECT
sor.value('(TanuloId)[1]', 'int') AS TanuloId,
sor.value('(OsztalyId)[1]', 'int') AS OsztalyId,
sor.value('(CsoportId)[1]', 'int') AS CsoportId
FROM @xml.nodes('/TanuloBesorolasImport/TanuloBesorolasLista/TanuloBesorolas') as sorok(sor)
DECLARE @exist TABLE (TanuloId int, OsztalyId int)
INSERT INTO @exist (TanuloId, OsztalyId)
SELECT TanuloId, OsztalyId
FROM @TanuloBesorolas b
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON b.TanuloId = tcs.C_TANULOID
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = tcs.C_OSZTALYCSOPORTID
WHERE tcs.C_BELEPESDATUM <= @besorolasDatuma
AND (tcs.C_KILEPESDATUM > @besorolasDatuma OR tcs.C_KILEPESDATUM IS NULL)
AND b.OsztalyId > 0 AND (b.OsztalyId <> tcs.C_OSZTALYCSOPORTID)
AND tcs.C_INTEZMENYID = @intezmenyId AND tcs.C_TANEVID = @tanevId AND tcs.TOROLT = 'F'
INSERT INTO T_TANULOCSOPORT_OSSZES (
C_BEJEGYZESIDOPONTJA
,C_BELEPESDATUM
,C_KILEPESDATUM
,C_ZARADEK
,C_BEFOGADOINTEZMENY
,C_MEGJEGYZES
,C_NAPLOSORSZAM
,C_TORZSLAPSZAM
,C_VEGZARADEK
,C_INTEZMENYID
,C_TANEVID
,C_OSZTALYCSOPORTID
,C_TANULOID
,MODIFIER
,CREATOR
) SELECT
GETDATE() AS C_BEJEGYZESIDOPONTJA -- C_BEJEGYZESIDOPONTJA - datetime
,@besorolasDatuma AS C_BELEPESDATUM -- C_BELEPESDATUM - datetime
,NULL AS C_KILEPESDATUM -- C_KILEPESDATUM - datetime
,NULL AS C_ZARADEK -- C_ZARADEK - nvarchar(MAX)
,NULL AS C_BEFOGADOINTEZMENY -- C_BEFOGADOINTEZMENY - nvarchar(255)
,NULL AS C_MEGJEGYZES -- C_MEGJEGYZES - nvarchar(255)
,NULL AS C_NAPLOSORSZAM -- C_NAPLOSORSZAM - int
,NULL AS C_TORZSLAPSZAM -- C_TORZSLAPSZAM - int
,NULL AS C_VEGZARADEK -- C_VEGZARADEK - nvarchar(MAX)
,@intezmenyId AS C_INTEZMENYID -- C_INTEZMENYID - int
,@tanevId AS C_TANEVID -- C_TANEVID - int
,ISNULL(NULLIF(b.OsztalyId, 0), b.CsoportId) AS C_OSZTALYCSOPORTID -- C_OSZTALYCSOPORTID - int
,b.TanuloId AS C_TANULOID -- C_TANULOID - int
,NULL AS MODIFIER -- MODIFIER - int
,@userId AS CREATOR -- CREATOR - int
FROM @TanuloBesorolas b
WHERE NOT EXISTS (SELECT 1 FROM @exist e WHERE e.TanuloId = b.TanuloId AND e.OsztalyId = b.OsztalyId)
SELECT e1.TanuloId, e1.OsztalyId FROM @exist e1
END
GO