init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,140 @@
|
|||
IF ((SELECT is_disabled FROM sys.triggers tr where tr.name = N'tr_AsyncAuditEMAILHIBALOG') <> 1)
|
||||
DISABLE TRIGGER tr_AsyncAuditEMAILHIBALOG ON T_EMAILHIBALOG;
|
||||
|
||||
DECLARE @tableName nvarchar(max),
|
||||
@triggerName nvarchar(max)
|
||||
|
||||
DECLARE cur cursor FOR
|
||||
SELECT DISTINCT t.name, tr.name
|
||||
FROM sys.tables t
|
||||
INNER JOIN sys.columns c ON c.object_id = t.object_id
|
||||
AND c.name IN (N'SERIAL', N'LASTCHANGED', N'CREATED')
|
||||
INNER JOIN sys.triggers tr ON tr.parent_id = t.object_id
|
||||
AND tr.name LIKE N'tr_%Log'
|
||||
AND tr.name NOT LIKE N'tr_AsyncAudit%LOG'
|
||||
WHERE t.name NOT LIKE N'%_STAGE'
|
||||
|
||||
OPEN cur
|
||||
|
||||
FETCH NEXT FROM cur
|
||||
INTO @tableName, @triggerName
|
||||
|
||||
WHILE @@FETCH_STATUS = 0
|
||||
BEGIN
|
||||
|
||||
DECLARE @query nvarchar(max) = N'
|
||||
DISABLE TRIGGER ' + @triggerName + N' ON ' + @tableName + N';
|
||||
|
||||
UPDATE ' + @tableName + N' SET
|
||||
TOROLT = N''F''
|
||||
WHERE TOROLT IS NULL;
|
||||
|
||||
UPDATE ' + @tableName + N' SET
|
||||
SERIAL = 0
|
||||
WHERE SERIAL IS NULL;
|
||||
|
||||
UPDATE ' + @tableName + N' SET
|
||||
CREATED = N''20000101''
|
||||
WHERE CREATED IS NULL;
|
||||
|
||||
UPDATE ' + @tableName + N' SET
|
||||
LASTCHANGED = CREATED
|
||||
WHERE LASTCHANGED IS NULL;
|
||||
|
||||
ENABLE TRIGGER ' + @triggerName + N' ON ' + @tableName + N';'
|
||||
|
||||
EXEC sp_executesql @query
|
||||
|
||||
FETCH NEXT FROM cur
|
||||
INTO @tableName, @triggerName
|
||||
END
|
||||
|
||||
CLOSE cur;
|
||||
DEALLOCATE cur;
|
||||
|
||||
GO
|
||||
|
||||
UPDATE T_ENTITYATTRIBUTEHISTORY SET
|
||||
TOROLT = N'F'
|
||||
WHERE TOROLT IS NULL;
|
||||
|
||||
UPDATE T_ENTITYATTRIBUTEHISTORY SET
|
||||
SERIAL = 0
|
||||
WHERE SERIAL IS NULL;
|
||||
|
||||
UPDATE T_ENTITYATTRIBUTEHISTORY SET
|
||||
CREATED = N'20000101'
|
||||
WHERE CREATED IS NULL;
|
||||
|
||||
UPDATE T_ENTITYATTRIBUTEHISTORY SET
|
||||
LASTCHANGED = CREATED
|
||||
WHERE LASTCHANGED IS NULL;
|
||||
|
||||
|
||||
UPDATE T_ENTITYHISTORY SET
|
||||
TOROLT = N'F'
|
||||
WHERE TOROLT IS NULL;
|
||||
|
||||
UPDATE T_ENTITYHISTORY SET
|
||||
SERIAL = 0
|
||||
WHERE SERIAL IS NULL;
|
||||
|
||||
UPDATE T_ENTITYHISTORY SET
|
||||
CREATED = N'20000101'
|
||||
WHERE CREATED IS NULL;
|
||||
|
||||
UPDATE T_ENTITYHISTORY SET
|
||||
LASTCHANGED = CREATED
|
||||
WHERE LASTCHANGED IS NULL;
|
||||
|
||||
|
||||
UPDATE T_LOGEVENTTYPE SET
|
||||
TOROLT = N'F'
|
||||
WHERE TOROLT IS NULL;
|
||||
|
||||
UPDATE T_LOGEVENTTYPE SET
|
||||
SERIAL = 0
|
||||
WHERE SERIAL IS NULL;
|
||||
|
||||
UPDATE T_LOGEVENTTYPE SET
|
||||
CREATED = N'20000101'
|
||||
WHERE CREATED IS NULL;
|
||||
|
||||
UPDATE T_LOGEVENTTYPE SET
|
||||
LASTCHANGED = CREATED
|
||||
WHERE LASTCHANGED IS NULL;
|
||||
|
||||
|
||||
UPDATE T_LOGLEVELTYPE SET
|
||||
TOROLT = N'F'
|
||||
WHERE TOROLT IS NULL;
|
||||
|
||||
UPDATE T_LOGLEVELTYPE SET
|
||||
SERIAL = 0
|
||||
WHERE SERIAL IS NULL;
|
||||
|
||||
UPDATE T_LOGLEVELTYPE SET
|
||||
CREATED = N'20000101'
|
||||
WHERE CREATED IS NULL;
|
||||
|
||||
UPDATE T_LOGLEVELTYPE SET
|
||||
LASTCHANGED = CREATED
|
||||
WHERE LASTCHANGED IS NULL;
|
||||
|
||||
|
||||
UPDATE T_TANTARGYNEVHEZKATEGORIA SET
|
||||
TOROLT = N'F'
|
||||
WHERE TOROLT IS NULL;
|
||||
|
||||
UPDATE T_TANTARGYNEVHEZKATEGORIA SET
|
||||
SERIAL = 0
|
||||
WHERE SERIAL IS NULL;
|
||||
|
||||
UPDATE T_TANTARGYNEVHEZKATEGORIA SET
|
||||
CREATED = N'20000101'
|
||||
WHERE CREATED IS NULL;
|
||||
|
||||
UPDATE T_TANTARGYNEVHEZKATEGORIA SET
|
||||
LASTCHANGED = CREATED
|
||||
WHERE LASTCHANGED IS NULL;
|
||||
GO
|
|
@ -0,0 +1,852 @@
|
|||
IF OBJECT_ID('[dbo].[sp_ImportASC]') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_ImportASC]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_ImportASC]
|
||||
@importXml xml,
|
||||
@regiTorlese bit,
|
||||
@ervenyessegFilebanSzerepel bit,
|
||||
@feladatellatasiHelyId int,
|
||||
@tanevId int,
|
||||
@intezmenyId int,
|
||||
@userId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
SET XACT_ABORT ON
|
||||
DECLARE @mukodsesiHely int
|
||||
|
||||
DECLARE @osztalyCsoport table (
|
||||
osztalyCsoportID nvarchar(32),
|
||||
nev nvarchar(100),
|
||||
osztalyCsoport varchar(2),
|
||||
id int
|
||||
)
|
||||
|
||||
INSERT INTO @osztalyCsoport (osztalyCsoportID, nev, osztalyCsoport)
|
||||
SELECT
|
||||
sor.value('(OsztalyId)[1]', 'nvarchar(32)') AS osztalcsoportId,
|
||||
sor.value('(Nev)[1]', 'varchar(100)') AS nev,
|
||||
'O'
|
||||
FROM @importXml.nodes('/AscImport/OsztalyLista/Osztaly') as sorok(sor)
|
||||
INSERT INTO @osztalyCsoport (osztalyCsoportID, nev, osztalyCsoport)
|
||||
SELECT
|
||||
sor.value('(Id)[1]', 'nvarchar(32)') AS osztalcsoportId,
|
||||
sor.value('(Nev)[1]', 'varchar(100)') AS nev,
|
||||
'CS'
|
||||
FROM @importXml.nodes('/AscImport/CsoportLista/Csoport') as sorok(sor)
|
||||
|
||||
UPDATE x
|
||||
SET x.id = ocs.ID
|
||||
FROM @osztalyCsoport x
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON x.nev = ocs.C_NEV AND ocs.C_TANEVID = @tanevId
|
||||
WHERE ocs.TOROLT = 'F'
|
||||
|
||||
DECLARE @tantargy table (
|
||||
tantargyId nvarchar(32),
|
||||
nev nvarchar(100),
|
||||
osztalyCsoport varchar(2),
|
||||
id int
|
||||
)
|
||||
|
||||
INSERT INTO @tantargy (tantargyId, nev)
|
||||
SELECT
|
||||
sor.value('(TantargyId)[1]', 'nvarchar(32)') AS tantargyId,
|
||||
sor.value('(Nev)[1]', 'varchar(100)') AS nev
|
||||
FROM @importXml.nodes('/AscImport/TantargyLista/Tantargy') as sorok(sor)
|
||||
|
||||
UPDATE x
|
||||
SET x.id = t.ID
|
||||
FROM @tantargy x
|
||||
INNER JOIN T_TANTARGY_OSSZES t ON x.nev = t.C_NEV AND t.C_TANEVID = @tanevId
|
||||
WHERE t.TOROLT = 'F'
|
||||
|
||||
/* TEREM temp TÁBLÁBA */
|
||||
DECLARE @terem TABLE (
|
||||
teremId nvarchar(32),
|
||||
nev nvarchar(255),
|
||||
kapacitas int,
|
||||
id int
|
||||
)
|
||||
INSERT INTO @terem (teremId, nev, kapacitas)
|
||||
SELECT
|
||||
sor.value('(TeremId)[1]', 'nvarchar(32)') AS teremId,
|
||||
sor.value('(Nev)[1]', 'nvarchar(255)') AS nev,
|
||||
sor.value('(Kapacitas)[1]', 'int') AS kapacitas
|
||||
FROM @importXml.nodes('/AscImport/TeremLista/Terem') as sorok(sor)
|
||||
UPDATE x
|
||||
SET x.id = t.ID
|
||||
FROM @terem x
|
||||
INNER JOIN T_TEREM_OSSZES t ON x.nev = t.C_NEV AND t.C_TANEVID = @tanevId
|
||||
WHERE t.TOROLT = 'F'
|
||||
|
||||
/* HETIREND temp TÁBLÁBA */
|
||||
DECLARE @hetirend TABLE (
|
||||
hetirendId nvarchar(32),
|
||||
nev nvarchar(255),
|
||||
id int
|
||||
)
|
||||
INSERT INTO @hetirend (hetirendId, nev)
|
||||
SELECT
|
||||
sor.value('(HetirendId)[1]', 'nvarchar(32)') AS hetirendId,
|
||||
sor.value('(Nev)[1]', 'nvarchar(255)') AS nev
|
||||
FROM @importXml.nodes('/AscImport/HetirendLista/Hetirend') as sorok(sor)
|
||||
UPDATE x
|
||||
SET x.id = d.ID
|
||||
FROM @hetirend x
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES d ON x.nev = d.C_NAME AND d.C_TANEVID = @tanevId AND C_TYPE = 'HetiRendTipus' AND d.TOROLT = 'F'
|
||||
|
||||
/* CSENGETÉSIREND temp TÁBLÁBA */
|
||||
DECLARE @csengetesiRendOra TABLE (
|
||||
csengetesiRendOraId nvarchar(32),
|
||||
starttime time,
|
||||
endtime time,
|
||||
sorszam int,
|
||||
id int
|
||||
)
|
||||
|
||||
INSERT INTO @csengetesiRendOra (csengetesiRendOraId, starttime, endtime, sorszam)
|
||||
SELECT
|
||||
sor.value('(CsengetesiRendOraId)[1]', 'nvarchar(32)') AS csengetesiRendOraId,
|
||||
sor.value('(Starttime)[1]', 'time') AS starttime,
|
||||
sor.value('(Endtime)[1]', 'time') AS endtime,
|
||||
sor.value('(Sorszam)[1]', 'int') AS sorszam
|
||||
FROM @importXml.nodes('/AscImport/CsengetesiRendOraLista/CsengetesiRendOra') as sorok(sor)
|
||||
UPDATE x
|
||||
SET x.id = cs.ID
|
||||
FROM @csengetesiRendOra x
|
||||
INNER JOIN T_CSENGETESIRENDORA_OSSZES cs ON x.sorszam = cs.C_ORASZAM AND cs.C_TANEVID = @tanevId
|
||||
WHERE cs.C_CSENGETESIRENDID = (SELECT MIN(ID) FROM T_CSENGETESIREND_OSSZES csr WHERE /*csr.C_IMPORTALT = 'T' AND*/ csr.C_TANEVID = @tanevId AND csr.TOROLT = 'F')
|
||||
|
||||
DECLARE @tanar TABLE (
|
||||
tanarId nvarchar(32),
|
||||
nev nvarchar(100),
|
||||
id int
|
||||
)
|
||||
|
||||
INSERT INTO @tanar (tanarId, nev)
|
||||
SELECT
|
||||
sor.value('(Id)[1]', 'nvarchar(32)') AS tanarId,
|
||||
sor.value('(Nev)[1]', 'varchar(100)') AS tanarNev
|
||||
FROM @importXml.nodes('/AscImport/TanarLista/Tanar') as sorok(sor)
|
||||
UPDATE x
|
||||
SET x.id = f.ID
|
||||
FROM @tanar x
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.C_NYOMTATASINEV = x.nev AND f.TOROLT = 'F'
|
||||
WHERE EXISTS (SELECT 1 FROM T_ALKALMAZOTT_OSSZES a WHERE a.ID = f.ID AND a.C_ALINTEZMENYID = f.C_INTEZMENYID AND a.C_ALTANEVID = f.C_TANEVID AND a.TOROLT = 'F')
|
||||
AND C_TANEVID = @tanevId
|
||||
AND C_INTEZMENYID = @intezmenyId
|
||||
|
||||
/* ÓRARENDIÓRA temp TÁBLÁBA */
|
||||
DECLARE @orarendiOra TABLE (
|
||||
teremID nvarchar(32),
|
||||
tanarID nvarchar(32),
|
||||
hetNapja nvarchar(10),
|
||||
hetirendID nvarchar(32),
|
||||
osztalyID nvarchar(32),
|
||||
csoportID nvarchar(32),
|
||||
tantargyID nvarchar(32),
|
||||
hetiOraszam float,
|
||||
sorszam int,
|
||||
ervenyessegKezdete datetime,
|
||||
ervenyessegVege datetime
|
||||
)
|
||||
|
||||
INSERT INTO @orarendiOra (
|
||||
teremID,
|
||||
tanarID,
|
||||
hetNapja,
|
||||
hetirendID,
|
||||
osztalyID,
|
||||
csoportID,
|
||||
tantargyID,
|
||||
hetiOraszam,
|
||||
sorszam,
|
||||
ervenyessegKezdete,
|
||||
ervenyessegVege
|
||||
)
|
||||
SELECT
|
||||
sor.value('(TeremId)[1]', 'nvarchar(32)') AS teremID,
|
||||
sor.value('(TanarId)[1]', 'nvarchar(32)') AS tanarID,
|
||||
sor.value('(HetNapja)[1]', 'nvarchar(10)') AS hetNapja,
|
||||
sor.value('(HetirendId)[1]', 'nvarchar(32)') AS hetirendID,
|
||||
NULLIF(sor.value('(OsztalyId)[1]', 'nvarchar(32)'), '') AS osztalyID,
|
||||
NULLIF(sor.value('(CsoportId)[1]', 'nvarchar(32)'), '') AS csoportID,
|
||||
sor.value('(TantargyId)[1]', 'nvarchar(32)') AS tantargyID,
|
||||
sor.value('(HetiOraszam)[1]', 'float') AS hetiOraszam,
|
||||
sor.value('(Sorszam)[1]', 'int') AS sorszam,
|
||||
sor.value('(ErvenyessegKezdete)[1]', 'datetime') AS ervenyessegKezdete,
|
||||
IIF(sor.value('(ErvenyessegVege)[1]', 'datetime') = '19000101', NULL, sor.value('(ErvenyessegVege)[1]', 'datetime')) AS ervenyessegVege
|
||||
FROM @importXml.nodes('/AscImport/OrarendiOraLista/OrarendiOra') as sorok(sor)
|
||||
|
||||
|
||||
DECLARE
|
||||
@utolsoTannap datetime
|
||||
,@utolsoTannapVegzos datetime
|
||||
|
||||
-- Utolsó tanitási nap
|
||||
SELECT @utolsoTannap = C_DATUM + 1
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
WHERE C_NAPTIPUSA = 1395
|
||||
AND C_INTEZMENYID = @intezmenyId
|
||||
AND C_TANEVID = @tanevId
|
||||
AND TOROLT = 'F'
|
||||
|
||||
-- Utolsó tanitási nap végzősöknek
|
||||
SELECT @utolsoTannapVegzos = C_DATUM + 1
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
WHERE C_NAPTIPUSA = 1402
|
||||
AND C_TANEVID = @tanevId
|
||||
AND C_INTEZMENYID = @intezmenyId
|
||||
AND TOROLT = 'F'
|
||||
|
||||
UPDATE o
|
||||
SET ervenyessegVege = CASE WHEN ocsk.C_VEGZOSEVFOLYAM = 'F' THEN @utolsoTannap ELSE @utolsoTannapVegzos END
|
||||
FROM @orarendiOra o
|
||||
INNER JOIN @osztalyCsoport ocs ON o.osztalyID = ocs.osztalyCsoportID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocsk ON ocs.id = ocsk.ID AND ocsk.TOROLT = 'F'
|
||||
WHERE ocs.osztalyCsoport = 'O'
|
||||
AND ervenyessegVege IS NULL
|
||||
AND ocsk.C_TANEVID = @tanevId
|
||||
|
||||
UPDATE @orarendiOra
|
||||
SET ervenyessegVege = @utolsoTannap
|
||||
WHERE ervenyessegVege IS NULL
|
||||
|
||||
DECLARE @linkTable TABLE (
|
||||
insertedID int, tempId nvarchar(32), act nvarchar(20)
|
||||
)
|
||||
|
||||
BEGIN TRY
|
||||
BEGIN TRANSACTION
|
||||
SELECT @mukodsesiHely = MIN(ID) FROM T_MUKODESIHELY_OSSZES WHERE C_TANEVID = @tanevId
|
||||
|
||||
MERGE T_TEREM_OSSZES trg
|
||||
USING (
|
||||
SELECT * FROM @terem WHERE nev <> '-') src ON src.ID = trg.ID AND trg.C_TANEVID = @tanevId AND trg.TOROLT = 'F'
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
trg.C_KAPACITAS = src.kapacitas
|
||||
,trg.SERIAL = trg.SERIAL + 1
|
||||
,trg.LASTCHANGED = GETDATE()
|
||||
,trg.MODIFIER = @userId
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
C_JELLEG
|
||||
,C_NEV
|
||||
,C_MUKODESIHELYID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) VALUES (
|
||||
181 -- osztályterem
|
||||
,src.nev
|
||||
,@mukodsesiHely
|
||||
,@intezmenyId
|
||||
,@tanevId
|
||||
,@userId
|
||||
,@userId
|
||||
)
|
||||
OUTPUT INSERTED.ID, src.teremId, $action
|
||||
INTO @linkTable(insertedID, tempId, act);
|
||||
|
||||
UPDATE x
|
||||
SET x.id = y.insertedID
|
||||
FROM @terem x
|
||||
INNER JOIN @linkTable y ON x.teremId = y.tempId
|
||||
WHERE x.ID IS NULL
|
||||
DELETE FROM @linktable
|
||||
|
||||
SET @feladatellatasiHelyId = ISNULL(@feladatellatasiHelyId,
|
||||
(SELECT MIN(ID)
|
||||
FROM T_FELADATELLATASIHELY_OSSZES
|
||||
WHERE C_INTEZMENYID = @intezmenyID
|
||||
AND C_TANEVID = @tanevID)
|
||||
)
|
||||
|
||||
MERGE T_OSZTALYCSOPORT_OSSZES trg
|
||||
USING (SELECT * FROM @osztalyCsoport WHERE ID IS NULL) src ON 1 = 2
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
C_MEGJEGYZES
|
||||
,C_NEV
|
||||
,C_VEGZOSEVFOLYAM
|
||||
,C_EVFOLYAMTIPUSA
|
||||
,C_IMPORTALT
|
||||
,C_TERVEZETTLETSZAM
|
||||
,C_TEREMID
|
||||
,C_FELADATELLATASIHELYID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) VALUES (
|
||||
NULL -- C_MEGJEGYZES - nvarchar(255)
|
||||
,src.nev -- C_NEV - nvarchar(255)
|
||||
,'F' -- C_VEGZOSEVFOLYAM - char(1)
|
||||
,1296 -- C_EVFOLYAMTIPUSA - int
|
||||
,'T' -- C_IMPORTALT - char(1)
|
||||
,NULL -- C_TERVEZETTLETSZAM - int
|
||||
,NULL -- C_TEREMID - int
|
||||
,@feladatellatasiHelyId -- C_FELADATELLATASIHELYID - int
|
||||
,@intezmenyId -- C_INTEZMENYID - int
|
||||
,@tanevId -- C_TANEVID - int
|
||||
,@userId -- MODIFIER - int
|
||||
,@userId -- CREATOR - int
|
||||
)
|
||||
OUTPUT INSERTED.ID, src.osztalycsoportId, $action
|
||||
INTO @linkTable(insertedID, tempId, act);
|
||||
|
||||
UPDATE x
|
||||
SET x.id = y.insertedID
|
||||
FROM @osztalyCsoport x
|
||||
INNER JOIN @linkTable y ON x.osztalycsoportId = y.tempId
|
||||
WHERE x.ID IS NULL
|
||||
|
||||
INSERT INTO T_OSZTALY_OSSZES (
|
||||
ID
|
||||
,C_KEPZESIFORMA
|
||||
,C_OSZTALYNAPLOLEIRASA
|
||||
,C_OSZTALYNAPLOMEGNYITASA
|
||||
,C_OSZTALYNAPLOZARASA
|
||||
,C_OSZTALYFONOKID
|
||||
,C_OFOHELYETTESID
|
||||
,C_TANTERVID
|
||||
,C_ALINTEZMENYID
|
||||
,C_ALTANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
x.id AS ID -- ID - int
|
||||
,1096 AS C_KEPZESIFORMA -- C_KEPZESIFORMA - int
|
||||
,NULL AS C_OSZTALYNAPLOLEIRASA -- C_OSZTALYNAPLOLEIRASA - nvarchar(MAX)
|
||||
,NULL AS C_OSZTALYNAPLOMEGNYITASA -- C_OSZTALYNAPLOMEGNYITASA - datetime
|
||||
,NULL AS C_OSZTALYNAPLOZARASA -- C_OSZTALYNAPLOZARASA - datetime
|
||||
,NULL AS C_OSZTALYFONOKID -- C_OSZTALYFONOKID - int
|
||||
,NULL AS C_OFOHELYETTESID -- C_OFOHELYETTESID - int
|
||||
,NULL AS C_TANTERVID -- C_TANTERVID - int
|
||||
,@intezmenyId AS C_ALINTEZMENYID -- C_ALINTEZMENYID - int
|
||||
,@tanevId AS C_ALTANEVID -- C_ALTANEVID - int
|
||||
,@userId AS MODIFIER -- MODIFIER - int
|
||||
,@userId AS CREATOR -- CREATOR - int
|
||||
FROM @osztalyCsoport x
|
||||
INNER JOIN @linktable y ON x.id = y.insertedID
|
||||
WHERE osztalyCsoport = 'O'
|
||||
|
||||
INSERT INTO T_CSOPORT_OSSZES (
|
||||
ID
|
||||
,C_TIPUSA
|
||||
,C_CSOPORTNAPLOLEIRAS
|
||||
,C_CSOPORTNAPLOMEGNYITASA
|
||||
,C_CSOPORTNAPLOZARASA
|
||||
,C_CSOPORTVEZETOID
|
||||
,C_OSZTALYBONTASID
|
||||
,C_ALINTEZMENYID
|
||||
,C_ALTANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
x.id AS ID -- ID - int
|
||||
,1031 AS C_TIPUSA -- C_TIPUSA - int
|
||||
,NULL AS C_CSOPORTNAPLOLEIRAS -- C_CSOPORTNAPLOLEIRAS - nvarchar(MAX)
|
||||
,NULL AS C_CSOPORTNAPLOMEGNYITASA -- C_CSOPORTNAPLOMEGNYITASA - datetime
|
||||
,NULL AS C_CSOPORTNAPLOZARASA -- C_CSOPORTNAPLOZARASA - datetime
|
||||
,NULL AS C_CSOPORTVEZETOID -- C_CSOPORTVEZETOID - int
|
||||
,NULL AS C_OSZTALYBONTASID -- C_OSZTALYBONTASID - int
|
||||
,@intezmenyId AS C_ALINTEZMENYID -- C_ALINTEZMENYID - int
|
||||
,@tanevId AS C_ALTANEVID -- C_ALTANEVID - int
|
||||
,@userId AS MODIFIER -- MODIFIER - int
|
||||
,@userId AS CREATOR -- CREATOR - int
|
||||
FROM @osztalyCsoport x
|
||||
INNER JOIN @linktable y ON x.id = y.insertedID
|
||||
WHERE osztalyCsoport = 'CS'
|
||||
|
||||
DELETE FROM @linktable
|
||||
|
||||
MERGE T_TANTARGY_OSSZES trg
|
||||
USING (SELECT * FROM @tantargy WHERE ID IS NULL) src ON 1 = 2
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
C_GYAKORLATI
|
||||
,C_NEV
|
||||
,C_ROVIDNEV
|
||||
,C_TARGYKATEGORIA
|
||||
,C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
,C_NEVNYOMTATVANYBAN
|
||||
,C_TANORANKIVULI
|
||||
,C_IMPORTALT
|
||||
,C_FOTARGYE
|
||||
,C_FOTARGYID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) VALUES (
|
||||
'F' -- C_GYAKORLATI - char(1)
|
||||
,nev -- C_NEV - nvarchar(255)
|
||||
,LEFT(nev, 20) -- C_ROVIDNEV - nvarchar(20)
|
||||
,1197 -- C_TARGYKATEGORIA - int
|
||||
,NULL -- C_ALTANTARGYKENTNYOMTATVANYBAN - char(1)
|
||||
,NULL -- C_NEVNYOMTATVANYBAN - nvarchar(255)
|
||||
,'F' -- C_TANORANKIVULI - char(1)
|
||||
,'T' -- C_IMPORTALT - char(1)
|
||||
,'F' -- C_FOTARGYE - char(1)
|
||||
,NULL -- C_FOTARGYID - int
|
||||
,@intezmenyId -- C_INTEZMENYID - int
|
||||
,@tanevId -- C_TANEVID - int
|
||||
,@userId -- MODIFIER - int
|
||||
,@userId -- CREATOR - int
|
||||
)
|
||||
OUTPUT INSERTED.ID, src.tantargyId, $action
|
||||
INTO @linkTable(insertedID, tempId, act);
|
||||
|
||||
UPDATE x
|
||||
SET x.id = y.insertedID
|
||||
FROM @tantargy x
|
||||
INNER JOIN @linkTable y ON x.tantargyId = y.tempId
|
||||
WHERE x.ID IS NULL
|
||||
|
||||
|
||||
DELETE FROM @linktable
|
||||
DECLARE @foglalkozas TABLE (
|
||||
foglalozasId int IDENTITY(1, 1)
|
||||
,tantargyId int
|
||||
,tanarId int
|
||||
,osztalyCsoportId int
|
||||
,hetiOraszam float
|
||||
,nev nvarchar(255)
|
||||
,id int
|
||||
)
|
||||
|
||||
INSERT INTO @foglalkozas (
|
||||
tantargyId
|
||||
,tanarId
|
||||
,osztalyCsoportId
|
||||
,hetiOraszam
|
||||
,nev
|
||||
,id
|
||||
) SELECT
|
||||
tt.ID
|
||||
,fh.ID
|
||||
,ISNULL(cs.ID, o.ID)
|
||||
,oraszam
|
||||
,tt.nev + ' - ' + ISNULL(cs.nev, o.nev) + ' - ' + x.tanar AS nev
|
||||
,x.existItemId AS id
|
||||
FROM (
|
||||
SELECT
|
||||
NULLIF(sor.value('(osztaly)[1]', 'nvarchar(32)'), '') AS osztaly
|
||||
,NULLIF(sor.value('(csoport)[1]', 'nvarchar(32)'), '') AS csoport
|
||||
,sor.value('(tantargy)[1]', 'nvarchar(32)') AS tantargy
|
||||
,sor.value('(oraszam)[1]', 'float') AS oraszam
|
||||
,sor.value('(tanar)[1]', 'nvarchar(32)') AS tanar
|
||||
,NULLIF(sor.value('(existItemId)[1]', 'nvarchar(32)'), 0) AS existItemId
|
||||
FROM @importXml.nodes('/AscImport/TantargyfelosztasLista/Tantargyfelosztas') as sorok(sor)
|
||||
) x
|
||||
LEFT JOIN @osztalyCsoport cs ON cs.nev = x.csoport
|
||||
LEFT JOIN @osztalyCsoport o ON o.nev = x.osztaly
|
||||
INNER JOIN @tantargy tt ON tt.nev = x.tantargy
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.C_NYOMTATASINEV = x.tanar AND fh.C_TANEVID = @tanevId AND fh.TOROLT = 'F'
|
||||
WHERE EXISTS (SELECT 1 FROM T_ALKALMAZOTT_OSSZES a WHERE a.ID = fh.ID AND a.C_ALTANEVID = fh.C_TANEVID AND a.TOROLT = 'F')
|
||||
|
||||
|
||||
/* Az importtal bekerült foglalkozások beszúrása */
|
||||
MERGE T_FOGLALKOZAS_OSSZES trg
|
||||
USING (select * FROM @foglalkozas WHERE ID IS NULL) src ON 1 = 2
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
C_FOGLALKOZASTIPUSA
|
||||
,C_ORASZAM
|
||||
,C_NEV
|
||||
,C_ERTEKELESKELL
|
||||
,C_MULASZTASKELL
|
||||
,C_TANARFELVEHETI
|
||||
,C_IMPORTALT
|
||||
,C_TANTARGYID
|
||||
,C_OSZTALYCSOPORTID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) VALUES (
|
||||
1338 -- C_FOGLALKOZASTIPUSA - int
|
||||
,hetiOraszam -- C_ORASZAM - numeric(10, 2)
|
||||
,nev -- C_NEV - nvarchar(255)
|
||||
,'T' -- C_ERTEKELESKELL - char(1)
|
||||
,'T' -- C_MULASZTASKELL - char(1)
|
||||
,'T' -- C_TANARFELVEHETI - char(1)
|
||||
,'T' -- C_IMPORTALT - char(1)
|
||||
,tantargyId -- C_TANTARGYID - int
|
||||
,osztalyCsoportId -- C_OSZTALYCSOPORTID - int
|
||||
,@intezmenyId -- C_INTEZMENYID - int
|
||||
,@tanevId -- C_TANEVID - int
|
||||
,@userId -- MODIFIER - int
|
||||
,@userId -- CREATOR - int
|
||||
)
|
||||
OUTPUT INSERTED.ID, src.foglalozasId, $action
|
||||
INTO @linkTable(insertedID, tempId, act);
|
||||
|
||||
UPDATE x
|
||||
SET x.id = y.insertedID
|
||||
FROM @foglalkozas x
|
||||
INNER JOIN @linkTable y ON x.foglalozasId = y.tempId
|
||||
WHERE x.ID IS NULL
|
||||
|
||||
DELETE FROM @linktable
|
||||
|
||||
INSERT INTO T_FOGLALKOZASOK_TANAROK (
|
||||
C_FOGLALKOZASOKID
|
||||
,C_TANAROKID
|
||||
) SELECT
|
||||
id AS C_FOGLALKOZASOKID -- C_FOGLALKOZASOKID - int
|
||||
,tanarId AS C_TANAROKID -- C_TANAROKID - int
|
||||
FROM @foglalkozas f
|
||||
WHERE id IS NOT NULL
|
||||
AND NOT EXISTS (SELECT 1 FROM T_FOGLALKOZASOK_TANAROK ft WHERE f.ID = ft.C_FOGLALKOZASOKID)
|
||||
|
||||
/* Az importtal bekerült foglalkozások beszúrása */
|
||||
INSERT INTO @foglalkozas (
|
||||
tantargyId
|
||||
,tanarId
|
||||
,osztalyCsoportId
|
||||
,hetiOraszam
|
||||
,nev
|
||||
,id
|
||||
) SELECT
|
||||
tt.id AS tantargyId
|
||||
,a.id AS tanarId
|
||||
,ocs.id AS osztalyCsoportId
|
||||
,COUNT(1) AS hetiOraszam
|
||||
,MIN(tt.nev) + ' - ' + MIN(ocs.nev) + ' - ' + MIN(a.nev) AS nev
|
||||
,MIN(ff.ID) AS id
|
||||
FROM @orarendiOra o
|
||||
INNER JOIN @tanar a ON a.tanarID = o.tanarID
|
||||
INNER JOIN @tantargy tt ON tt.tantargyID = o.tantargyID
|
||||
INNER JOIN @osztalyCsoport ocs ON (ocs.osztalyCsoportID = o.CsoportId AND ocs.osztalyCsoport = 'CS') --OR (ocs.osztalyCsoportID = o.OsztalyId AND ocs.osztalyCsoport = 'O')
|
||||
LEFT JOIN (
|
||||
SELECT f.ID, f.C_TANTARGYID, f.C_OSZTALYCSOPORTID, ft.C_TANAROKID
|
||||
FROM T_FOGLALKOZAS_OSSZES f
|
||||
INNER JOIN T_FOGLALKOZASOK_TANAROK ft ON ft.C_FOGLALKOZASOKID = f.ID
|
||||
WHERE f.TOROLT = 'F'
|
||||
AND f.C_TANEVID = @tanevId
|
||||
) ff
|
||||
ON ff.C_TANTARGYID = tt.ID
|
||||
AND ff.C_TANAROKID = a.ID
|
||||
AND ff.C_OSZTALYCSOPORTID = ocs.ID
|
||||
GROUP BY tt.id, a.id, ocs.id
|
||||
|
||||
INSERT INTO @foglalkozas (
|
||||
tantargyId
|
||||
,tanarId
|
||||
,osztalyCsoportId
|
||||
,hetiOraszam
|
||||
,nev
|
||||
,id
|
||||
) SELECT
|
||||
tt.id AS tantargyId
|
||||
,a.id AS tanarId
|
||||
,ocs.id AS osztalyCsoportId
|
||||
,COUNT(1) AS hetiOraszam
|
||||
,MIN(tt.nev) + ' - ' + MIN(ocs.nev) + ' - ' + MIN(a.nev) AS nev
|
||||
,MIN(ff.ID) AS id
|
||||
FROM @orarendiOra o
|
||||
INNER JOIN @tanar a ON a.tanarID = o.tanarID
|
||||
INNER JOIN @tantargy tt ON tt.tantargyID = o.tantargyID
|
||||
INNER JOIN @osztalyCsoport ocs ON (ocs.osztalyCsoportID = o.OsztalyId AND ocs.osztalyCsoport = 'O') AND o.csoportId IS NULL --OR (ocs.osztalyCsoportID = o.OsztalyId AND ocs.osztalyCsoport = 'O')
|
||||
LEFT JOIN (
|
||||
SELECT f.ID, f.C_TANTARGYID, f.C_OSZTALYCSOPORTID, ft.C_TANAROKID
|
||||
FROM T_FOGLALKOZAS_OSSZES f
|
||||
INNER JOIN T_FOGLALKOZASOK_TANAROK ft ON ft.C_FOGLALKOZASOKID = f.ID
|
||||
WHERE f.TOROLT = 'F' AND f.C_TANEVID = @tanevId
|
||||
) ff ON ff.C_TANTARGYID = tt.ID
|
||||
AND ff.C_TANAROKID = a.ID
|
||||
AND ff.C_OSZTALYCSOPORTID = ocs.ID
|
||||
GROUP BY tt.id, a.id, ocs.id
|
||||
|
||||
/* Az órarendi órából keletkező foglalkozások beszúrása */
|
||||
MERGE T_FOGLALKOZAS_OSSZES trg
|
||||
USING (SELECT * FROM @foglalkozas WHERE ID IS NULL) src ON 1 = 2
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
C_FOGLALKOZASTIPUSA
|
||||
,C_ORASZAM
|
||||
,C_NEV
|
||||
,C_ERTEKELESKELL
|
||||
,C_MULASZTASKELL
|
||||
,C_TANARFELVEHETI
|
||||
,C_IMPORTALT
|
||||
,C_TANTARGYID
|
||||
,C_OSZTALYCSOPORTID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) VALUES (
|
||||
1338 -- C_FOGLALKOZASTIPUSA - int
|
||||
,hetiOraszam -- C_ORASZAM - numeric(10, 2)
|
||||
,nev -- C_NEV - nvarchar(255)
|
||||
,'T' -- C_ERTEKELESKELL - char(1)
|
||||
,'T' -- C_MULASZTASKELL - char(1)
|
||||
,'T' -- C_TANARFELVEHETI - char(1)
|
||||
,'T' -- C_IMPORTALT - char(1)
|
||||
,tantargyId -- C_TANTARGYID - int
|
||||
,osztalyCsoportId -- C_OSZTALYCSOPORTID - int
|
||||
,@intezmenyId -- C_INTEZMENYID - int
|
||||
,@tanevId -- C_TANEVID - int
|
||||
,@userId -- MODIFIER - int
|
||||
,@userId -- CREATOR - int
|
||||
)
|
||||
OUTPUT INSERTED.ID, src.foglalozasId, $action
|
||||
INTO @linkTable(insertedID, tempId, act);
|
||||
|
||||
UPDATE x
|
||||
SET x.id = y.insertedID
|
||||
FROM @foglalkozas x
|
||||
INNER JOIN @linkTable y ON x.foglalozasId = y.tempId
|
||||
WHERE x.ID IS NULL
|
||||
|
||||
|
||||
DELETE FROM @linktable
|
||||
|
||||
INSERT INTO T_FOGLALKOZASOK_TANAROK (
|
||||
C_FOGLALKOZASOKID
|
||||
,C_TANAROKID
|
||||
) SELECT
|
||||
id AS C_FOGLALKOZASOKID -- C_FOGLALKOZASOKID - int
|
||||
,tanarId AS C_TANAROKID -- C_TANAROKID - int
|
||||
FROM @foglalkozas f
|
||||
WHERE id IS NOT NULL
|
||||
AND NOT EXISTS (SELECT 1 FROM T_FOGLALKOZASOK_TANAROK ft WHERE f.ID = ft.C_FOGLALKOZASOKID)
|
||||
|
||||
/* T_HETIRENDTIPUS INSERT */
|
||||
SELECT @mukodsesiHely = MIN(ID) FROM T_MUKODESIHELY_OSSZES WHERE C_TANEVID = @tanevId AND TOROLT = 'F'
|
||||
|
||||
MERGE T_DICTIONARYITEMBASE_OSSZES trg
|
||||
USING @hetirend src ON src.ID = trg.ID AND trg.C_INTEZMENYID = @intezmenyid AND trg.C_TANEVID = @tanevId AND trg.TOROLT = 'F'
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
C_VALUE
|
||||
,C_NAME
|
||||
,C_VISIBLE
|
||||
,C_TYPE
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) VALUES (
|
||||
0
|
||||
,src.nev + ' (importálva: ' + CONVERT(varchar(20), GETDATE(), 120) + ')'
|
||||
,'T'
|
||||
,'HetirendTipus'
|
||||
,@intezmenyID
|
||||
,@tanevID
|
||||
,NULL
|
||||
,@userId
|
||||
)
|
||||
OUTPUT INSERTED.ID, src.hetirendID, $action
|
||||
INTO @linkTable(insertedID, tempId, act);
|
||||
UPDATE x
|
||||
SET x.id = y.insertedID
|
||||
FROM @hetirend x
|
||||
INNER JOIN @linkTable y ON x.hetirendId = y.tempId
|
||||
WHERE x.ID IS NULL;
|
||||
|
||||
INSERT INTO T_HETIRENDTIPUS_OSSZES (
|
||||
ID
|
||||
,C_ALINTEZMENYID
|
||||
,C_ALTANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
x.ID AS ID -- ID - int
|
||||
,@intezmenyId AS C_ALINTEZMENYID -- C_ALINTEZMENYID - int
|
||||
,@tanevId AS C_ALTANEVID -- C_ALTANEVID - int
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userId AS CREATOR -- CREATOR - int
|
||||
FROM @hetirend x
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_HETIRENDTIPUS_OSSZES ht WHERE ht.ID = x.ID AND C_ALTANEVID = @tanevId AND TOROLT = 'F')
|
||||
DECLARE @ids TABLE (
|
||||
id int
|
||||
)
|
||||
DECLARE @ervenyessegKezdete datetime
|
||||
|
||||
/* T_ORARENDIORA INSERT */
|
||||
IF @regiTorlese = 1 BEGIN
|
||||
IF @ervenyessegFilebanSzerepel = 0 BEGIN
|
||||
|
||||
SELECT TOP(1) @ervenyessegKezdete = ervenyessegKezdete
|
||||
FROM @orarendiOra
|
||||
|
||||
UPDATE T_ORARENDIORA_OSSZES
|
||||
SET
|
||||
C_ORAERVENYESSEGVEGE = @ervenyessegKezdete
|
||||
,SERIAL += 1
|
||||
,LASTCHANGED = GETDATE()
|
||||
,MODIFIER = @userId
|
||||
WHERE C_ORAERVENYESSEGVEGE > @ervenyessegKezdete
|
||||
AND C_TANEVID = @tanevId
|
||||
AND C_ORAERVENYESSEGVEGE <> C_ORAERVENYESSEGKEZDETE
|
||||
AND TOROLT = 'F'
|
||||
AND C_ORAERVENYESSEGKEZDETE < @ervenyessegKezdete
|
||||
END
|
||||
ELSE BEGIN
|
||||
UPDATE T_ORARENDIORA_OSSZES
|
||||
SET TOROLT = 'T'
|
||||
,SERIAL += 1
|
||||
,LASTCHANGED = GETDATE()
|
||||
,MODIFIER = @userId
|
||||
WHERE TOROLT = 'F'
|
||||
AND C_TANEVID = @tanevId
|
||||
AND C_ORAERVENYESSEGVEGE <> C_ORAERVENYESSEGKEZDETE
|
||||
END
|
||||
END
|
||||
|
||||
DECLARE @csengetesiRendId int
|
||||
SELECT @csengetesiRendId = ID FROM T_CSENGETESIREND_OSSZES WHERE C_AKTIV = 'T' AND C_TANEVID = @tanevId AND TOROLT = 'F'
|
||||
|
||||
INSERT INTO T_ORARENDIORA_OSSZES (
|
||||
C_HETIREND
|
||||
,C_HETNAPJA
|
||||
,C_ORASZAM
|
||||
,C_ORAERVENYESSEGKEZDETE
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,C_BONTOTT
|
||||
,C_ORAERVENYESSEGVEGE
|
||||
,C_ORAKEZDETE
|
||||
,C_ORAVEGE
|
||||
,C_TEREMID
|
||||
,C_FOGLALKOZASID
|
||||
,C_CSENGETESIRENDORAID
|
||||
,C_TANTARGYID
|
||||
,C_OSZTALYCSOPORTID
|
||||
,C_TANARID
|
||||
,C_ORATULAJDONOSID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
,C_IMPORTALT
|
||||
,C_CSENGETESIRENDID
|
||||
) SELECT --'T_ORARENDIORA',
|
||||
h.id AS C_HETIREND
|
||||
,CASE o.hetNapja
|
||||
WHEN 'Hétfő' THEN 1408
|
||||
WHEN 'Kedd' THEN 1409
|
||||
WHEN 'Szerda' THEN 1410
|
||||
WHEN 'Csütörtök' THEN 1411
|
||||
WHEN 'Péntek' THEN 1412
|
||||
WHEN 'Szombat' THEN 1413
|
||||
WHEN 'Vasárnap' THEN 1414
|
||||
ELSE 1407
|
||||
END AS C_HETNAPJA -- ?
|
||||
,csro.C_ORASZAM AS C_ORASZAM
|
||||
,o.ervenyessegKezdete AS C_ORAERVENYESSEGKEZDETE
|
||||
,@intezmenyID AS C_INTEZMENYID
|
||||
,@tanevId AS C_TANEVID
|
||||
,'F' AS C_BONTOTT
|
||||
,o.ervenyessegVege AS C_ORAERVENYESSEGVEGE
|
||||
,csro.C_KEZDETE AS C_ORAKEZDETE
|
||||
,csro.C_VEGE AS C_ORAVEGE
|
||||
,t.id AS C_TEREMID
|
||||
,ff.ID AS C_FOGLALKOZASID -- ?
|
||||
,csro.ID AS C_CSENGETESIRENDORAID
|
||||
,tt.ID AS C_TANTARGYID -- ?
|
||||
,oszt.ID AS C_OSZTALYCSOPORTID -- ?
|
||||
,a.ID AS C_TANARID -- ?
|
||||
,@userId AS C_ORATULAJDONOSID -- ?
|
||||
,NULL AS MODIFIER
|
||||
,@userId AS CREATOR
|
||||
,'T' AS C_IMPORTALT
|
||||
,csro.C_CSENGETESIRENDID AS C_CSENGETESIRENDID
|
||||
FROM @orarendiOra o
|
||||
INNER JOIN @terem t ON t.teremID = o.teremID
|
||||
INNER JOIN @tanar a ON a.tanarID = o.tanarID
|
||||
INNER JOIN @tantargy tt ON tt.tantargyID = o.tantargyID
|
||||
INNER JOIN @osztalyCsoport oszt ON oszt.osztalyCsoportID = o.OsztalyId AND oszt.osztalyCsoport = 'O' AND o.csoportId IS NULL
|
||||
INNER JOIN (
|
||||
SELECT f.ID, f.C_TANTARGYID, f.C_OSZTALYCSOPORTID, ft.C_TANAROKID
|
||||
FROM T_FOGLALKOZAS_OSSZES f
|
||||
INNER JOIN T_FOGLALKOZASOK_TANAROK ft ON ft.C_FOGLALKOZASOKID = f.ID
|
||||
WHERE f.TOROLT = 'F' AND f.C_TANEVID = @tanevId
|
||||
) ff ON ff.C_TANTARGYID = tt.ID AND ff.C_TANAROKID = a.ID AND ff.C_OSZTALYCSOPORTID = oszt.ID--ISNULL(cs.ID, oszt.ID)
|
||||
INNER JOIN @hetirend h ON o.hetirendID = h.hetirendId
|
||||
INNER JOIN T_CSENGETESIRENDORA_OSSZES csro ON csro.C_ORASZAM = o.sorszam AND csro.C_CSENGETESIRENDID = @csengetesiRendId AND csro.TOROLT = 'F';
|
||||
|
||||
INSERT INTO T_ORARENDIORA_OSSZES (
|
||||
C_HETIREND
|
||||
,C_HETNAPJA
|
||||
,C_ORASZAM
|
||||
,C_ORAERVENYESSEGKEZDETE
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,C_BONTOTT
|
||||
,C_ORAERVENYESSEGVEGE
|
||||
,C_ORAKEZDETE
|
||||
,C_ORAVEGE
|
||||
,C_TEREMID
|
||||
,C_FOGLALKOZASID
|
||||
,C_CSENGETESIRENDORAID
|
||||
,C_TANTARGYID
|
||||
,C_OSZTALYCSOPORTID
|
||||
,C_TANARID
|
||||
,C_ORATULAJDONOSID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
,C_IMPORTALT
|
||||
,C_CSENGETESIRENDID
|
||||
) SELECT --'T_ORARENDIORA',
|
||||
h.id AS C_HETIREND
|
||||
,CASE o.hetNapja
|
||||
WHEN 'Hétfő' THEN 1408
|
||||
WHEN 'Kedd' THEN 1409
|
||||
WHEN 'Szerda' THEN 1410
|
||||
WHEN 'Csütörtök' THEN 1411
|
||||
WHEN 'Péntek' THEN 1412
|
||||
WHEN 'Szombat' THEN 1413
|
||||
WHEN 'Vasárnap' THEN 1414
|
||||
ELSE 1407
|
||||
END AS C_HETNAPJA -- ?
|
||||
,csro.C_ORASZAM AS C_ORASZAM
|
||||
,o.ervenyessegKezdete AS C_ORAERVENYESSEGKEZDETE
|
||||
,@intezmenyID AS C_INTEZMENYID
|
||||
,@tanevId AS C_TANEVID
|
||||
,'F' AS C_BONTOTT
|
||||
,o.ervenyessegVege AS C_ORAERVENYESSEGVEGE
|
||||
,csro.C_KEZDETE AS C_ORAKEZDETE
|
||||
,csro.C_VEGE AS C_ORAVEGE
|
||||
,t.id AS C_TEREMID
|
||||
,ff.ID AS C_FOGLALKOZASID -- ?
|
||||
,csro.ID AS C_CSENGETESIRENDORAID
|
||||
,tt.ID AS C_TANTARGYID -- ?
|
||||
,cs.ID AS C_OSZTALYCSOPORTID -- ?
|
||||
,a.ID AS C_TANARID -- ?
|
||||
,@userId AS C_ORATULAJDONOSID -- ?
|
||||
,NULL AS MODIFIER
|
||||
,@userId AS CREATOR
|
||||
,'T' AS C_IMPORTALT
|
||||
,csro.C_CSENGETESIRENDID AS C_CSENGETESIRENDID
|
||||
FROM @orarendiOra o
|
||||
INNER JOIN @terem t ON t.teremID = o.teremID
|
||||
INNER JOIN @tanar a ON a.tanarID = o.tanarID
|
||||
INNER JOIN @tantargy tt ON tt.tantargyID = o.tantargyID
|
||||
INNER JOIN @osztalyCsoport cs ON cs.osztalyCsoportID = o.CsoportId AND cs.osztalyCsoport = 'CS'
|
||||
INNER JOIN (
|
||||
SELECT f.ID, f.C_TANTARGYID, f.C_OSZTALYCSOPORTID, ft.C_TANAROKID
|
||||
FROM T_FOGLALKOZAS_OSSZES f
|
||||
INNER JOIN T_FOGLALKOZASOK_TANAROK ft ON ft.C_FOGLALKOZASOKID = f.ID
|
||||
WHERE f.TOROLT = 'F' AND f.C_TANEVID = @tanevId
|
||||
) ff ON ff.C_TANTARGYID = tt.ID AND ff.C_TANAROKID = a.ID AND ff.C_OSZTALYCSOPORTID = cs.ID
|
||||
INNER JOIN @hetirend h ON o.hetirendID = h.hetirendId
|
||||
INNER JOIN T_CSENGETESIRENDORA_OSSZES csro ON csro.C_ORASZAM = o.sorszam AND csro.C_CSENGETESIRENDID = @csengetesiRendId AND csro.TOROLT = 'F';
|
||||
|
||||
COMMIT TRANSACTION
|
||||
-- ROLLBACK TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
END
|
||||
|
||||
GO
|
|
@ -0,0 +1,134 @@
|
|||
IF OBJECT_ID('sp_ImportCsoportok', 'P') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_ImportCsoportok
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_ImportCsoportok
|
||||
@xml xml,
|
||||
@userID int,
|
||||
@intezmenyID int
|
||||
AS
|
||||
BEGIN
|
||||
BEGIN TRY
|
||||
SET NOCOUNT ON
|
||||
SET XACT_ABORT ON
|
||||
DECLARE @tbl TABLE (
|
||||
ID int,
|
||||
C_NEV nvarchar(50),
|
||||
C_TIPUSA int,
|
||||
C_EVFOLYAMTIPUSA int,
|
||||
C_FELADATELLATASIHELYID int,
|
||||
C_TEREMID int,
|
||||
C_CSOPORTVEZETOID int,
|
||||
C_TANEVID int
|
||||
);
|
||||
|
||||
INSERT INTO @tbl
|
||||
SELECT
|
||||
NULL AS ID,
|
||||
sor.value('(nev)[1]', 'nvarchar(50)') AS C_NEV,
|
||||
sor.value('(tipus)[1]', 'int') AS C_TIPUSA,
|
||||
sor.value('(evfolyam-tipusa)[1]', 'int') AS C_EVFOLYAMTIPUSA,
|
||||
sor.value('(fhely)[1]', 'int') AS C_FELADATELLATASIHELYID,
|
||||
sor.value('(terem)[1]', 'int') AS C_TEREMID,
|
||||
sor.value('(csoportvezeto)[1]', 'int') AS C_CSOPORTVEZETOID,
|
||||
sor.value('(tanev)[1]', 'int') AS C_TANEVID
|
||||
FROM @xml.nodes('/CsoportImport/CsoportLista/Csoport') AS sorok(sor)
|
||||
|
||||
BEGIN TRANSACTION
|
||||
|
||||
|
||||
UPDATE ocs SET
|
||||
ocs.C_EVFOLYAMTIPUSA = t.C_EVFOLYAMTIPUSA -- int
|
||||
,ocs.C_TEREMID = t.C_TEREMID -- int
|
||||
,ocs.C_FELADATELLATASIHELYID = t.C_FELADATELLATASIHELYID -- int
|
||||
|
||||
,ocs.SERIAL = ocs.SERIAL + 1
|
||||
,ocs.LASTCHANGED = GETDATE() -- datetime
|
||||
,ocs.MODIFIER = @userID -- int
|
||||
FROM T_OSZTALYCSOPORT ocs
|
||||
INNER JOIN @tbl t ON ocs.C_NEV = t.C_NEV AND ocs.C_TANEVID = t.C_TANEVID AND ocs.TOROLT = 'F'
|
||||
WHERE EXISTS (SELECT 1 FROM T_CSOPORT WHERE ID = ocs.ID)
|
||||
|
||||
|
||||
INSERT INTO T_OSZTALYCSOPORT (
|
||||
C_MEGJEGYZES
|
||||
,C_NEV
|
||||
,C_VEGZOSEVFOLYAM
|
||||
,C_EVFOLYAMTIPUSA
|
||||
,C_IMPORTALT
|
||||
,C_TANEVID
|
||||
,C_TEREMID
|
||||
,C_FELADATELLATASIHELYID
|
||||
,C_INTEZMENYID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
NULL AS C_MEGJEGYZES -- C_MEGJEGYZES - nvarchar(255)
|
||||
,C_NEV AS C_NEV -- C_NEV - nvarchar(255)
|
||||
,'F' AS C_VEGZOSEVFOLYAM -- C_VEGZOSEVFOLYAM - char(1)
|
||||
,C_EVFOLYAMTIPUSA AS C_EVFOLYAMTIPUSA -- C_EVFOLYAMTIPUSA - int
|
||||
,'F' AS C_IMPORTALT -- C_IMPORTALT - char(1)
|
||||
,C_TANEVID AS C_TANEVID -- C_TANEVID - int
|
||||
,C_TEREMID AS C_TEREMID -- C_TEREMID - int
|
||||
,C_FELADATELLATASIHELYID AS C_FELADATELLATASIHELYID -- C_FELADATELLATASIHELYID - int
|
||||
,@intezmenyID AS C_INTEZMENYID
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userID AS CREATOR -- CREATOR - int
|
||||
FROM @tbl t
|
||||
WHERE NOT EXISTS (
|
||||
SELECT 1 FROM T_OSZTALYCSOPORT ocs
|
||||
WHERE ocs.C_NEV = t.C_NEV AND ocs.C_TANEVID = t.C_TANEVID AND ocs.TOROLT = 'F'
|
||||
AND NOT EXISTS (SELECT 1 FROM T_OSZTALY WHERE ID = ocs.ID)
|
||||
);
|
||||
|
||||
|
||||
|
||||
UPDATE t
|
||||
SET t.ID = ocs.ID
|
||||
FROM @tbl t
|
||||
INNER JOIN T_OSZTALYCSOPORT ocs ON ocs.C_NEV = t.C_NEV AND ocs.C_TANEVID = t.C_TANEVID AND ocs.TOROLT = 'F'
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_OSZTALY WHERE ID = ocs.ID)
|
||||
|
||||
|
||||
|
||||
UPDATE cs
|
||||
SET cs.C_TIPUSA = t.C_TIPUSA -- int
|
||||
FROM T_CSOPORT cs
|
||||
INNER JOIN @tbl t ON t.ID = cs.ID
|
||||
|
||||
INSERT INTO T_CSOPORT (
|
||||
ID
|
||||
,C_TIPUSA
|
||||
,C_CSOPORTNAPLOLEIRAS
|
||||
,C_CSOPORTNAPLOMEGNYITASA
|
||||
,C_CSOPORTNAPLOZARASA
|
||||
,C_CSOPORTVEZETOID
|
||||
,C_OSZTALYBONTASID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
t.ID AS ID -- ID - int
|
||||
,t.C_TIPUSA AS C_TIPUSA -- C_TIPUSA - int
|
||||
,NULL AS C_CSOPORTNAPLOLEIRAS -- C_CSOPORTNAPLOLEIRAS - nvarchar(MAX)
|
||||
,NULL AS C_CSOPORTNAPLOMEGNYITASA -- C_CSOPORTNAPLOMEGNYITASA - datetime
|
||||
,NULL AS C_CSOPORTNAPLOZARASA -- C_CSOPORTNAPLOZARASA - datetime
|
||||
,NULL AS C_CSOPORTVEZETOID -- C_CSOPORTVEZETOID - int
|
||||
,NULL AS C_OSZTALYBONTASID -- C_OSZTALYBONTASID - int
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userID AS CREATOR -- CREATOR - int
|
||||
FROM @tbl t
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_CSOPORT WHERE ID = t.ID)
|
||||
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
END
|
||||
GO
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,135 @@
|
|||
IF OBJECT_ID('sp_ImportEszkozok', 'P') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_ImportEszkozok
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [sp_ImportEszkozok]
|
||||
@xml xml,
|
||||
@userID int,
|
||||
@intezmenyID int,
|
||||
@tanevID int
|
||||
AS
|
||||
BEGIN
|
||||
BEGIN TRY
|
||||
SET NOCOUNT ON
|
||||
SET XACT_ABORT ON
|
||||
|
||||
DECLARE @tbl TABLE (
|
||||
C_NEV nvarchar(255),
|
||||
C_TEREMID int,
|
||||
C_FELELOSID int,
|
||||
C_DARABSZAM int,
|
||||
C_TIPUS int,
|
||||
C_KATEGORIA int,
|
||||
C_BESZERZESDATUM datetime,
|
||||
C_LELTARISZAM nvarchar(20),
|
||||
C_GYARISZAM nvarchar(20),
|
||||
C_MEGJEGYZES nvarchar(255)
|
||||
)
|
||||
|
||||
INSERT INTO @tbl
|
||||
SELECT
|
||||
sor.value('(EszkozNeve)[1]', 'nvarchar(255)') AS C_NEV,
|
||||
sor.value('number((TeremId)[1])', 'int') AS C_TEREMID,
|
||||
sor.value('number((FelelosId)[1])', 'int') AS C_FELELOSID,
|
||||
sor.value('(DarabSzam)[1]', 'int') AS C_DARABSZAM,
|
||||
sor.value('number((EszkozTipus)[1])', 'int') AS C_TIPUS,
|
||||
sor.value('number((kategoria)[1])', 'int') AS C_KATEGORIA,
|
||||
sor.value('(beszerzes-datuma)[1]', 'datetime') AS C_BESZERZESDATUM,
|
||||
sor.value('(LeltariSzam)[1]', 'nvarchar(20)') AS C_LELTARISZAM,
|
||||
sor.value('(gyari-szam)[1]', 'nvarchar(20)') AS C_GYARISZAM,
|
||||
sor.value('(megjegyzes)[1]', 'nvarchar(255)') AS C_MEGJEGYZES
|
||||
FROM @xml.nodes('/EszkozImport/EszkozLista/Eszkoz') as sorok(sor)
|
||||
|
||||
BEGIN TRANSACTION
|
||||
UPDATE e
|
||||
SET e.C_BESZERZESDATUM = IsNull(t.C_BESZERZESDATUM, e.C_BESZERZESDATUM)
|
||||
,e.C_GYARISZAM = IsNull(t.C_GYARISZAM, e.C_GYARISZAM)
|
||||
,e.C_KATEGORIA = IsNull(t.C_KATEGORIA, e.C_KATEGORIA)
|
||||
,e.C_DARABSZAM = IsNull(t.C_DARABSZAM, e.C_DARABSZAM)
|
||||
,e.C_LELTARISZAM = IsNull(t.C_LELTARISZAM, e.C_LELTARISZAM)
|
||||
,e.C_MEGJEGYZES = IsNull(t.C_MEGJEGYZES, e.C_MEGJEGYZES)
|
||||
,e.C_TIPUS = IsNull(t.C_TIPUS, e.C_TIPUS)
|
||||
,e.C_FELELOSID = IsNull(t.C_FELELOSID, e.C_FELELOSID)
|
||||
,e.SERIAL = e.SERIAL + 1
|
||||
,e.LASTCHANGED = GETDATE() -- datetime
|
||||
,e.MODIFIER = @userID -- int
|
||||
FROM T_ESZKOZ e
|
||||
INNER JOIN @tbl t ON t.C_NEV = e.C_NEV AND t.C_TEREMID = e.C_TEREMID
|
||||
|
||||
INSERT INTO T_ESZKOZ (
|
||||
C_BERELT
|
||||
,C_BESZERZESDATUM
|
||||
,C_BESZERZESIAR
|
||||
,C_DARABSZAM
|
||||
,C_FOKONYVISZAM
|
||||
,C_GYARISZAM
|
||||
,C_GYARTASIEV
|
||||
,C_HALOZATIKAPCSOLAT
|
||||
,C_HORDOZHATO
|
||||
,C_INTERNETKAPCSOLAT
|
||||
,C_KATEGORIA
|
||||
,C_LELTARISZAM
|
||||
,C_MEGJEGYZES
|
||||
,C_MULTIMEDIAS
|
||||
,C_NEV
|
||||
,C_PEDAGOGUSHOZZAFERHET
|
||||
,C_SZALLITO
|
||||
,C_TANULOHOZZAFERHET
|
||||
,C_TARTOZEK
|
||||
,C_TARTOZEKHIVATKOZAS
|
||||
,C_TIPUS
|
||||
,C_CELJA
|
||||
,C_JELLEGE
|
||||
,C_MENNYISEGIEGYSEG
|
||||
,C_VONALKOD
|
||||
,C_TEREMID
|
||||
,C_FELELOSID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
'F' AS C_BERELT -- C_BERELT - char(1)
|
||||
,NULL AS C_BESZERZESDATUM -- C_BESZERZESDATUM - datetime
|
||||
,NULL AS C_BESZERZESIAR -- C_BESZERZESIAR - int
|
||||
,t.C_DARABSZAM AS C_DARABSZAM -- C_DARABSZAM - int
|
||||
,NULL AS C_FOKONYVISZAM -- C_FOKONYVISZAM - nvarchar(255)
|
||||
,t.C_GYARISZAM AS C_GYARISZAM -- C_GYARISZAM - nvarchar(20)
|
||||
,NULL AS C_GYARTASIEV -- C_GYARTASIEV - int
|
||||
,NULL AS C_HALOZATIKAPCSOLAT -- C_HALOZATIKAPCSOLAT - char(1)
|
||||
,NULL AS C_HORDOZHATO -- C_HORDOZHATO - char(1)
|
||||
,NULL AS C_INTERNETKAPCSOLAT -- C_INTERNETKAPCSOLAT - char(1)
|
||||
,t.C_KATEGORIA AS C_KATEGORIA -- C_KATEGORIA - int
|
||||
,t.C_LELTARISZAM AS C_LELTARISZAM -- C_LELTARISZAM - nvarchar(20)
|
||||
,t.C_MEGJEGYZES AS C_MEGJEGYZES -- C_MEGJEGYZES - nvarchar(255)
|
||||
,NULL AS C_MULTIMEDIAS -- C_MULTIMEDIAS - char(1)
|
||||
,t.C_NEV AS C_NEV -- C_NEV - nvarchar(255)
|
||||
,NULL AS C_PEDAGOGUSHOZZAFERHET -- C_PEDAGOGUSHOZZAFERHET - char(1)
|
||||
,NULL AS C_SZALLITO -- C_SZALLITO - nvarchar(255)
|
||||
,NULL AS C_TANULOHOZZAFERHET -- C_TANULOHOZZAFERHET - char(1)
|
||||
,NULL AS C_TARTOZEK -- C_TARTOZEK - char(1)
|
||||
,NULL AS C_TARTOZEKHIVATKOZAS -- C_TARTOZEKHIVATKOZAS - nvarchar(20)
|
||||
,t.C_TIPUS AS C_TIPUS -- C_TIPUS - int
|
||||
,NULL AS C_CELJA -- C_CELJA - int
|
||||
,NULL AS C_JELLEGE -- C_JELLEGE - int
|
||||
,NULL AS C_MENNYISEGIEGYSEG -- C_MENNYISEGIEGYSEG - int
|
||||
,NULL AS C_VONALKOD -- C_VONALKOD - int
|
||||
,t.C_TEREMID AS C_TEREMID -- C_TEREMID - int
|
||||
,t.C_FELELOSID AS C_FELELOSID -- C_FELELOSID - int
|
||||
,@intezmenyID AS C_INTEZMENYID
|
||||
,@tanevID AS C_TANEVID
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userID AS CREATOR -- CREATOR - int
|
||||
FROM @tbl t
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_ESZKOZ WHERE C_NEV = t.C_NEV AND C_TEREMID = t.C_TEREMID);
|
||||
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
END
|
||||
|
|
@ -0,0 +1,72 @@
|
|||
IF OBJECT_ID('sp_ImportOratervTantargyai', 'P') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_ImportOratervTantargyai
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_ImportOratervTantargyai
|
||||
@xml xml,
|
||||
@userID int,
|
||||
@intezmenyID int,
|
||||
@tanevID int
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
BEGIN TRY
|
||||
SET NOCOUNT ON
|
||||
SET XACT_ABORT ON
|
||||
|
||||
DECLARE @tbl TABLE (
|
||||
C_ORATERVID int,
|
||||
C_TANTARGYID int,
|
||||
C_EVESORASZAM int,
|
||||
C_HETIORASZAM int
|
||||
)
|
||||
|
||||
select * from T_ORATERVTARGY
|
||||
|
||||
INSERT INTO @tbl
|
||||
SELECT
|
||||
sor.value('(oraterv)[1]', 'int') AS C_ORATERVID,
|
||||
sor.value('(tantargy)[1]', 'int') AS C_TANTARGYID,
|
||||
sor.value('(eves-oraszam)[1]', 'int') AS C_EVESORASZAM,
|
||||
sor.value('(heti-oraszam)[1]', 'float') AS C_HETIORASZAM
|
||||
FROM @xml.nodes('/OratervTantargyaImport/OratervTantargyaLista/OratervTantargya') as sorok(sor)
|
||||
|
||||
BEGIN TRANSACTION
|
||||
UPDATE o SET
|
||||
o.C_EVESORASZAM = t.C_EVESORASZAM -- int
|
||||
,o.SERIAL = o.SERIAL + 1
|
||||
,o.LASTCHANGED = GETDATE() -- datetime
|
||||
,o.MODIFIER = @userID -- int
|
||||
FROM T_ORATERVTARGY o
|
||||
INNER JOIN @tbl t ON t.C_ORATERVID = o.C_ORATERVID AND t.C_TANTARGYID = o.C_TANTARGYID
|
||||
|
||||
INSERT T_ORATERVTARGY (
|
||||
C_EVESORASZAM
|
||||
,C_ORATERVID
|
||||
,C_TANTARGYID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
t.C_EVESORASZAM AS C_EVESORASZAM -- C_EVESORASZAM - int
|
||||
,t.C_ORATERVID AS C_ORATERVID -- C_ORATERVID - int
|
||||
,t.C_TANTARGYID AS C_TANTARGYID -- C_TANTARGYID - int
|
||||
,@intezmenyID AS C_INTEZMENYID
|
||||
,@tanevID AS C_TANEVID
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userID AS CREATOR -- CREATOR - int
|
||||
FROM @tbl t
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_ORATERVTARGY WHERE C_ORATERVID = t.C_ORATERVID AND C_TANTARGYID = C_TANTARGYID)
|
||||
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
IF OBJECT_ID('sp_ImportOratervek', 'P') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_ImportOratervek
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_ImportOratervek
|
||||
@xml xml,
|
||||
@userID int,
|
||||
@intezmenyID int,
|
||||
@tanevID int
|
||||
AS
|
||||
BEGIN
|
||||
BEGIN TRY
|
||||
SET NOCOUNT ON
|
||||
SET XACT_ABORT ON
|
||||
|
||||
DECLARE @tbl TABLE (
|
||||
C_NEV nvarchar(255),
|
||||
C_EVFOLYAM int,
|
||||
C_TANTERVID int
|
||||
);
|
||||
|
||||
INSERT INTO @tbl
|
||||
SELECT
|
||||
sor.value('(nev)[1]', 'nvarchar(255)') AS C_NEV,
|
||||
sor.value('(evfolyam)[1]', 'int') AS C_EVFOLYAM,
|
||||
sor.value('(tanterv)[1]', 'int') AS C_TANTERVID
|
||||
FROM @xml.nodes('/OratervImport/OratervLista/Oraterv') as sorok(sor)
|
||||
|
||||
BEGIN TRANSACTION
|
||||
UPDATE o
|
||||
SET o.C_EVFOLYAM = t.C_EVFOLYAM
|
||||
,o.C_TANTERVID = t.C_TANTERVID
|
||||
,o.SERIAL = o.SERIAL + 1
|
||||
,o.LASTCHANGED = GETDATE()
|
||||
,o.MODIFIER = @userID
|
||||
FROM T_ORATERV o
|
||||
INNER JOIN @tbl t ON t.C_NEV = o.C_NEV
|
||||
|
||||
INSERT INTO T_ORATERV (
|
||||
C_EVFOLYAM
|
||||
,C_NEV
|
||||
,C_TANTERVID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
C_EVFOLYAM AS C_EVFOLYAM -- C_EVFOLYAM - int
|
||||
,C_NEV AS C_NEV -- C_NEV - nvarchar(255)
|
||||
,C_TANTERVID AS C_TANTERVID -- C_TANTERVID - int
|
||||
,@intezmenyID AS C_INTEZMENYID
|
||||
,@tanevID AS C_TANEVID
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userID AS CREATOR -- CREATOR - int
|
||||
FROM @tbl t
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_ORATERV WHERE C_NEV = t.C_NEV)
|
||||
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,137 @@
|
|||
IF OBJECT_ID('sp_ImportOsztalyok', 'P') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_ImportOsztalyok
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_ImportOsztalyok
|
||||
@xml xml,
|
||||
@userID int,
|
||||
@intezmenyID int
|
||||
AS
|
||||
BEGIN
|
||||
BEGIN TRY
|
||||
DECLARE @tbl TABLE (
|
||||
ID int,
|
||||
C_NEV nvarchar(50),
|
||||
C_FELADATELLATASIHELYID int,
|
||||
C_EVFOLYAMTIPUSA int,
|
||||
C_OSZTALYFONOKID int,
|
||||
C_OFOHELYETTESID int,
|
||||
C_KEPZESIFORMA int,
|
||||
C_TANTERVID int,
|
||||
C_TEREMID int,
|
||||
C_VEGZOSEVFOLYAM char(1),
|
||||
C_MEGJEGYZES nvarchar(255),
|
||||
C_TANEVID int
|
||||
);
|
||||
|
||||
INSERT INTO @tbl
|
||||
SELECT
|
||||
NULL AS ID,
|
||||
sor.value('(nev)[1]', 'nvarchar(50)') AS C_NEV,
|
||||
sor.value('(fhely)[1]', 'int') AS C_FELADATELLATASIHELYID,
|
||||
sor.value('(evfolyamtipusa)[1]', 'int') AS C_EVFOLYAMTIPUSA,
|
||||
sor.value('(osztalyfonok)[1]', 'int') AS C_OSZTALYFONOKID,
|
||||
sor.value('(helyettes)[1]', 'int') AS C_OFOHELYETTESID,
|
||||
sor.value('(kepzes)[1]', 'int') AS C_KEPZESIFORMA,
|
||||
sor.value('(tanterv)[1]', 'int') AS C_TANTERVID,
|
||||
sor.value('(terem)[1]', 'int') AS C_TEREMID,
|
||||
sor.value('(vegzos)[1]', 'char(1)') AS C_VEGZOSEVFOLYAM,
|
||||
sor.value('(megjegyzes)[1]', 'nvarchar(255)') AS C_MEGJEGYZES,
|
||||
sor.value('(tanev)[1]', 'int') AS C_TANEVID
|
||||
FROM @xml.nodes('/OsztalyImport/OsztalyLista/Osztaly') AS sorok(sor)
|
||||
|
||||
BEGIN TRANSACTION
|
||||
UPDATE ocs SET
|
||||
ocs.C_MEGJEGYZES = t.C_MEGJEGYZES -- nvarchar(255)
|
||||
,ocs.C_VEGZOSEVFOLYAM = t.C_VEGZOSEVFOLYAM -- char(1)
|
||||
,ocs.C_EVFOLYAMTIPUSA = t.C_EVFOLYAMTIPUSA -- int
|
||||
,ocs.C_IMPORTALT = 'T' -- char(1)
|
||||
,ocs.C_TEREMID = t.C_TEREMID -- int
|
||||
,ocs.C_FELADATELLATASIHELYID = t.C_FELADATELLATASIHELYID -- int
|
||||
|
||||
,ocs.SERIAL = ocs.SERIAL + 1
|
||||
,ocs.LASTCHANGED = GETDATE() -- datetime
|
||||
,ocs.MODIFIER = @userID -- int
|
||||
FROM T_OSZTALYCSOPORT ocs
|
||||
INNER JOIN @tbl t ON ocs.C_NEV = t.C_NEV AND ocs.C_TANEVID = t.C_TANEVID AND ocs.TOROLT = 'F'
|
||||
WHERE EXISTS (SELECT 1 FROM T_OSZTALY WHERE ID = ocs.ID)
|
||||
|
||||
INSERT INTO T_OSZTALYCSOPORT (
|
||||
C_MEGJEGYZES
|
||||
,C_NEV
|
||||
,C_VEGZOSEVFOLYAM
|
||||
,C_EVFOLYAMTIPUSA
|
||||
,C_IMPORTALT
|
||||
,C_TANEVID
|
||||
,C_TEREMID
|
||||
,C_FELADATELLATASIHELYID
|
||||
,C_INTEZMENYID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
C_MEGJEGYZES AS C_MEGJEGYZES -- C_MEGJEGYZES - nvarchar(255)
|
||||
,C_NEV AS C_NEV -- C_NEV - nvarchar(255)
|
||||
,C_VEGZOSEVFOLYAM AS C_VEGZOSEVFOLYAM -- C_VEGZOSEVFOLYAM - char(1)
|
||||
,C_EVFOLYAMTIPUSA AS C_EVFOLYAMTIPUSA -- C_EVFOLYAMTIPUSA - int
|
||||
,'F' AS C_IMPORTALT -- C_IMPORTALT - char(1)
|
||||
,C_TANEVID AS C_TANEVID -- C_TANEVID - int
|
||||
,C_TEREMID AS C_TEREMID -- C_TEREMID - int
|
||||
,C_FELADATELLATASIHELYID AS C_FELADATELLATASIHELYID -- C_FELADATELLATASIHELYID - int
|
||||
,@intezmenyID AS C_INTEZMENYID
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userID AS CREATOR -- CREATOR - int
|
||||
FROM @tbl t
|
||||
WHERE NOT EXISTS (
|
||||
SELECT 1 FROM T_OSZTALYCSOPORT ocs
|
||||
WHERE ocs.C_NEV = t.C_NEV AND ocs.C_TANEVID = t.C_TANEVID AND ocs.TOROLT = 'F'
|
||||
AND NOT EXISTS (SELECT 1 FROM T_CSOPORT WHERE ID = ocs.ID)
|
||||
);
|
||||
|
||||
UPDATE t
|
||||
SET t.ID = ocs.ID
|
||||
FROM @tbl t
|
||||
INNER JOIN T_OSZTALYCSOPORT ocs ON ocs.C_NEV = t.C_NEV AND ocs.C_TANEVID = t.C_TANEVID AND ocs.TOROLT = 'F'
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_CSOPORT WHERE ID = ocs.ID)
|
||||
|
||||
UPDATE o
|
||||
SET o.C_KEPZESIFORMA = t.C_KEPZESIFORMA -- int
|
||||
,o.C_OSZTALYFONOKID = t.C_OSZTALYFONOKID -- int
|
||||
,o.C_OFOHELYETTESID = t.C_OFOHELYETTESID -- int
|
||||
,o.C_TANTERVID = t.C_TANTERVID -- int
|
||||
FROM T_OSZTALY o
|
||||
INNER JOIN @tbl t ON t.ID = O.ID
|
||||
|
||||
INSERT INTO T_OSZTALY (
|
||||
ID
|
||||
,C_KEPZESIFORMA
|
||||
,C_OSZTALYNAPLOLEIRASA
|
||||
,C_OSZTALYNAPLOMEGNYITASA
|
||||
,C_OSZTALYNAPLOZARASA
|
||||
,C_OSZTALYFONOKID
|
||||
,C_OFOHELYETTESID
|
||||
,C_TANTERVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
t.ID AS ID -- ID - int
|
||||
,t.C_KEPZESIFORMA AS C_KEPZESIFORMA -- C_KEPZESIFORMA - int
|
||||
,NULL AS C_OSZTALYNAPLOLEIRASA -- C_OSZTALYNAPLOLEIRASA - nvarchar(MAX)
|
||||
,NULL AS C_OSZTALYNAPLOMEGNYITASA -- C_OSZTALYNAPLOMEGNYITASA - datetime
|
||||
,NULL AS C_OSZTALYNAPLOZARASA -- C_OSZTALYNAPLOZARASA - datetime
|
||||
,t.C_OSZTALYFONOKID AS C_OSZTALYFONOKID -- C_OSZTALYFONOKID - int
|
||||
,t.C_OFOHELYETTESID AS C_OFOHELYETTESID -- C_OFOHELYETTESID - int
|
||||
,t.C_TANTERVID AS C_TANTERVID -- C_TANTERVID - int
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userID AS CREATOR -- CREATOR - int
|
||||
FROM @tbl t
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_OSZTALY WHERE ID = t.ID)
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,55 @@
|
|||
IF OBJECT_ID('sp_ImportTanariTantargyak', 'P') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_ImportTanariTantargyak
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_ImportTanariTantargyak
|
||||
@xml xml,
|
||||
@userID int,
|
||||
@intezmenyID int,
|
||||
@tanevID int
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
BEGIN TRY
|
||||
SET NOCOUNT ON
|
||||
SET XACT_ABORT ON
|
||||
|
||||
DECLARE @tbl TABLE (
|
||||
C_ALKALMAZOTTID int,
|
||||
C_TANTARGYID int
|
||||
)
|
||||
|
||||
INSERT INTO @tbl
|
||||
SELECT
|
||||
sor.value('(tanar)[1]', 'int') AS C_ALKALMAZOTTID,
|
||||
sor.value('(tantargy)[1]', 'int') AS C_TANTARGYID
|
||||
FROM @xml.nodes('/TanariTantargyImport/TanariTantargyLista/TanariTantargy') as sorok(sor)
|
||||
|
||||
BEGIN TRANSACTION
|
||||
INSERT INTO T_TANARITANTARGY (
|
||||
C_ALKALMAZOTTID
|
||||
,C_TANTARGYID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
C_ALKALMAZOTTID AS C_ALKALMAZOTTID -- C_ALKALMAZOTTID - int
|
||||
,C_TANTARGYID AS C_TANTARGYID -- C_TANTARGYID - int
|
||||
,@intezmenyID AS C_INTEZMENYID
|
||||
,@tanevID AS C_TANEVID
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userID AS CREATOR -- CREATOR - int
|
||||
FROM @tbl t
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_TANARITANTARGY WHERE C_ALKALMAZOTTID = t.C_ALKALMAZOTTID AND C_TANTARGYID = t.C_TANTARGYID)
|
||||
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,170 @@
|
|||
IF OBJECT_ID('sp_ImportTanevRendje') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE sp_ImportTanevRendje
|
||||
END
|
||||
GO
|
||||
CREATE PROCEDURE [sp_ImportTanevRendje]
|
||||
@tanevRendjeImportAdatokXML as xml,
|
||||
@intezmenyID int,
|
||||
@userId int
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
-- XML beolvasásához
|
||||
DECLARE @tanevRendjeTable TABLE (
|
||||
tempId int,
|
||||
id int,
|
||||
datum datetime,
|
||||
hetiRend int,
|
||||
hetNapja int,
|
||||
megjegyzes nvarchar(255),
|
||||
napTipus int,
|
||||
orarendiNap char(1),
|
||||
osszesCsoport char(1),
|
||||
tanevId int
|
||||
)
|
||||
|
||||
-- A beszúrt sorok ID-jának kigyerése
|
||||
DECLARE @linkTable TABLE (
|
||||
tempId int,
|
||||
id int
|
||||
)
|
||||
|
||||
-- A T_OSZTALYCSOPORT_TANEVRENDJE beszúrűsűjoz
|
||||
DECLARE @osztalyCsoportTable TABLE (
|
||||
tempID int,
|
||||
osztalyCsoport int
|
||||
)
|
||||
|
||||
|
||||
BEGIN TRY
|
||||
-- XML feldolgozása
|
||||
INSERT INTO @tanevRendjeTable (tempID, Datum, Hetirend, Hetnapja, Megjegyzes, NapTipus, OrarendiNap, OsszesCsoport, TanevId)
|
||||
SELECT TanevRendjeImport.value('(ID)[1]', 'int'),
|
||||
TanevRendjeImport.value('(Datum)[1]', 'datetime'), -- ISO 8601 date format
|
||||
TanevRendjeImport.value('(Hetirend)[1]', 'int'),
|
||||
TanevRendjeImport.value('(Hetnapja)[1]', 'int'),
|
||||
TanevRendjeImport.value('(Megjegyzes)[1]', 'nvarchar(255)'),
|
||||
TanevRendjeImport.value('(NapTipus)[1]', 'int'),
|
||||
TanevRendjeImport.value('(OrarendiNap)[1]', 'char(1)'),
|
||||
TanevRendjeImport.value('(OsszesCsoport)[1]', 'char(1)'),
|
||||
TanevRendjeImport.value('(TanevId)[1]', 'int')--,
|
||||
FROM @tanevRendjeImportAdatokXML.nodes('/TanevRendjeImportAdatok/Adatok/TanevRendjeImport') AS TanevRendjeImportAdatok(TanevRendjeImport)
|
||||
|
||||
INSERT INTO @osztalyCsoportTable (tempID, osztalyCsoport)
|
||||
SELECT OsztalyCsoportId.value('(../../ID)[1]', 'int') AS tempId,
|
||||
OsztalyCsoportId.value('.', 'int') AS osztalyCsoport
|
||||
FROM @tanevRendjeImportAdatokXML.nodes('/TanevRendjeImportAdatok/Adatok/TanevRendjeImport/OsztalyCsoportIdList/ID') AS OsztalyCsoportIdList(OsztalyCsoportId)
|
||||
|
||||
/* Ha már létezik az adott tanevRendje, akkor töltjük az ID-t (amikhez tartozik osztalyCsoport) */
|
||||
UPDATE x
|
||||
SET x.ID = r.ID
|
||||
FROM @tanevRendjeTable x
|
||||
LEFT JOIN @osztalyCsoportTable o ON o.tempId = x.tempId
|
||||
LEFT JOIN T_TANEVRENDJE_OSSZES r ON r.C_DATUM = x.Datum AND x.tanevId = r.C_TANEVID
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocsr ON ocsr.C_OSZTALYCSOPORTID = o.osztalyCsoport AND ocsr.C_TANEVRENDJEID = r.ID
|
||||
|
||||
|
||||
BEGIN TRANSACTION
|
||||
|
||||
/* Töröljük a első, utolso tanitási nap, félév vége, utolsó tan nap végzősöknek tipusu napokat, ha abból van az xml-ben */
|
||||
DELETE FROM T_TANEVRENDJE_OSSZES
|
||||
WHERE EXISTS (
|
||||
SELECT 1
|
||||
FROM @tanevRendjeTable
|
||||
WHERE napTipus IN (1394, 1395, 1400, 1402) /* első, utolso tanitási nap, félév vége, utolsó tan nap végzősöknek*/
|
||||
AND C_NAPTIPUSA = napTipus
|
||||
AND C_TANEVID = tanevId
|
||||
)
|
||||
|
||||
/* Ha már létezik az adott tanevRendje, akkor töltjük az ID-t (amikhez NEM tartozik osztalyCsoport) */
|
||||
UPDATE x
|
||||
SET
|
||||
x.ID = r.ID
|
||||
FROM @tanevRendjeTable x
|
||||
INNER JOIN T_TANEVRENDJE_OSSZES r ON r.C_DATUM = x.Datum AND x.tanevId = r.C_TANEVID
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_OSZTALYCSOPORT_TANEVRENDJE ocsr WHERE ocsr.C_OSZTALYCSOPORTID = x.OsszesCsoport AND ocsr.C_TANEVRENDJEID = r.ID)
|
||||
AND x.OsszesCsoport IS NULL
|
||||
|
||||
|
||||
MERGE T_TANEVRENDJE_OSSZES trg
|
||||
USING @tanevRendjeTable src ON src.ID = trg.ID
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
trg.C_HETIREND = src.Hetirend
|
||||
,trg.C_HETNAPJA = src.Hetnapja
|
||||
,trg.C_MEGJEGYZES = src.Megjegyzes
|
||||
,trg.C_NAPTIPUSA = src.NapTipus
|
||||
,trg.C_ORARENDINAP = src.OrarendiNap
|
||||
,trg.C_OSSZESCSOPORTRAVONATKOZIK = src.OsszesCsoport
|
||||
|
||||
,trg.SERIAL = trg.SERIAL + 1
|
||||
,trg.LASTCHANGED = GETDATE()
|
||||
,trg.MODIFIER = @userId
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
C_AKTIV
|
||||
,C_DATUM
|
||||
,C_HETIREND
|
||||
,C_HETNAPJA
|
||||
,C_MEGJEGYZES
|
||||
,C_NAPTIPUSA
|
||||
,C_ORARENDINAP
|
||||
,C_OSSZESCSOPORTRAVONATKOZIK
|
||||
,C_CSENGETESIRENDID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR)
|
||||
VALUES (
|
||||
1 -- C_AKTIV - char(1)
|
||||
,src.Datum -- C_DATUM - datetime
|
||||
,src.Hetirend -- C_HETIREND - int
|
||||
,src.Hetnapja -- C_HETNAPJA - int
|
||||
,src.Megjegyzes -- C_MEGJEGYZES - nvarchar(255)
|
||||
,src.NapTipus -- C_NAPTIPUSA - int
|
||||
,src.OrarendiNap -- C_ORARENDINAP - char(1)
|
||||
,src.OsszesCsoport -- C_OSSZESCSOPORTRAVONATKOZIK - char(1)
|
||||
,NULL -- C_CSENGETESIRENDID - int
|
||||
,@intezmenyID -- C_INTEZMENYID - int
|
||||
,src.TanevId -- C_TANEVID - int
|
||||
,NULL -- MODIFIER - int
|
||||
,@userId -- CREATOR - int
|
||||
)
|
||||
OUTPUT INSERTED.ID, src.tempId
|
||||
INTO @linkTable(id, tempId);
|
||||
|
||||
-- Tanévrendje - osztálycsoportok összerendelése
|
||||
INSERT INTO T_OSZTALYCSOPORT_TANEVRENDJE (C_OSZTALYCSOPORTID, C_TANEVRENDJEID)
|
||||
SELECT osztalyCsoport, lt.id
|
||||
FROM @osztalyCsoportTable x
|
||||
INNER JOIN @linkTable lt ON lt.tempId = x.tempId
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_OSZTALYCSOPORT_TANEVRENDJE r WHERE r.C_OSZTALYCSOPORTID = x.osztalyCsoport AND r.C_TANEVRENDJEID = lt.id)
|
||||
|
||||
-- Az osztályhoz tartozó csoportokhoz is felvesszük a tanév rendjét
|
||||
INSERT INTO T_OSZTALYCSOPORT_TANEVRENDJE (C_OSZTALYCSOPORTID, C_TANEVRENDJEID)
|
||||
SELECT cso.C_CSOPORTOKID, lt.id
|
||||
FROM @osztalyCsoportTable x
|
||||
INNER JOIN @linkTable lt ON lt.tempId = x.tempId
|
||||
INNER JOIN T_OSZTALY o ON x.osztalyCsoport = o.ID
|
||||
INNER JOIN T_CSOPORTOK_OSZTALYOK cso ON cso.C_OSZTALYOKID = o.ID
|
||||
WHERE NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM T_OSZTALYCSOPORT_TANEVRENDJE
|
||||
WHERE C_OSZTALYCSOPORTID = cso.C_CSOPORTOKID AND C_TANEVRENDJEID = lt.id
|
||||
)
|
||||
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRAN;
|
||||
THROW;
|
||||
END CATCH
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,89 @@
|
|||
IF OBJECT_ID('sp_ImportTanmenetek', 'P') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_ImportTanmenetek
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_ImportTanmenetek
|
||||
@xml xml,
|
||||
@tantargyID int,
|
||||
@osztalycsoportID int,
|
||||
@userID int,
|
||||
@intezmenyID int,
|
||||
@tanevID int
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
BEGIN TRY
|
||||
SET NOCOUNT ON
|
||||
SET XACT_ABORT ON
|
||||
|
||||
DECLARE @tbl TABLE (
|
||||
C_ORASZAM int,
|
||||
C_TEMA nvarchar(max)
|
||||
)
|
||||
|
||||
INSERT INTO @tbl
|
||||
SELECT
|
||||
sor.value('(oraszam)[1]', 'int') AS C_ORASZAM,
|
||||
sor.value('(tema)[1]', 'nvarchar(1000)') AS C_TEMA
|
||||
FROM @xml.nodes('/TanmenetImport/TanmenetLista/Tanmenet') as sorok(sor)
|
||||
|
||||
BEGIN TRANSACTION
|
||||
UPDATE m SET
|
||||
m.C_NEV = LEFT(t.C_TEMA, 1000) -- nvarchar(1000)
|
||||
,m.C_TEMA = t.C_TEMA -- nvarchar(MAX)
|
||||
,m.SERIAL = m.SERIAL + 1 -- int
|
||||
,m.LASTCHANGED = GETDATE() -- datetime
|
||||
,m.MODIFIER = @userID -- int
|
||||
FROM T_TANMENET m
|
||||
INNER JOIN @tbl t ON t.C_ORASZAM = m.C_ORASZAM
|
||||
AND m.C_TANTARGYID = @tantargyID
|
||||
AND C_OSZTALYCSOPORTID = @osztalycsoportID
|
||||
AND C_FELTOLTOID = @userID
|
||||
|
||||
INSERT INTO T_TANMENET (
|
||||
C_BEJEGYZESIDEJE
|
||||
,C_MEGJEGYZES
|
||||
,C_NEV
|
||||
,C_ROVIDNEV
|
||||
,C_TEMA
|
||||
,C_ORASZAM
|
||||
,C_TANTARGYID
|
||||
,C_OSZTALYCSOPORTID
|
||||
,C_FELTOLTOID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
GETDATE() AS C_BEJEGYZESIDEJE -- C_BEJEGYZESIDEJE - datetime
|
||||
,NULL AS C_MEGJEGYZES -- C_MEGJEGYZES - nvarchar(255)
|
||||
,LEFT(t.C_TEMA, 1000) AS C_NEV -- C_NEV - nvarchar(1000)
|
||||
,NULL AS C_ROVIDNEV -- C_ROVIDNEV - nvarchar(255)
|
||||
,t.C_TEMA AS C_TEMA -- C_TEMA - nvarchar(MAX)
|
||||
,t.C_ORASZAM AS C_ORASZAM -- C_ORASZAM - int
|
||||
,@tantargyID AS C_TANTARGYID -- C_TANTARGYID - int
|
||||
,@osztalycsoportID AS C_OSZTALYCSOPORTID -- C_OSZTALYCSOPORTID - int
|
||||
,@userID AS C_FELTOLTOID -- C_FELTOLTOID - int
|
||||
,@intezmenyID AS C_INTEZMENYID
|
||||
,@tanevID AS C_TANEVID
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userID AS CREATOR -- CREATOR - int
|
||||
FROM @tbl t
|
||||
WHERE NOT EXISTS (
|
||||
SELECT 1 FROM T_TANMENET
|
||||
WHERE T_TANMENET.C_ORASZAM = t.C_ORASZAM
|
||||
AND C_TANTARGYID = @tantargyID
|
||||
AND C_OSZTALYCSOPORTID = @osztalycsoportID
|
||||
AND C_FELTOLTOID = @userID
|
||||
)
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,122 @@
|
|||
IF OBJECT_ID('sp_ImportTanoranKivuliFogl', 'P') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_ImportTanoranKivuliFogl
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_ImportTanoranKivuliFogl
|
||||
@xml xml,
|
||||
@userID int,
|
||||
@tanevID int,
|
||||
@intezmenyID int
|
||||
AS
|
||||
BEGIN
|
||||
BEGIN TRY
|
||||
SET NOCOUNT ON
|
||||
SET XACT_ABORT ON
|
||||
|
||||
DECLARE @tbl TABLE (
|
||||
ID int,
|
||||
C_NEV nvarchar(255),
|
||||
C_TANARID int,
|
||||
C_TANTARGYID int,
|
||||
C_OSZTALYCSOPORTID int,
|
||||
C_FOGLALKOZASTIPUSA int,
|
||||
C_ORASZAM float,
|
||||
C_MULASZTASKELL char(1),
|
||||
C_ERTEKELESKELL char(1)
|
||||
)
|
||||
|
||||
INSERT INTO @tbl
|
||||
SELECT
|
||||
NULL AS ID,
|
||||
sor.value('(foglalkozas-neve)[1]', 'nvarchar(255)') AS C_NEV,
|
||||
sor.value('(tanar)[1]', 'int') AS C_TANARID,
|
||||
sor.value('(tantargy)[1]', 'int') AS C_TANTARGYID,
|
||||
sor.value('(osztcsop)[1]', 'int') AS C_OSZTALYCSOPORTID,
|
||||
sor.value('(foglalkozas-tipusa)[1]', 'int') AS C_FOGLALKOZASTIPUSA,
|
||||
sor.value('(heti-oraszam)[1]', 'float') AS C_ORASZAM,
|
||||
sor.value('(mulasztas-kell)[1]', 'char(1)') AS C_MULASZTASKELL,
|
||||
sor.value('(ertekeles-kell)[1]', 'char(1)') AS C_ERTEKELESKELL
|
||||
FROM @xml.nodes('/TanoranKivuliFoglImport/TanoranKivuliFoglLista/TanoranKivuliFogl') as sorok(sor)
|
||||
|
||||
BEGIN TRANSACTION
|
||||
|
||||
UPDATE f
|
||||
SET f.C_FOGLALKOZASTIPUSA = t.C_FOGLALKOZASTIPUSA -- int
|
||||
,f.C_ORASZAM = t.C_ORASZAM -- numeric(10, 2)
|
||||
,f.C_NEV = t.C_NEV -- nvarchar(255)
|
||||
,f.C_ERTEKELESKELL = t.C_ERTEKELESKELL -- char(1)
|
||||
,f.C_MULASZTASKELL = t.C_MULASZTASKELL -- char(1)
|
||||
,f.SERIAL = f.SERIAL + 1 -- int
|
||||
,f.LASTCHANGED = GETDATE() -- datetime
|
||||
,f.MODIFIER = @userID -- int
|
||||
FROM T_FOGLALKOZAS f
|
||||
INNER JOIN T_FOGLALKOZASOK_TANAROK ft ON f.ID = ft.C_FOGLALKOZASOKID
|
||||
INNER JOIN @tbl t ON f.C_TANTARGYID = t.C_TANTARGYID
|
||||
AND f.C_OSZTALYCSOPORTID = t.C_OSZTALYCSOPORTID
|
||||
AND f.C_TANEVID = @tanevID AND ft.C_TANAROKID = t.C_TANARID
|
||||
|
||||
INSERT INTO T_FOGLALKOZAS (
|
||||
C_FOGLALKOZASTIPUSA
|
||||
,C_ORASZAM
|
||||
,C_NEV
|
||||
,C_ERTEKELESKELL
|
||||
,C_MULASZTASKELL
|
||||
,C_TANARFELVEHETI
|
||||
,C_IMPORTALT
|
||||
,C_TANTARGYID
|
||||
,C_OSZTALYCSOPORTID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
t.C_FOGLALKOZASTIPUSA AS C_FOGLALKOZASTIPUSA -- C_FOGLALKOZASTIPUSA - int
|
||||
,t.C_ORASZAM AS C_ORASZAM -- C_ORASZAM - numeric(10, 2)
|
||||
,t.C_NEV AS C_NEV -- C_NEV - nvarchar(255)
|
||||
,t.C_ERTEKELESKELL AS C_ERTEKELESKELL -- C_ERTEKELESKELL - char(1)
|
||||
,t.C_MULASZTASKELL AS C_MULASZTASKELL -- C_MULASZTASKELL - char(1)
|
||||
,NULL AS C_TANARFELVEHETI -- C_TANARFELVEHETI - char(1)
|
||||
,'F' AS C_IMPORTALT -- C_IMPORTALT - char(1)
|
||||
,t.C_TANTARGYID AS C_TANTARGYID -- C_TANTARGYID - int
|
||||
,t.C_OSZTALYCSOPORTID AS C_OSZTALYCSOPORTID -- C_OSZTALYCSOPORTID - int
|
||||
,@intezmenyID AS C_INTEZMENYID
|
||||
,@tanevID AS C_TANEVID -- C_TANEVID - int
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userID AS CREATOR -- CREATOR - int
|
||||
FROM @tbl t
|
||||
WHERE NOT EXISTS (
|
||||
SELECT 1 FROM T_FOGLALKOZAS f
|
||||
INNER JOIN T_FOGLALKOZASOK_TANAROK ft ON f.ID = ft.C_FOGLALKOZASOKID
|
||||
WHERE f.C_TANTARGYID = t.C_TANTARGYID
|
||||
AND f.C_OSZTALYCSOPORTID = t.C_OSZTALYCSOPORTID
|
||||
AND f.C_TANEVID = @tanevID
|
||||
AND ft.C_TANAROKID = t.C_TANARID
|
||||
)
|
||||
|
||||
UPDATE t
|
||||
SET t.ID = f.ID
|
||||
FROM @tbl t
|
||||
INNER JOIN T_FOGLALKOZAS f ON f.C_TANTARGYID = t.C_TANTARGYID
|
||||
AND f.C_OSZTALYCSOPORTID = t.C_OSZTALYCSOPORTID
|
||||
AND f.C_TANEVID = @tanevID
|
||||
|
||||
INSERT INTO T_FOGLALKOZASOK_TANAROK (
|
||||
C_FOGLALKOZASOKID
|
||||
,C_TANAROKID
|
||||
) SELECT
|
||||
t.ID AS C_FOGLALKOZASOKID -- C_FOGLALKOZASOKID - int
|
||||
,t.C_TANARID AS C_TANAROKID -- C_TANAROKID - int
|
||||
FROM @tbl t
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_FOGLALKOZASOK_TANAROK WHERE C_FOGLALKOZASOKID = t.ID AND C_TANAROKID = t.C_TANARID)
|
||||
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,393 @@
|
|||
IF OBJECT_ID('sp_ImportTantargyFelosztas', 'P') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_ImportTantargyFelosztas
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_ImportTantargyFelosztas
|
||||
@importXml xml,
|
||||
@tanevId int,
|
||||
@feladatellatasiHelyId int,
|
||||
@intezmenyId int,
|
||||
@userId int
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
SET NOCOUNT ON;
|
||||
SET XACT_ABORT ON;
|
||||
|
||||
DECLARE
|
||||
@root int
|
||||
|
||||
DECLARE @tbl TABLE (
|
||||
osztalyID int,
|
||||
osztalyNev nvarchar(255),
|
||||
csoportID int,
|
||||
csoportNev nvarchar(255),
|
||||
tantargyID int,
|
||||
tantargyNev nvarchar(255),
|
||||
oraszam float,
|
||||
tanarID int,
|
||||
tanarNev nvarchar(255),
|
||||
szulDatum datetime,
|
||||
foglalkozasID int,
|
||||
existItemId int
|
||||
)
|
||||
|
||||
SET @root = @importXml.exist('/TantargyfelosztasImport')
|
||||
|
||||
--SELECT @importXml;
|
||||
|
||||
IF @root = 1 BEGIN
|
||||
INSERT INTO @tbl
|
||||
SELECT
|
||||
NULL AS osztalyID,
|
||||
sor.value('(osztaly)[1]', 'nvarchar(255)') AS osztalyNev,
|
||||
NULL AS csoportID,
|
||||
sor.value('(csoport)[1]', 'nvarchar(255)') AS csoportNev,
|
||||
NULL AS tantargyID,
|
||||
sor.value('(tantargy)[1]', 'nvarchar(255)') AS tantargyNev,
|
||||
sor.value('(oraszam)[1]', 'float') AS oraszam,
|
||||
NULL AS tanarID,
|
||||
sor.value('(tanar)[1]', 'nvarchar(255)') AS tanarNev,
|
||||
sor.value('(szuldatum)[1]', 'varchar(10)')AS szulDatum,
|
||||
NULL AS foglalkozasID,
|
||||
sor.value('(existItemId)[1]', 'int') AS existItemId
|
||||
FROM @importXml.nodes('/TantargyfelosztasImport/TantargyfelosztasLista/Tantargyfelosztas') as sorok(sor)
|
||||
END
|
||||
ELSE BEGIN
|
||||
INSERT INTO @tbl
|
||||
SELECT
|
||||
NULL AS osztalyID,
|
||||
sor.value('(osztaly)[1]', 'nvarchar(255)') AS osztalyNev,
|
||||
NULL AS csoportID,
|
||||
sor.value('(csoport)[1]', 'nvarchar(255)') AS csoportNev,
|
||||
NULL AS tantargyID,
|
||||
sor.value('(tantargy)[1]', 'nvarchar(255)') AS tantargyNev,
|
||||
sor.value('(oraszam)[1]', 'float') AS oraszam,
|
||||
NULL AS tanarID,
|
||||
sor.value('(tanar)[1]', 'nvarchar(255)') AS tanarNev,
|
||||
sor.value('(szuldatum)[1]', 'varchar(10)')AS szulDatum,
|
||||
NULL AS foglalkozasID,
|
||||
sor.value('(existItemId)[1]', 'int') AS existItemId
|
||||
FROM @importXml.nodes('/TantargyfelosztasLista/Tantargyfelosztas') as sorok(sor)
|
||||
END
|
||||
|
||||
BEGIN TRY
|
||||
BEGIN TRAN
|
||||
|
||||
|
||||
UPDATE t
|
||||
SET t.C_IMPORTALT = 'T'
|
||||
FROM T_TANTARGY_OSSZES AS t
|
||||
INNER JOIN T_FOGLALKOZAS_OSSZES fo ON t.ID = fo.C_TANTARGYID AND fo.C_TANEVID = t.C_TANEVID
|
||||
WHERE fo.ID IN (SELECT existItemId FROM @tbl WHERE existItemId <> 0)
|
||||
AND t.C_TANEVID = @tanevId
|
||||
|
||||
|
||||
UPDATE ocs
|
||||
SET ocs.C_IMPORTALT = 'T'
|
||||
FROM T_OSZTALYCSOPORT_OSSZES AS ocs
|
||||
INNER JOIN T_FOGLALKOZAS_OSSZES fo ON ocs.ID = fo.C_OSZTALYCSOPORTID AND ocs.C_TANEVID = fo.C_TANEVID
|
||||
INNER JOIN T_TANTARGY_OSSZES t ON t.ID = fo.C_TANTARGYID AND t.C_TANEVID = fo.C_TANEVID
|
||||
WHERE fo.ID IN (SELECT existItemId FROM @tbl WHERE existItemId <> 0)
|
||||
AND ocs.C_TANEVID = @tanevId
|
||||
|
||||
UPDATE fo
|
||||
SET fo.C_IMPORTALT = 'T'
|
||||
FROM T_FOGLALKOZAS_OSSZES AS fo
|
||||
where fo.ID IN (SELECT existItemId FROM @tbl WHERE existItemId <> 0)
|
||||
AND fo.C_TANEVID = @tanevId
|
||||
|
||||
|
||||
/*TÖRÖLJÜK AZ IMPORTÁLTakat*/
|
||||
EXEC sp_DeleteAllTTF @feladatellatasiHelyId = @feladatellatasiHelyId, @tanevId = @tanevId
|
||||
|
||||
UPDATE f
|
||||
SET
|
||||
f.C_ORASZAM = temp.oraszam
|
||||
,f.C_IMPORTALT = 'T'
|
||||
,f.SERIAL += 1
|
||||
,f.LASTCHANGED = GETDATE()
|
||||
,f.MODIFIER = @userId
|
||||
FROM T_FOGLALKOZAS_OSSZES f
|
||||
INNER JOIN @tbl temp ON f.C_NEV = temp.tantargyNev + ' - ' + ISNULL(temp.csoportNev, temp.osztalyNev) + ' - ' + temp.tanarNev
|
||||
WHERE f.C_INTEZMENYID = @intezmenyId
|
||||
AND f.C_TANEVID = @tanevId
|
||||
AND f.TOROLT = 'F'
|
||||
|
||||
|
||||
UPDATE o
|
||||
SET o.tanarID = fh.ID
|
||||
FROM @tbl o
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.C_NYOMTATASINEV = o.tanarNev AND fh.C_SZULETESIDATUM = ISNULL(o.szulDatum, fh.C_SZULETESIDATUM)
|
||||
INNER JOIN T_ALKALMAZOTT_OSSZES a ON fh.ID = a.ID
|
||||
WHERE fh.C_TANEVID = @tanevId
|
||||
AND fh.TOROLT = 'F'
|
||||
|
||||
|
||||
|
||||
/*töltjük a tantárgyakat*/
|
||||
INSERT INTO T_TANTARGY_OSSZES (
|
||||
C_GYAKORLATI
|
||||
,C_NEV
|
||||
,C_ROVIDNEV
|
||||
,C_TARGYKATEGORIA
|
||||
,C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
,C_NEVNYOMTATVANYBAN
|
||||
,C_TANORANKIVULI
|
||||
,C_FOTARGYID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
,C_IMPORTALT
|
||||
) SELECT DISTINCT
|
||||
'F' AS C_GYAKORLATI -- C_GYAKORLATI - char(1)
|
||||
,o.tantargyNev AS C_NEV -- C_NEV - nvarchar(255)
|
||||
,LEFT(o.tantargyNev, 20) AS C_ROVIDNEV -- C_ROVIDNEV - nvarchar(20)
|
||||
,1197 AS C_TARGYKATEGORIA /*Na*/ -- C_TARGYKATEGORIA - int
|
||||
,NULL AS C_ALTANTARGYKENTNYOMTATVANYBAN -- C_ALTANTARGYKENTNYOMTATVANYBAN - char(1)
|
||||
,NULL AS C_NEVNYOMTATVANYBAN -- C_NEVNYOMTATVANYBAN - nvarchar(255)
|
||||
,'F' AS C_TANORANKIVULI -- C_TANORANKIVULI - char(1)
|
||||
,NULL AS C_FOTARGYID -- C_FOTARGYID - int
|
||||
,@intezmenyId AS C_INTEZMENYID
|
||||
,@tanevId AS C_TANEVID
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userId AS CREATOR -- CREATOR - int
|
||||
,'T' AS C_IMPORTALT -- C_IMPORTALT char(1)
|
||||
FROM @tbl o
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_TANTARGY_OSSZES WHERE C_NEV = o.tantargyNev AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
|
||||
UPDATE o
|
||||
SET o.tantargyID = t.ID
|
||||
FROM @tbl o
|
||||
INNER JOIN T_TANTARGY_OSSZES t ON t.C_NEV = o.tantargyNev AND t.C_TANEVID = @tanevId AND t.TOROLT = 'F'
|
||||
|
||||
|
||||
|
||||
/* OSZTÁLY */
|
||||
INSERT INTO T_OSZTALYCSOPORT_OSSZES (
|
||||
C_MEGJEGYZES
|
||||
,C_NEV
|
||||
,C_VEGZOSEVFOLYAM
|
||||
,C_EVFOLYAMTIPUSA
|
||||
,C_TANEVID
|
||||
,C_TEREMID
|
||||
,C_FELADATELLATASIHELYID
|
||||
,C_INTEZMENYID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
,C_IMPORTALT
|
||||
) SELECT DISTINCT
|
||||
NULL AS C_MEGJEGYZES -- C_MEGJEGYZES - nvarchar(255)
|
||||
,o.osztalyNev AS C_NEV -- C_NEV - nvarchar(255)
|
||||
,'F' AS C_VEGZOSEVFOLYAM -- C_VEGZOSEVFOLYAM - char(1)
|
||||
,1296 AS C_EVFOLYAMTIPUSA -- C_EVFOLYAMTIPUSA - int
|
||||
,@tanevId AS C_TANEVID -- C_TANEVID - int
|
||||
,NULL AS C_TEREMID -- C_TEREMID - int
|
||||
,@feladatellatasiHelyId AS C_FELADATELLATASIHELYID -- C_FELADATELLATASIHELYID - int
|
||||
,@intezmenyId AS C_INTEZMENYID
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userId AS CREATOR -- CREATOR - int
|
||||
,'T' AS C_IMPORTALT -- C_IMPORTALT char(1)
|
||||
FROM @tbl o
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_OSZTALYCSOPORT_OSSZES WHERE C_NEV = o.osztalyNev AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
AND o.OsztalyNev IS NOT NULL AND o.OsztalyNev <> ''
|
||||
|
||||
UPDATE o
|
||||
SET o.osztalyID = t.ID
|
||||
FROM @tbl o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES t ON t.C_NEV = o.osztalyNev AND C_TANEVID = @tanevId AND TOROLT = 'F'
|
||||
|
||||
INSERT INTO T_OSZTALY_OSSZES (
|
||||
ID
|
||||
,C_KEPZESIFORMA
|
||||
,C_OSZTALYFONOKID
|
||||
,C_OFOHELYETTESID
|
||||
,C_TANTERVID
|
||||
,C_ALINTEZMENYID
|
||||
,C_ALTANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT DISTINCT
|
||||
o.osztalyID AS ID -- ID - int
|
||||
,1096 AS C_KEPZESIFORMA /*Nappali rendszerű iskolai oktatás*/ -- C_KEPZESIFORMA - int
|
||||
,NULL AS C_OSZTALYFONOKID -- C_OSZTALYFONOKID - int
|
||||
,NULL AS C_OFOHELYETTESID -- C_OFOHELYETTESID - int
|
||||
,NULL AS C_TANTERVID -- C_TANTERVID - int
|
||||
,@intezmenyId
|
||||
,@tanevId
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userId AS CREATOR -- CREATOR - int
|
||||
FROM @tbl o
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_OSZTALY_OSSZES WHERE ID = o.osztalyID AND C_ALTANEVID = @tanevId AND TOROLT = 'F')
|
||||
AND o.osztalyID IS NOT NULL
|
||||
|
||||
INSERT INTO T_OSZTALYCSOPORT_OSSZES (
|
||||
C_MEGJEGYZES
|
||||
,C_NEV
|
||||
,C_VEGZOSEVFOLYAM
|
||||
,C_EVFOLYAMTIPUSA
|
||||
,C_TANEVID
|
||||
,C_TEREMID
|
||||
,C_FELADATELLATASIHELYID
|
||||
,C_INTEZMENYID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
,C_IMPORTALT
|
||||
) SELECT DISTINCT
|
||||
NULL AS C_MEGJEGYZES -- C_MEGJEGYZES - nvarchar(255)
|
||||
,IIF(o.csoportNev IS NULL, o.osztalyNev, o.csoportNev) AS C_NEV -- C_NEV - nvarchar(255)
|
||||
,'F' AS C_VEGZOSEVFOLYAM -- C_VEGZOSEVFOLYAM - char(1)
|
||||
,1296 AS C_EVFOLYAMTIPUSA -- C_EVFOLYAMTIPUSA - int Default(NA)
|
||||
,@tanevId AS C_TANEVID -- C_TANEVID - int
|
||||
,NULL AS C_TEREMID -- C_TEREMID - int
|
||||
,@feladatellatasiHelyId AS C_FELADATELLATASIHELYID -- C_FELADATELLATASIHELYID - int
|
||||
,@intezmenyId AS C_INTEZMENYID
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userId AS CREATOR -- CREATOR - int
|
||||
,'T' AS C_IMPORTALT -- C_IMPORTALT char(1)
|
||||
FROM @tbl o
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_OSZTALYCSOPORT_OSSZES WHERE C_NEV = o.csoportNev AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
AND o.csoportNev IS NOT NULL AND o.csoportNev <> ''
|
||||
|
||||
UPDATE o
|
||||
SET o.csoportID = t.ID
|
||||
FROM @tbl o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES t ON t.C_NEV = o.csoportNev AND C_TANEVID = @tanevId AND TOROLT = 'F'
|
||||
|
||||
INSERT INTO T_CSOPORT_OSSZES (
|
||||
ID
|
||||
,C_TIPUSA
|
||||
,C_CSOPORTNAPLOLEIRAS
|
||||
,C_CSOPORTNAPLOMEGNYITASA
|
||||
,C_CSOPORTNAPLOZARASA
|
||||
,C_CSOPORTVEZETOID
|
||||
,C_OSZTALYBONTASID
|
||||
,C_ALINTEZMENYID
|
||||
,C_ALTANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT DISTINCT
|
||||
o.csoportID AS ID -- ID - int
|
||||
,1031 AS C_TIPUSA /*Na*/ -- C_TIPUSA - int
|
||||
,NULL AS C_CSOPORTNAPLOLEIRAS -- C_CSOPORTNAPLOLEIRAS - nvarchar(MAX)
|
||||
,NULL AS C_CSOPORTNAPLOMEGNYITASA -- C_CSOPORTNAPLOMEGNYITASA - datetime
|
||||
,NULL AS C_CSOPORTNAPLOZARASA -- C_CSOPORTNAPLOZARASA - datetime
|
||||
,NULL AS C_CSOPORTVEZETOID -- C_CSOPORTVEZETOID - int
|
||||
,IIF(o.osztalyNev IS NULL, NULL, o.osztalyId) AS C_OSZTALYBONTASID -- C_OSZTALYBONTASID - int
|
||||
,@intezmenyId
|
||||
,@tanevId
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userId AS CREATOR -- CREATOR - int
|
||||
FROM @tbl o
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_CSOPORT_OSSZES WHERE ID = o.csoportID AND C_ALTANEVID = @tanevId AND TOROLT = 'F')
|
||||
AND o.csoportID IS NOT NULL
|
||||
|
||||
DECLARE @linkTable TABLE (
|
||||
id int,
|
||||
osztalyCsoportId int,
|
||||
tantargyID int,
|
||||
tanarID int
|
||||
);
|
||||
|
||||
MERGE T_FOGLALKOZAS_OSSZES trg
|
||||
USING (SELECT ISNULL(o.csoportID, o.osztalyID) osztalyCsoportId, o.tantargyID, o.tanarID, SUM(o.oraszam) oraszam,
|
||||
MAX(o.tantargyNev) + ' - ' + MAX(ISNULL(o.csoportNev, o.osztalyNev)) + ' - ' + MAX(o.tanarNev) as foglalkozasNev
|
||||
FROM @tbl o
|
||||
WHERE NOT EXISTS (
|
||||
SELECT 1 FROM T_FOGLALKOZAS_OSSZES f
|
||||
INNER JOIN T_FOGLALKOZASOK_TANAROK ft ON f.ID = ft.C_FOGLALKOZASOKID
|
||||
WHERE f.C_TANTARGYID = o.tantargyID
|
||||
AND f.C_OSZTALYCSOPORTID = o.csoportID
|
||||
AND ft.C_TANAROKID = o.tanarID
|
||||
AND f.C_TANEVID = @tanevId
|
||||
)
|
||||
GROUP BY ISNULL(o.csoportID, o.osztalyID), o.tantargyID, o.tanarID
|
||||
) src ON 1 = 0
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
C_FOGLALKOZASTIPUSA
|
||||
,C_ORASZAM
|
||||
,C_NEV
|
||||
,C_ERTEKELESKELL
|
||||
,C_MULASZTASKELL
|
||||
,C_TANARFELVEHETI
|
||||
,C_TANTARGYID
|
||||
,C_OSZTALYCSOPORTID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
,C_IMPORTALT
|
||||
) VALUES(
|
||||
--IIF (src.osztalyCsoportId IS NOT NULL, 1368 /*Tanóra (osztálybontásos)*/, 1339/*Tanóra*/) /*Na*/ -- C_FOGLALKOZASTIPUSA - int
|
||||
IIF (EXISTS(select 1 from T_CSOPORT cs where cs.ID = src.osztalyCsoportId), 1368 /*Tanóra (osztálybontásos)*/, 1339/*Tanóra*/) /*Na*/ -- C_FOGLALKOZASTIPUSA - int
|
||||
,src.oraszam -- C_ORASZAM - int
|
||||
,src.foglalkozasNev -- C_NEV - nvarchar(255)
|
||||
,'T' -- C_ERTEKELESKELL - char(1)
|
||||
,'T' -- C_MULASZTASKELL - char(1)
|
||||
,'T' -- C_TANARFELVEHETI - char(1)
|
||||
,src.tantargyID -- C_TANTARGYID - int
|
||||
,src.osztalyCsoportId -- C_OSZTALYCSOPORTID - int
|
||||
,@intezmenyId
|
||||
,@tanevId -- C_TANEVID - int
|
||||
,NULL -- MODIFIER - int
|
||||
,@userId -- CREATOR - int
|
||||
,'T' -- C_IMPORTALT char(1)
|
||||
)
|
||||
OUTPUT INSERTED.ID, src.osztalyCsoportId, src.tantargyID, src.tanarID
|
||||
INTO @linkTable(id, osztalyCsoportId, tantargyID, tanarID);
|
||||
|
||||
/*csoport - osztaly*/
|
||||
UPDATE o
|
||||
SET o.foglalkozasID = f.id
|
||||
FROM @tbl o
|
||||
INNER JOIN @linkTable f ON f.osztalyCsoportId = ISNULL(o.csoportID, o.osztalyID) AND f.tantargyID = o.tantargyID AND f.tanarID = o.tanarID
|
||||
WHERE o.foglalkozasID IS NULL
|
||||
|
||||
/*osztaly*/
|
||||
UPDATE o
|
||||
SET o.foglalkozasID = f.id
|
||||
FROM @tbl o
|
||||
INNER JOIN @linkTable f ON f.osztalyCsoportId = o.osztalyID AND f.tantargyID = o.tantargyID AND f.tanarID = o.tanarID
|
||||
WHERE o.foglalkozasID IS NULL
|
||||
|
||||
/*csoport - osztaly*/
|
||||
UPDATE o
|
||||
SET o.foglalkozasID = f.id
|
||||
FROM @tbl o
|
||||
INNER JOIN T_FOGLALKOZAS_OSSZES f ON f.C_TANTARGYID = o.tantargyID AND f.C_OSZTALYCSOPORTID = ISNULL(o.csoportID, o.osztalyID)
|
||||
WHERE o.foglalkozasID IS NULL
|
||||
AND NOT EXISTS (SELECT 1 FROM T_FOGLALKOZASOK_TANAROK ft WHERE ft.C_FOGLALKOZASOKID = o.foglalkozasID)
|
||||
AND f.C_TANEVID = @tanevId
|
||||
|
||||
/*osztaly*/
|
||||
UPDATE o
|
||||
SET o.foglalkozasID = f.id
|
||||
FROM @tbl o
|
||||
INNER JOIN T_FOGLALKOZAS_OSSZES f ON f.C_TANTARGYID = o.tantargyID AND f.C_OSZTALYCSOPORTID = o.osztalyID
|
||||
WHERE o.foglalkozasID IS NULL
|
||||
AND NOT EXISTS (SELECT 1 FROM T_FOGLALKOZASOK_TANAROK ft WHERE ft.C_FOGLALKOZASOKID = o.foglalkozasID)
|
||||
AND f.C_TANEVID = @tanevId
|
||||
|
||||
INSERT INTO T_FOGLALKOZASOK_TANAROK (
|
||||
C_FOGLALKOZASOKID
|
||||
,C_TANAROKID
|
||||
) SELECT DISTINCT
|
||||
o.foglalkozasID AS C_FOGLALKOZASOKID -- C_FOGLALKOZASOKID - int
|
||||
,o.tanarID AS C_TANAROKID -- C_TANAROKID - int
|
||||
FROM @tbl o
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_FOGLALKOZASOK_TANAROK WHERE C_FOGLALKOZASOKID = o.foglalkozasID AND C_TANAROKID = o.tanarID)
|
||||
|
||||
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0
|
||||
ROLLBACK TRAN;
|
||||
THROW
|
||||
END CATCH
|
||||
|
||||
END
|
||||
|
|
@ -0,0 +1,88 @@
|
|||
IF OBJECT_ID('sp_ImportTantargyak', 'P') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_ImportTantargyak
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_ImportTantargyak
|
||||
@xml xml,
|
||||
@userID int,
|
||||
@intezmenyID int,
|
||||
@tanevID int
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
BEGIN TRY
|
||||
SET NOCOUNT ON
|
||||
SET XACT_ABORT ON
|
||||
|
||||
DECLARE @tbl TABLE (
|
||||
C_NEV nvarchar(255),
|
||||
C_TARGYKATEGORIA int,
|
||||
C_ROVIDNEV nvarchar(20),
|
||||
C_ALTANTARGYKENTNYOMTATVANYBAN char(1),
|
||||
C_FOTARGYID int,
|
||||
C_GYAKORLATI char(1)
|
||||
)
|
||||
|
||||
INSERT INTO @tbl
|
||||
SELECT
|
||||
sor.value('(nev)[1]', 'nvarchar(255)') AS C_NEV,
|
||||
sor.value('(kategoria)[1]', 'int') AS C_TARGYKATEGORIA,
|
||||
sor.value('(rovidnev)[1]', 'nvarchar(20)') AS C_ROVIDNEV,
|
||||
sor.value('(bizonyitvanyban)[1]', 'char(1)') AS C_ALTANTARGYKENTNYOMTATVANYBAN,
|
||||
sor.value('(fotargy)[1]', 'int') AS C_FOTARGYID,
|
||||
sor.value('(gyakorlati)[1]', 'char(1)') AS C_GYAKORLATI
|
||||
FROM @xml.nodes('/TantargyImport/TantargyLista/Tantargy') AS sorok(sor)
|
||||
|
||||
BEGIN TRANSACTION
|
||||
UPDATE t
|
||||
SET t.C_GYAKORLATI = x.C_GYAKORLATI -- char(1)
|
||||
,t.C_ROVIDNEV = x.C_ROVIDNEV -- nvarchar(20)
|
||||
,t.C_TARGYKATEGORIA = x.C_TARGYKATEGORIA -- int
|
||||
,t.C_ALTANTARGYKENTNYOMTATVANYBAN = x.C_ALTANTARGYKENTNYOMTATVANYBAN -- char(1)
|
||||
,t.C_FOTARGYID = x.C_FOTARGYID -- int
|
||||
,t.SERIAL = t.SERIAL + 1 -- int
|
||||
,t.LASTCHANGED = GETDATE() -- datetime
|
||||
,t.MODIFIER = @userID -- int
|
||||
FROM T_TANTARGY t
|
||||
INNER JOIN @tbl x ON x.C_NEV = t.C_NEV AND t.TOROLT = 'T'
|
||||
|
||||
INSERT INTO T_TANTARGY (
|
||||
C_GYAKORLATI
|
||||
,C_NEV
|
||||
,C_ROVIDNEV
|
||||
,C_TARGYKATEGORIA
|
||||
,C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
,C_NEVNYOMTATVANYBAN
|
||||
,C_TANORANKIVULI
|
||||
,C_IMPORTALT
|
||||
,C_FOTARGYID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
C_GYAKORLATI AS C_GYAKORLATI -- C_GYAKORLATI - char(1)
|
||||
,C_NEV AS C_NEV -- C_NEV - nvarchar(255)
|
||||
,C_ROVIDNEV AS C_ROVIDNEV -- C_ROVIDNEV - nvarchar(20)
|
||||
,C_TARGYKATEGORIA AS C_TARGYKATEGORIA -- C_TARGYKATEGORIA - int
|
||||
,C_ALTANTARGYKENTNYOMTATVANYBAN AS C_ALTANTARGYKENTNYOMTATVANYBAN -- C_ALTANTARGYKENTNYOMTATVANYBAN - char(1)
|
||||
,C_NEV AS C_NEVNYOMTATVANYBAN -- C_NEVNYOMTATVANYBAN - nvarchar(255)
|
||||
,'F' AS C_TANORANKIVULI -- C_TANORANKIVULI - char(1)
|
||||
,'T' AS C_IMPORTALT -- C_IMPORTALT - char(1)
|
||||
,C_FOTARGYID AS C_FOTARGYID -- C_FOTARGYID - int
|
||||
,@intezmenyID AS C_INTEZMENYID
|
||||
,@tanevID AS C_TANEVID
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userID AS CREATOR -- CREATOR - int
|
||||
FROM @tbl x
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_TANTARGY WHERE C_NEV = x.C_NEV AND TOROLT = 'F')
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,82 @@
|
|||
IF OBJECT_ID('sp_ImportTantervek', 'P') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_ImportTantervek
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_ImportTantervek
|
||||
@xml xml,
|
||||
@userID int,
|
||||
@intezmenyID int,
|
||||
@tanevID int
|
||||
AS
|
||||
BEGIN
|
||||
BEGIN TRY
|
||||
SET NOCOUNT ON
|
||||
SET XACT_ABORT ON
|
||||
|
||||
DECLARE @tbl TABLE (
|
||||
C_NEV nvarchar(255),
|
||||
C_CSOPORTTIPUSA int,
|
||||
C_EVFOLYAMTOL int,
|
||||
C_EVFOLYAMIG int,
|
||||
C_KERETTANTERVREEPULO char(1),
|
||||
C_MEGJEGYZES nvarchar(255)
|
||||
)
|
||||
|
||||
INSERT INTO @tbl
|
||||
SELECT
|
||||
sor.value('(nev)[1]', 'nvarchar(255)') AS C_NEV,
|
||||
sor.value('(csoport-tipusa)[1]', 'int') AS C_CSOPORTTIPUSA,
|
||||
sor.value('(kezdo-evfolyam)[1]', 'int') AS C_EVFOLYAMTOL,
|
||||
sor.value('(vegzo-evfolyam)[1]', 'int') AS C_EVFOLYAMIG,
|
||||
sor.value('(kerettanterv)[1]', 'char(1)') AS C_KERETTANTERVREEPULO,
|
||||
sor.value('(megjegyzes)[1]', 'nvarchar(255)') AS C_MEGJEGYZES
|
||||
FROM @xml.nodes('/TantervImport/TantervLista/Tanterv') AS sorok(sor)
|
||||
|
||||
BEGIN TRANSACTION
|
||||
UPDATE t
|
||||
SET t.C_CSOPORTTIPUSA = x.C_CSOPORTTIPUSA -- int
|
||||
,t.C_EVFOLYAMIG = x.C_EVFOLYAMIG -- int
|
||||
,t.C_EVFOLYAMTOL = x.C_EVFOLYAMTOL -- int
|
||||
,t.C_KERETTANTERVREEPULO = x.C_KERETTANTERVREEPULO -- char(1)
|
||||
,t.C_MEGJEGYZES = x.C_MEGJEGYZES -- nvarchar(255)
|
||||
,t.SERIAL = t.SERIAL + 1 -- int
|
||||
,t.LASTCHANGED = GETDATE() -- datetime
|
||||
,t.MODIFIER = @userID -- int
|
||||
FROM T_TANTERV t
|
||||
INNER JOIN @tbl x ON x.C_NEV = t.C_NEV
|
||||
|
||||
INSERT INTO T_TANTERV (
|
||||
C_CSOPORTTIPUSA
|
||||
,C_EVFOLYAMIG
|
||||
,C_EVFOLYAMTOL
|
||||
,C_KERETTANTERVREEPULO
|
||||
,C_MEGJEGYZES
|
||||
,C_NEV
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
C_CSOPORTTIPUSA AS C_CSOPORTTIPUSA -- C_CSOPORTTIPUSA - int
|
||||
,C_EVFOLYAMIG AS C_EVFOLYAMIG -- C_EVFOLYAMIG - int
|
||||
,C_EVFOLYAMTOL AS C_EVFOLYAMTOL -- C_EVFOLYAMTOL - int
|
||||
,C_KERETTANTERVREEPULO AS C_KERETTANTERVREEPULO -- C_KERETTANTERVREEPULO - char(1)
|
||||
,C_MEGJEGYZES AS C_MEGJEGYZES -- C_MEGJEGYZES - nvarchar(255)
|
||||
,C_NEV AS C_NEV -- C_NEV - nvarchar(255)
|
||||
,@intezmenyID AS C_INTEZMENYID
|
||||
,@tanevID AS C_TANEVID
|
||||
,NULL AS MODIFIER -- MODIFIER - int
|
||||
,@userID AS CREATOR -- CREATOR - int
|
||||
FROM @tbl x
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_TANTERV WHERE C_NEV = x.C_NEV)
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
END
|
||||
GO
|
||||
|
|
@ -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
|
||||
|
||||
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
|
||||
|
||||
|
|
@ -0,0 +1,97 @@
|
|||
IF OBJECT_ID('sp_ImportTermek', 'P') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE sp_ImportTermek
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE sp_ImportTermek
|
||||
@xml xml,
|
||||
@userID int,
|
||||
@intezmenyID int,
|
||||
@tanevID int,
|
||||
@mukodesiHelyId int
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
BEGIN TRY
|
||||
SET NOCOUNT ON
|
||||
SET XACT_ABORT ON
|
||||
|
||||
DECLARE @tbl TABLE (
|
||||
C_JELLEG int,
|
||||
C_KAPACITAS int,
|
||||
C_NEV nvarchar(50),
|
||||
C_TERULET int,
|
||||
C_TOBBORATLEHETTARTANI char(1),
|
||||
C_VIZSGAKAPACITAS int,
|
||||
C_MUKODESIHELYID int,
|
||||
C_TEREMFELELOSID int
|
||||
)
|
||||
|
||||
INSERT INTO @tbl
|
||||
SELECT
|
||||
sor.value('number((JellegId)[1])', 'int') AS C_JELLEG,
|
||||
sor.value('xs:decimal((Kapacitas)[1])', 'int') AS C_KAPACITAS,
|
||||
sor.value('(TeremNev)[1]', 'nvarchar(50)') AS C_NEV,
|
||||
sor.value('number((Terulet)[1])', 'int') AS C_TERULET,
|
||||
sor.value('(tobbora)[1]', 'char(1)') AS C_TOBBORATLEHETTARTANI,
|
||||
sor.value('number((vizsgakapacitas)[1])', 'int') AS C_VIZSGAKAPACITAS,
|
||||
@mukodesiHelyId AS C_MUKODESIHELYID,
|
||||
sor.value('number((teremfelelos)[1])', 'int') AS C_TEREMFELELOSID
|
||||
FROM @xml.nodes('/TeremImport/TeremLista/Terem') as sorok(sor)
|
||||
|
||||
BEGIN TRANSACTION
|
||||
UPDATE t
|
||||
SET
|
||||
t.C_JELLEG = IsNull(s.C_JELLEG, t.C_JELLEG)
|
||||
,t.C_KAPACITAS = IsNull(s.C_KAPACITAS, t.C_KAPACITAS)
|
||||
,t.C_NEV = IsNull(s.C_NEV, t.C_NEV)
|
||||
,t.C_TERULET = IsNull(s.C_TERULET, t.C_TERULET)
|
||||
,t.C_TOBBORATLEHETTARTANI = IsNull(s.C_TOBBORATLEHETTARTANI, t.C_TOBBORATLEHETTARTANI)
|
||||
,t.C_VIZSGAKAPACITAS = IsNull(s.C_VIZSGAKAPACITAS, t.C_VIZSGAKAPACITAS)
|
||||
,t.C_MUKODESIHELYID = IsNull(s.C_MUKODESIHELYID, t.C_MUKODESIHELYID)
|
||||
,t.C_TEREMFELELOSID = IsNull(s.C_TEREMFELELOSID, t.C_TEREMFELELOSID)
|
||||
,t.SERIAL = t.SERIAL + 1
|
||||
,t.LASTCHANGED = GETDATE()
|
||||
,t.MODIFIER = @userID
|
||||
FROM T_TEREM t
|
||||
INNER JOIN @tbl s ON s.C_NEV = t.C_NEV AND s.C_MUKODESIHELYID = t.C_MUKODESIHELYID AND t.C_INTEZMENYID = t.C_INTEZMENYID
|
||||
|
||||
INSERT INTO T_TEREM (
|
||||
C_AKTIV
|
||||
,C_JELLEG
|
||||
,C_KAPACITAS
|
||||
,C_NEV
|
||||
,C_TERULET
|
||||
,C_TOBBORATLEHETTARTANI
|
||||
,C_VIZSGAKAPACITAS
|
||||
,C_MUKODESIHELYID
|
||||
,C_TEREMFELELOSID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) SELECT
|
||||
'T' AS C_ACTIVE
|
||||
,C_JELLEG AS C_JELLEG
|
||||
,C_KAPACITAS AS C_KAPACITAS
|
||||
,C_NEV AS C_NEV
|
||||
,C_TERULET AS C_TERULET
|
||||
,C_TOBBORATLEHETTARTANI AS C_TOBBORATLEHETTARTANI
|
||||
,C_VIZSGAKAPACITAS AS C_VIZSGAKAPACITAS
|
||||
,C_MUKODESIHELYID AS C_MUKODESIHELYID
|
||||
,C_TEREMFELELOSID AS C_TEREMFELELOSID
|
||||
,@intezmenyID AS C_INTEZMENYID
|
||||
,@tanevID AS C_TANEVID
|
||||
,NULL AS MODIFIER
|
||||
,@userID AS CREATOR
|
||||
FROM @tbl t
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_TEREM WHERE C_NEV = t.C_NEV AND C_MUKODESIHELYID = t.C_MUKODESIHELYID)
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
END
|
||||
|
|
@ -0,0 +1,496 @@
|
|||
IF OBJECT_ID('[dbo].[sp_KIRImportTanarok]', 'P') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_KIRImportTanarok]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_KIRImportTanarok]
|
||||
-- Add the parameters for the stored procedure here
|
||||
@TanarokXML xml
|
||||
,@FeladatellatasiHelyId int
|
||||
,@intezmenyID int
|
||||
,@tanevID int
|
||||
,@userId int
|
||||
AS
|
||||
BEGIN
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
SET XACT_ABORT ON;
|
||||
|
||||
-- XML paraméter értelmezése
|
||||
DECLARE @Tanarok TABLE (
|
||||
Id int
|
||||
,OktatasiAzonosito varchar(15)
|
||||
,KretaKod varchar(6)
|
||||
,VezetekNev nvarchar(50)
|
||||
,UtoNev nvarchar(50)
|
||||
,Elotag nvarchar(10)
|
||||
,NevSorrend char(1)
|
||||
,AnyjaNeveElotag nvarchar(10)
|
||||
,AnyjaNeveVezetekNev nvarchar(50)
|
||||
,AnyjaNeveKeresztNev nvarchar(50)
|
||||
,AnyjaNeveNevSorrend nvarchar(50)
|
||||
,SzuletesiDatum datetime
|
||||
,SzuletesiHely nvarchar(255)
|
||||
,SzuletesiOrszag int
|
||||
,Allampolgarsag int
|
||||
,Nem int
|
||||
,EmailCim nvarchar(255)
|
||||
,Telefonszam nvarchar(100)
|
||||
,AllandoLakcimIranyitoSzam nvarchar(10)
|
||||
,AllandoLakcimTelepules nvarchar(255)
|
||||
,AllandoLakcimKozteruletNev nvarchar(255)
|
||||
,AllandoLakcimKozteruletJelleg int
|
||||
,AllandoLakcimHazszam nvarchar(20)
|
||||
,TartozkodasiCimTelepules nvarchar(255)
|
||||
,TartozkodasiCimKozteruletNev nvarchar(255)
|
||||
,TartozkodasiCimKozteruletJelleg int
|
||||
,TartozkodasiCimHazszam nvarchar(20)
|
||||
,TartozkodasiCimIranyitoszam nvarchar(20)
|
||||
,KeresesiNev nvarchar(255)
|
||||
,NyomtatasiNev nvarchar(255)
|
||||
,OMAzonosito nvarchar(15)
|
||||
,Foallas char(1)
|
||||
,KotelezoOraszam nvarchar(15)
|
||||
,MunkakorTipusa nvarchar(15)
|
||||
,MunkaviszonyTipusa nvarchar(15)
|
||||
,JogviszonyKezdete datetime
|
||||
,FelhasznaloId int -- Ide kerül be a tényleges ID, amit a DB-ben is van/lesz
|
||||
,isUjTanar bit -- létezik-e már a rendszereben
|
||||
)
|
||||
|
||||
INSERT INTO @Tanarok (
|
||||
Id
|
||||
,OktatasiAzonosito
|
||||
,KretaKod
|
||||
,VezetekNev
|
||||
,UtoNev
|
||||
,Elotag
|
||||
,NevSorrend
|
||||
,AnyjaNeveElotag
|
||||
,AnyjaNeveVezetekNev
|
||||
,AnyjaNeveKeresztNev
|
||||
,AnyjaNeveNevSorrend
|
||||
,SzuletesiDatum
|
||||
,SzuletesiHely
|
||||
,SzuletesiOrszag
|
||||
,Allampolgarsag
|
||||
,Nem
|
||||
,EmailCim
|
||||
,Telefonszam
|
||||
,AllandoLakcimIranyitoSzam
|
||||
,AllandoLakcimTelepules
|
||||
,AllandoLakcimKozteruletNev
|
||||
,AllandoLakcimKozteruletJelleg
|
||||
,AllandoLakcimHazszam
|
||||
,TartozkodasiCimTelepules
|
||||
,TartozkodasiCimKozteruletNev
|
||||
,TartozkodasiCimKozteruletJelleg
|
||||
,TartozkodasiCimHazszam
|
||||
,TartozkodasiCimIranyitoszam
|
||||
,KeresesiNev
|
||||
,NyomtatasiNev
|
||||
,OMAzonosito
|
||||
,Foallas
|
||||
,KotelezoOraszam
|
||||
,MunkakorTipusa
|
||||
,MunkaviszonyTipusa
|
||||
,JogviszonyKezdete
|
||||
,isUjTanar
|
||||
) SELECT
|
||||
Id = Tanar.value('(ID)[1]', 'int'),
|
||||
OktatasiAzonosito = Tanar.value('(OktatasiAzonosito)[1]', 'varchar(15)'),
|
||||
KretaKod = Tanar.value('(KretaKod)[1]', 'varchar(6)'),
|
||||
VezetekNev = Tanar.value('(ViseltNevVezetekNev)[1]', 'nvarchar(50)'),
|
||||
UtoNev = Tanar.value('(ViseltNevKeresztNev)[1]', 'nvarchar(50)'),
|
||||
Elotag = Tanar.value('(ViseltNevElotag)[1]', 'nvarchar(10)'),
|
||||
NevSorrend = Tanar.value('(ViseltNevNevSorrend)[1]', 'char(1)'),
|
||||
AnyjaNeveElotag = Tanar.value('(AnyjaNeveElotag)[1]', 'nvarchar(10)'),
|
||||
AnyjaNeveVezetekNev = Tanar.value('(AnyjaNeveVezetekNev)[1]', 'nvarchar(50)'),
|
||||
AnyjaNeveKeresztNev = Tanar.value('(AnyjaNeveKeresztNev)[1]', 'nvarchar(50)'),
|
||||
AnyjaNeveNevSorrend = Tanar.value('(AnyjaNeveNevSorrend)[1]', 'nvarchar(50)'),
|
||||
SzuletesiDatum = Tanar.value('(SzuletesiDatum)[1]', 'date'),
|
||||
SzuletesiHely = Tanar.value('(SzuletesiHely)[1]', 'nvarchar(255)'),
|
||||
SzuletesiOrszag = Tanar.value('(SzuletesiOrszag)[1]', 'int'),
|
||||
Allampolgarsag = Tanar.value('(Allampolgarsag)[1]', 'int'),
|
||||
Nem = Tanar.value('(Nem)[1]', 'int'),
|
||||
EmailCim = Tanar.value('(EmailCim)[1]', 'nvarchar(255)'),
|
||||
Telefonszam = Tanar.value('(Telefonszam)[1]', 'nvarchar(100)'),
|
||||
AllandoLakcimIranyitoSzam = Tanar.value('(AllandoLakcimIranyitoSzam)[1]', 'nvarchar(10)'),
|
||||
AllandoLakcimTelepules = Tanar.value('(AllandoLakcimTelepules)[1]', 'nvarchar(255)'),
|
||||
AllandoLakcimKozteruletNev = Tanar.value('(AllandoLakcimKozteruletNev)[1]', 'nvarchar(255)'),
|
||||
AllandoLakcimKozteruletJelleg = Tanar.value('number((AllandoLakcimKozteruletJelleg)[1])', 'int'),
|
||||
AllandoLakcimHazszam = Tanar.value('(AllandoLakcimHazszam)[1]', 'nvarchar(20)'),
|
||||
TartozkodasiCimTelepules = Tanar.value('(TartozkodasiCimTelepules)[1]', 'nvarchar(255)'),
|
||||
TartozkodasiCimKozteruletNev = Tanar.value('(TartozkodasiCimKozteruletNev)[1]', 'nvarchar(255)'),
|
||||
TartozkodasiCimKozteruletJelleg = Tanar.value('number((TartozkodasiCimKozteruletJelleg)[1])', 'int'),
|
||||
TartozkodasiCimHazszam = Tanar.value('(TartozkodasiCimHazszam)[1]', 'nvarchar(20)'),
|
||||
TartozkodasiCimIranyitoszam = Tanar.value('(TartozkodasiCimIranyitoSzam)[1]', 'nvarchar(20)'),
|
||||
KeresesiNev = Tanar.value('(KeresesiNev)[1]', 'nvarchar(255)'),
|
||||
NyomtatasiNev = ltrim(Tanar.value('(NyomtatasiNev)[1]', 'nvarchar(255)')),
|
||||
OMAzonosito = Tanar.value('(OMAzonosito)[1]', 'nvarchar(15)'),
|
||||
Foallas = Tanar.value('(Foallas)[1]', 'char(1)'),
|
||||
KotelezoOraszam = Tanar.value('(KotelezoOraszam)[1]', 'nvarchar(15)'),
|
||||
MunkakorTipusa = Tanar.value('(MunkakorTipusa)[1]', 'nvarchar(15)'),
|
||||
MunkaviszonyTipusa = Tanar.value('(MunkaviszonyTipusa)[1]', 'nvarchar(15)'),
|
||||
JogviszonyKezdete = Tanar.value('(JogviszonyKezdete)[1]', 'date'),
|
||||
1 AS isUjTanar
|
||||
FROM @TanarokXML.nodes('/KIRTanarok/ImportaltTanarok/Tanar') as Tanarok(Tanar)
|
||||
|
||||
|
||||
|
||||
DECLARE @LinkTable TABLE (felHasznaloId int, kretaKod varchar(6), action nvarchar(20))
|
||||
|
||||
BEGIN TRY
|
||||
BEGIN TRANSACTION
|
||||
|
||||
MERGE T_FELHASZNALO_OSSZES fh
|
||||
USING (
|
||||
SELECT * FROM @Tanarok
|
||||
) t ON t.KretaKod = fh.C_KRETAKOD AND fh.C_INTEZMENYID = @intezmenyid AND fh.C_TANEVID = @tanevID
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
fh.C_NEME = t.Nem,
|
||||
fh.C_SZULETESIDATUM = t.SzuletesiDatum,
|
||||
fh.C_SZULETESINEV = t.VezetekNev + ' ' + t.UtoNev,
|
||||
fh.C_ANYJANEVE = t.AnyjaNeveVezetekNev + ' ' + t.AnyjaNeveKeresztNev,
|
||||
fh.C_SZULETESIHELY = t.SzuletesiHely,
|
||||
fh.C_ALLAMPOLGARSAGA = t.Allampolgarsag,
|
||||
fh.C_KERESESINEV = t.KeresesiNev,
|
||||
fh.C_SZULETESIORSZAG = t.SzuletesiOrszag,
|
||||
fh.C_SZULETESINEVSORREND = t.NevSorrend,
|
||||
fh.C_ANYJANEVESORREND = t.AnyjaNeveNevSorrend,
|
||||
fh.C_ALAPERTELMEZETTLCID = 1038,
|
||||
fh.C_SZULETESINEVELVALASZTO = LEN(t.VezetekNev),
|
||||
fh.C_ANYJANEVEELVALASZTO = LEN(t.AnyjaNeveVezetekNev),
|
||||
fh.C_NYOMTATASINEV = t.NyomtatasiNev,
|
||||
fh.C_UTONEV = t.UtoNev,
|
||||
fh.C_VEZETEKNEV = t.VezetekNev,
|
||||
fh.C_ELOTAG = t.Elotag,
|
||||
fh.C_NEVSORREND = t.NevSorrend,
|
||||
fh.C_NYILVANTARTASKEZDETE = GETDATE(),
|
||||
fh.C_OMKOD = t.OMAzonosito,
|
||||
fh.C_KRETAKOD = t.KretaKod,
|
||||
fh.C_OKTATASIAZONOSITO = t.OktatasiAzonosito,
|
||||
fh.TOROLT = 'F',
|
||||
fh.SERIAL += 1,
|
||||
fh.LASTCHANGED = GETDATE(),
|
||||
fh.MODIFIER = @userId
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
[C_NEME],
|
||||
[C_SZULETESIDATUM],
|
||||
[C_SZULETESINEV],
|
||||
[C_ANYJANEVE],
|
||||
[C_SZULETESIHELY],
|
||||
[C_ALLAMPOLGARSAGA],
|
||||
[C_KERESESINEV],
|
||||
[C_SZULETESIORSZAG],
|
||||
[C_SZULETESINEVSORREND],
|
||||
[C_ANYJANEVESORREND],
|
||||
[C_ALAPERTELMEZETTLCID],
|
||||
[C_SZULETESINEVELVALASZTO],
|
||||
[C_ANYJANEVEELVALASZTO],
|
||||
[C_NYOMTATASINEV],
|
||||
[C_UTONEV],
|
||||
[C_VEZETEKNEV],
|
||||
[C_ELOTAG],
|
||||
[C_NEVSORREND],
|
||||
[C_NYILVANTARTASKEZDETE],
|
||||
[C_OKTATASIAZONOSITO],
|
||||
[C_OMKOD],
|
||||
[C_KRETAKOD],
|
||||
[C_INTEZMENYID],
|
||||
[C_TANEVID],
|
||||
[MODIFIER],
|
||||
[CREATOR]
|
||||
) VALUES (
|
||||
t.Nem,
|
||||
t.SzuletesiDatum,
|
||||
t.VezetekNev + ' ' + t.UtoNev,
|
||||
t.AnyjaNeveVezetekNev + ' ' + t.AnyjaNeveKeresztNev,
|
||||
t.SzuletesiHely,
|
||||
t.Allampolgarsag,
|
||||
t.KeresesiNev,
|
||||
t.SzuletesiOrszag,
|
||||
t.NevSorrend,
|
||||
t.AnyjaNeveNevSorrend,
|
||||
1038,
|
||||
LEN(t.VezetekNev),
|
||||
LEN(t.AnyjaNeveVezetekNev),
|
||||
t.NyomtatasiNev,
|
||||
t.UtoNev,
|
||||
t.VezetekNev,
|
||||
t.Elotag,
|
||||
t.NevSorrend,
|
||||
GETDATE(),
|
||||
t.OktatasiAzonosito,
|
||||
t.OMAzonosito,
|
||||
t.KretaKod,
|
||||
@intezmenyID,
|
||||
@tanevID,
|
||||
NULL,
|
||||
@userId
|
||||
)
|
||||
OUTPUT INSERTED.ID, t.KretaKod, $action
|
||||
INTO @LinkTable(felhasznaloId, kretaKod, action);
|
||||
|
||||
UPDATE t
|
||||
SET t.FelhasznaloId = x.felhasznaloId
|
||||
,t.isUjTanar = 0
|
||||
FROM @Tanarok t
|
||||
INNER JOIN @LinkTable x ON x.KretaKod = t.KretaKod
|
||||
|
||||
MERGE T_ALKALMAZOTT_OSSZES a
|
||||
USING (
|
||||
SELECT * FROM @Tanarok
|
||||
) t ON a.ID = t.FelhasznaloId AND a.C_ALINTEZMENYID = @intezmenyid AND a.C_ALTANEVID = @tanevID
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
a.C_FOALLAS = t.Foallas,
|
||||
a.TOROLT = 'F',
|
||||
a.SERIAL += 1,
|
||||
a.LASTCHANGED = GETDATE(),
|
||||
a.MODIFIER = @userId
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
[ID],
|
||||
[C_FOALLAS],
|
||||
[C_ALINTEZMENYID],
|
||||
[C_ALTANEVID],
|
||||
[MODIFIER],
|
||||
[CREATOR]
|
||||
) VALUES (
|
||||
t.FelhasznaloId,
|
||||
t.Foallas,
|
||||
@intezmenyID,
|
||||
@tanevID,
|
||||
NULL,
|
||||
@userId
|
||||
);
|
||||
|
||||
MERGE T_MUNKAUGYIADATOK_OSSZES m
|
||||
USING (
|
||||
SELECT * FROM @Tanarok
|
||||
) t ON m.C_ALKALMAZOTTID = t.FelhasznaloId AND m.C_INTEZMENYID = @intezmenyid AND m.C_TANEVID = @tanevID
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
m.C_ALKALMAZASKEZDETE = t.JogviszonyKezdete,
|
||||
m.C_KOTELEZOORASZAM = t.KotelezoOraszam,
|
||||
m.C_MUNKAKORTIPUSA = t.MunkakorTipusa,
|
||||
m.C_MUNKAVISZONYTIPUSA = t.MunkaviszonyTipusa,
|
||||
m.C_FELADATELLATASIHELYID = @FeladatellatasiHelyId,
|
||||
m.TOROLT = 'F',
|
||||
m.SERIAL += 1,
|
||||
m.LASTCHANGED = GETDATE(),
|
||||
m.MODIFIER = @userId
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
C_ALKALMAZASKEZDETE,
|
||||
C_KOTELEZOORASZAM,
|
||||
C_MUNKAKORTIPUSA,
|
||||
C_MUNKAVISZONYTIPUSA,
|
||||
C_ALKALMAZOTTID,
|
||||
C_FELADATELLATASIHELYID,
|
||||
C_INTEZMENYID,
|
||||
C_TANEVID,
|
||||
MODIFIER,
|
||||
CREATOR
|
||||
) VALUES (
|
||||
t.JogviszonyKezdete,
|
||||
t.KotelezoOraszam,
|
||||
t.MunkakorTipusa,
|
||||
t.MunkaviszonyTipusa,
|
||||
t.FelhasznaloId,
|
||||
@FeladatellatasiHelyId,
|
||||
@intezmenyID,
|
||||
@tanevID,
|
||||
NULL,
|
||||
@userId
|
||||
);
|
||||
|
||||
|
||||
MERGE T_CIM_OSSZES c
|
||||
USING (
|
||||
SELECT * FROM @Tanarok
|
||||
) t ON c.C_FELHASZNALOID = t.FelhasznaloId AND c.C_INTEZMENYID = @intezmenyid AND c.C_TANEVID = @tanevID AND c.C_CIMTIPUSA = 908
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
c.[C_CIMTIPUSA] = 908,
|
||||
c.[C_ORSZAG] = 765,
|
||||
c.[C_IRANYITOSZAM] = t.TartozkodasiCimIranyitoszam,
|
||||
c.[C_VAROS] = t.TartozkodasiCimTelepules,
|
||||
c.[C_KOZTERULET] = t.TartozkodasiCimKozteruletNev,
|
||||
c.[C_KOZTERULETJELLEGE] = t.TartozkodasiCimKozteruletJelleg,
|
||||
c.[C_HAZSZAM] = t.TartozkodasiCimHazszam,
|
||||
c.[TOROLT] = 'F',
|
||||
c.SERIAL += 1,
|
||||
c.LASTCHANGED = GETDATE(),
|
||||
c.MODIFIER = @userId
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
[C_CIMTIPUSA],
|
||||
[C_ORSZAG],
|
||||
[C_IRANYITOSZAM],
|
||||
[C_VAROS],
|
||||
[C_KOZTERULET],
|
||||
[C_KOZTERULETJELLEGE],
|
||||
[C_HAZSZAM],
|
||||
[C_FELHASZNALOID],
|
||||
[C_INTEZMENYID],
|
||||
[C_TANEVID],
|
||||
[MODIFIER],
|
||||
[CREATOR]
|
||||
) VALUES (
|
||||
908,
|
||||
765,
|
||||
t.TartozkodasiCimIranyitoszam,
|
||||
t.TartozkodasiCimTelepules,
|
||||
t.TartozkodasiCimKozteruletNev,
|
||||
t.TartozkodasiCimKozteruletJelleg,
|
||||
t.TartozkodasiCimHazszam,
|
||||
t.FelhasznaloId,
|
||||
@intezmenyID,
|
||||
@tanevID,
|
||||
NULL,
|
||||
@userId
|
||||
);
|
||||
|
||||
MERGE T_CIM_OSSZES c
|
||||
USING (
|
||||
SELECT * FROM @Tanarok
|
||||
) t ON c.C_FELHASZNALOID = t.FelhasznaloId AND c.C_INTEZMENYID = @intezmenyid AND c.C_TANEVID = @tanevID AND c.C_CIMTIPUSA = 907
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
c.[C_CIMTIPUSA] = 907,
|
||||
c.[C_ORSZAG] = 765,
|
||||
c.[C_IRANYITOSZAM] = t.AllandoLakcimIranyitoSzam,
|
||||
c.[C_VAROS] = t.AllandoLakcimTelepules,
|
||||
c.[C_KOZTERULET] = t.AllandoLakcimKozteruletNev,
|
||||
c.[C_KOZTERULETJELLEGE] = t.AllandoLakcimKozteruletJelleg,
|
||||
c.[C_HAZSZAM] = t.AllandoLakcimHazszam,
|
||||
c.[TOROLT] = 'F',
|
||||
c.SERIAL += 1,
|
||||
c.LASTCHANGED = GETDATE(),
|
||||
c.MODIFIER = @userId
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
[C_CIMTIPUSA],
|
||||
[C_ORSZAG],
|
||||
[C_IRANYITOSZAM],
|
||||
[C_VAROS],
|
||||
[C_KOZTERULET],
|
||||
[C_KOZTERULETJELLEGE],
|
||||
[C_HAZSZAM],
|
||||
[C_FELHASZNALOID],
|
||||
[C_INTEZMENYID],
|
||||
[C_TANEVID],
|
||||
[MODIFIER],
|
||||
[CREATOR]
|
||||
) VALUES (
|
||||
907,
|
||||
765,
|
||||
t.AllandoLakcimIranyitoSzam,
|
||||
t.AllandoLakcimTelepules,
|
||||
t.AllandoLakcimKozteruletNev,
|
||||
t.AllandoLakcimKozteruletJelleg,
|
||||
t.AllandoLakcimHazszam,
|
||||
t.FelhasznaloId,
|
||||
@intezmenyID,
|
||||
@tanevID,
|
||||
NULL,
|
||||
@userId
|
||||
);
|
||||
|
||||
MERGE T_EMAIL_OSSZES e
|
||||
USING (
|
||||
SELECT * FROM @Tanarok
|
||||
) t ON e.C_FELHASZNALOID = t.FelhasznaloId AND e.C_INTEZMENYID = @intezmenyid AND e.C_TANEVID = @tanevID
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
e.C_EMAILCIM = t.EmailCim,
|
||||
e.SERIAL += 1,
|
||||
e.LASTCHANGED = GETDATE(),
|
||||
e.MODIFIER = @userId
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
[C_EMAILTIPUSA],
|
||||
[C_EMAILCIM],
|
||||
[C_ALAPERTELMEZETT],
|
||||
[C_GONDVISELOID],
|
||||
[C_FELHASZNALOID],
|
||||
[C_INTEZMENYID],
|
||||
[C_TANEVID],
|
||||
[MODIFIER],
|
||||
[CREATOR]
|
||||
) VALUES (
|
||||
1025,
|
||||
t.EmailCim,
|
||||
'T',
|
||||
null,
|
||||
t.FelhasznaloId,
|
||||
@intezmenyID,
|
||||
@tanevID,
|
||||
NULL,
|
||||
@userId
|
||||
);
|
||||
|
||||
MERGE T_TELEFON_OSSZES tf
|
||||
USING (
|
||||
SELECT * FROM @Tanarok WHERE Telefonszam IS NOT NULL
|
||||
) t ON tf.C_FELHASZNALOID = t.FelhasznaloId AND tf.C_INTEZMENYID = @intezmenyid AND tf.C_TANEVID = @tanevID
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
tf.[C_TELEFONSZAM] = t.Telefonszam,
|
||||
tf.SERIAL += 1,
|
||||
tf.LASTCHANGED = GETDATE(),
|
||||
tf.MODIFIER = @userId
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
[C_TELEFONTIPUSA],
|
||||
[C_TELEFONSZAM],
|
||||
[C_ALAPERTELMEZETT],
|
||||
[C_GONDVISELOID],
|
||||
[C_FELHASZNALOID],
|
||||
[C_INTEZMENYID],
|
||||
[C_TANEVID],
|
||||
[MODIFIER],
|
||||
[CREATOR]
|
||||
) VALUES (
|
||||
1019,
|
||||
t.Telefonszam,
|
||||
'T',
|
||||
null,
|
||||
t.FelhasznaloId,
|
||||
@intezmenyID,
|
||||
@tanevID,
|
||||
NULL,
|
||||
@userId
|
||||
);
|
||||
|
||||
|
||||
DECLARE @szerepkorId int;
|
||||
|
||||
SELECT @szerepkorId = ID
|
||||
FROM T_SZEREPKOR_OSSZES
|
||||
WHERE C_SZEREPKORTIPUS = '1760'
|
||||
AND C_INTEZMENYID = @intezmenyID AND C_TANEVID = @tanevID
|
||||
|
||||
INSERT INTO T_FELHASZNALO_SZEREPKOR (
|
||||
C_FELHASZNALOID
|
||||
,C_SZEREPKORID
|
||||
) SELECT
|
||||
t.FelhasznaloId
|
||||
,@szerepkorId
|
||||
FROM @Tanarok t
|
||||
WHERE NOT EXISTS (SELECT 1 FROM T_FELHASZNALO_SZEREPKOR fsz WHERE fsz.C_FELHASZNALOID = FelhasznaloId AND fsz.C_SZEREPKORID = @szerepkorId)
|
||||
|
||||
COMMIT TRANSACTION
|
||||
-- ROLLBACK TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
END
|
|
@ -0,0 +1,476 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('dbo.sp_KIRImportTanulok') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_KIRImportTanulok]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_KIRImportTanulok]
|
||||
-- Add the parameters for the stored procedure here
|
||||
@TanulokXML as XML,
|
||||
@intezmenyID int,
|
||||
@tanevID int,
|
||||
@userId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@TantervID int,
|
||||
@userNameGenerateMode int
|
||||
|
||||
DECLARE @linkTable TABLE (
|
||||
tempId int,
|
||||
insertedId int,
|
||||
act varchar(10)
|
||||
)
|
||||
|
||||
-- XML paraméter értelmezése
|
||||
SELECT ID = Tanulo.value('(ID)[1]', 'int'),
|
||||
OktatasiAzonosito = Tanulo.value('(OktatasiAzonosito)[1]', 'varchar(15)'),
|
||||
KretaKod = Tanulo.value('(KretaKod)[1]', 'varchar(6)'),
|
||||
VezetekNev = Tanulo.value('(ViseltNevVezetekNev)[1]', 'nvarchar(50)'), UtoNev = Tanulo.value('(ViseltNevKeresztNev)[1]', 'nvarchar(50)'),
|
||||
Elotag = Tanulo.value('(ViseltNevElotag)[1]', 'nvarchar(10)'), NevSorrend = Tanulo.value('(ViseltNevNevSorrend)[1]', 'char(1)'),
|
||||
AnyjaNeveElotag = Tanulo.value('(AnyjaNeveElotag)[1]', 'nvarchar(10)'), AnyjaNeveVezetekNev = Tanulo.value('(AnyjaNeveVezetekNev)[1]', 'nvarchar(50)'),
|
||||
AnyjaNeveKeresztNev = Tanulo.value('(AnyjaNeveKeresztNev)[1]', 'nvarchar(50)'), AnyjaNeveNevSorrend = Tanulo.value('(AnyjaNeveNevSorrend)[1]', 'nvarchar(50)'),
|
||||
SzuletesiDatum = Tanulo.value('(SzuletesiDatum)[1]', 'date'), SzuletesiHely = Tanulo.value('(SzuletesiHely)[1]', 'nvarchar(255)'),
|
||||
SzuletesiOrszag = Tanulo.value('(SzuletesiOrszag)[1]', 'int'), Allampolgarsag = Tanulo.value('(Allampolgarsag)[1]', 'int'),
|
||||
Nem = Tanulo.value('(Nem)[1]', 'int'), TAJSzam = Tanulo.value('(TAJSzam)[1]', 'nvarchar(15)'),
|
||||
AllandoLakcimIranyitoSzam = Tanulo.value('(AllandoLakcimIranyitoSzam)[1]', 'nvarchar(10)'), AllandoLakcimTelepules = Tanulo.value('(AllandoLakcimTelepules)[1]', 'nvarchar(255)'),
|
||||
AllandoLakcimKozteruletNev = Tanulo.value('(AllandoLakcimKozteruletNev)[1]', 'nvarchar(255)'), AllandoLakcimKozteruletJelleg = Tanulo.value('number((AllandoLakcimKozteruletJelleg)[1])', 'int'),
|
||||
AllandoLakcimHazszam = Tanulo.value('(AllandoLakcimHazszam)[1]', 'nvarchar(20)'), TartozkodasiCimTelepules = Tanulo.value('(TartozkodasiCimTelepules)[1]', 'nvarchar(255)'),
|
||||
TartozkodasiCimKozteruletNev = Tanulo.value('(TartozkodasiCimKozteruletNev)[1]', 'nvarchar(255)'), TartozkodasiCimKozteruletJelleg = Tanulo.value('number((TartozkodasiCimKozteruletJelleg)[1])', 'int'),
|
||||
TartozkodasiCimHazszam = Tanulo.value('(TartozkodasiCimHazszam)[1]', 'nvarchar(20)'), TartozkodasiCimIranyitoszam = Tanulo.value('(TartozkodasiCimIranyitoSzam)[1]', 'nvarchar(20)'),
|
||||
TankotelezettsegVege = Tanulo.value('(TankotelezettsegVege)[1]', 'date'),
|
||||
TankotelezettsegetTeljesito = Tanulo.value('(TankotelezettsegetTeljesito)[1]', 'char'), SajatosNevelesIgenyu = Tanulo.value('(SajatosNevelesIgenyu)[1]', 'char'),
|
||||
BeilleszkedesselKuzd = Tanulo.value('(BeilleszkedesselKuzd)[1]', 'char'), OMAzonosito = Tanulo.value('(OMAzonosito)[1]', 'nvarchar(20)'),
|
||||
JogviszonyStatusza = Tanulo.value('(JogviszonyStatusza)[1]', 'nvarchar(50)'), JogviszonyKezdete = Tanulo.value('(JogviszonyKezdete)[1]', 'date'),
|
||||
JogviszonyVarBefejezese = Tanulo.value('(JogviszonyVarBefejezese)[1]', 'date'), JogviszonyJellege = Tanulo.value('(JogviszonyJellege)[1]', 'nvarchar(50)'),
|
||||
Vendegtanulo = Tanulo.value('(Vendegtanulo)[1]', 'char'), Magantanulo = Tanulo.value('(Magantanulo)[1]', 'char'),
|
||||
Osztaly = Tanulo.value('(Osztaly)[1]', 'nvarchar(255)'),
|
||||
KeresesiNev = Tanulo.value('(KeresesiNev)[1]', 'nvarchar(255)'), NyomtatasiNev = ltrim(Tanulo.value('(NyomtatasiNev)[1]', 'nvarchar(255)')),
|
||||
Telefonszam = Tanulo.value('(Telefonszam)[1]', 'nvarchar(45)'),
|
||||
AnyjaNeve = Tanulo.value('(AnyjaNeve)[1]', 'nvarchar(255)'),
|
||||
EmailCim = Tanulo.value('(Email)[1]', 'nvarchar(200)'),
|
||||
0 AS isTanulo,
|
||||
0 TanuloID
|
||||
INTO #tempTanulok
|
||||
FROM @TanulokXML.nodes('/KIRTanulok/ImportaltTanulok/Tanulo') as Tanulok(Tanulo)
|
||||
|
||||
-- A létező felhasználók ID-ját kitöltjük, és az isTanulot is update-eljük
|
||||
UPDATE t
|
||||
SET t.TanuloID = fh.ID,
|
||||
t.isTanulo = IIF(tn.ID IS NULL, 0, 1)
|
||||
FROM #tempTanulok t
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON
|
||||
t.NyomtatasiNev = fh.C_NYOMTATASINEV AND
|
||||
t.SzuletesiDatum = fh.C_SZULETESIDATUM AND
|
||||
t.SzuletesiHely = fh.C_SZULETESIHELY AND
|
||||
t.AnyjaNeve = fh.C_ANYJANEVE
|
||||
LEFT JOIN T_TANULO_OSSZES tn ON tn.ID = fh.ID
|
||||
WHERE fh.TOROLT = 'F' AND fh.C_TANEVID = @tanevID AND fh.C_INTEZMENYID = @intezmenyID
|
||||
|
||||
BEGIN TRY
|
||||
BEGIN TRANSACTION
|
||||
|
||||
-- FELHASZNÁLÓK INSERTJE VAGY UPDATE-JE AKA MERGE
|
||||
MERGE T_FELHASZNALO_OSSZES trg
|
||||
USING #tempTanulok src ON src.TanuloID = trg.ID AND trg.C_TANEVID = @tanevID
|
||||
WHEN MATCHED AND src.isTanulo = 1 THEN
|
||||
UPDATE SET
|
||||
trg.C_NEME = src.Nem,
|
||||
trg.C_SZULETESIDATUM = src.SzuletesiDatum,
|
||||
trg.C_SZULETESINEV = src.VezetekNev + ' ' + src.UtoNev,
|
||||
trg.C_ANYJANEVE = src.AnyjaNeveVezetekNev + ' ' + src.AnyjaNeveKeresztNev,
|
||||
trg.C_SZULETESIHELY = src.SzuletesiHely,
|
||||
trg.C_ALLAMPOLGARSAGA = src.Allampolgarsag,
|
||||
trg.C_KERESESINEV = src.KeresesiNev,
|
||||
trg.C_SZULETESIORSZAG = src.SzuletesiOrszag,
|
||||
trg.C_SZULETESINEVSORREND = src.NevSorrend,
|
||||
trg.C_ANYJANEVESORREND = src.AnyjaNeveNevSorrend,
|
||||
trg.C_ALAPERTELMEZETTLCID = 1038,
|
||||
trg.C_SZULETESINEVELVALASZTO = len(src.VezetekNev),
|
||||
trg.C_ANYJANEVEELVALASZTO = len(src.AnyjaNeveVezetekNev),
|
||||
trg.C_NYOMTATASINEV = src.NyomtatasiNev,
|
||||
trg.C_UTONEV = src.UtoNev,
|
||||
trg.C_VEZETEKNEV = src.VezetekNev,
|
||||
trg.C_ELOTAG = src.Elotag,
|
||||
trg.C_NEVSORREND = src.NevSorrend,
|
||||
trg.C_NYILVANTARTASKEZDETE = getdate(),
|
||||
trg.C_OMKOD = src.OMAzonosito,
|
||||
trg.C_KRETAKOD = src.KretaKod,
|
||||
trg.TOROLT = 'F',
|
||||
trg.SERIAL = trg.SERIAL + 1,
|
||||
trg.LASTCHANGED = GETDATE(),
|
||||
trg.MODIFIER = @userId,
|
||||
trg.C_OKTATASIAZONOSITO = src.OktatasiAzonosito
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
C_NEME
|
||||
,C_SZULETESIDATUM
|
||||
,C_SZULETESINEV
|
||||
,C_ANYJANEVE
|
||||
,C_SZULETESIHELY
|
||||
,C_TAJSZAM
|
||||
,C_ALLAMPOLGARSAGA
|
||||
,C_LEIRAS
|
||||
,C_KERESESINEV
|
||||
,C_SZULETESIORSZAG
|
||||
,C_SZULETESINEVSORREND
|
||||
,C_ANYJANEVESORREND
|
||||
,C_ALAPERTELMEZETTLCID
|
||||
,C_SZULETESINEVELVALASZTO
|
||||
,C_ANYJANEVEELVALASZTO
|
||||
,C_NYOMTATASINEV
|
||||
,C_UTONEV
|
||||
,C_VEZETEKNEV
|
||||
,C_ELOTAG
|
||||
,C_NEVSORREND
|
||||
,C_NYILVANTARTASKEZDETE
|
||||
,C_OKTATASIAZONOSITO
|
||||
,C_OMKOD
|
||||
,C_KRETAKOD
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,SERIAL
|
||||
,MODIFIER
|
||||
,CREATOR)
|
||||
VALUES (
|
||||
src.Nem
|
||||
,src.SzuletesiDatum
|
||||
,src.VezetekNev + ' ' + src.UtoNev
|
||||
,src.AnyjaNeveVezetekNev + ' ' + src.AnyjaNeveKeresztNev
|
||||
,src.SzuletesiHely
|
||||
,src.TAJSzam
|
||||
,src.Allampolgarsag
|
||||
,src.JogviszonyJellege
|
||||
,src.KeresesiNev
|
||||
,src.SzuletesiOrszag
|
||||
,src.NevSorrend
|
||||
,src.AnyjaNeveNevSorrend
|
||||
,1038
|
||||
,len(src.VezetekNev)
|
||||
,len(src.AnyjaNeveVezetekNev)
|
||||
,src.NyomtatasiNev
|
||||
,src.UtoNev
|
||||
,src.VezetekNev
|
||||
,src.Elotag
|
||||
,src.NevSorrend
|
||||
,src.JogviszonyKezdete
|
||||
,src.OktatasiAzonosito
|
||||
,src.OMAzonosito
|
||||
,src.KretaKod
|
||||
,@intezmenyID
|
||||
,@tanevID
|
||||
,NULL
|
||||
,@userId
|
||||
)
|
||||
OUTPUT INSERTED.ID, src.ID, $action
|
||||
INTO @linkTable(insertedID, tempId, act);
|
||||
|
||||
SET @TantervID = (SELECT MAX(ID) FROM T_TANTERV_OSSZES WHERE C_TANEVID = @tanevID AND TOROLT = 'F')
|
||||
MERGE T_TANULO_OSSZES trg
|
||||
USING (
|
||||
SELECT t.*, l.insertedId AS insertedID
|
||||
FROM #tempTanulok t
|
||||
INNER JOIN @linkTable l ON t.ID = l.tempID
|
||||
) src ON src.TanuloID = trg.ID AND trg.C_ALTANEVID = @tanevID AND src.isTanulo = 1
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
trg.C_TANKOTELEZETTSEGVEGE = src.TankotelezettsegVege,
|
||||
trg.C_TANKOTELEZETT = src.TankotelezettsegetTeljesito,
|
||||
trg.C_SAJATOSNEVELESU = src.SajatosNevelesIgenyu,
|
||||
trg.C_BTMPROBLEMAS = src.BeilleszkedesselKuzd,
|
||||
trg.C_JOGVISZONYVARHATOBEFEJEZESE = src.JogviszonyVarBefejezese,
|
||||
trg.C_VENDEG = src.Vendegtanulo,
|
||||
trg.C_MAGANTANULO = src.Magantanulo,
|
||||
trg.C_JOGVISZONYATSZUNETELTETO = src.JogviszonyStatusza,
|
||||
trg.C_FELVETELTANEVEID = @tanevID,
|
||||
trg.C_TANTERVID = @TantervId,
|
||||
trg.TOROLT = 'F',
|
||||
trg.SERIAL = trg.SERIAL + 1,
|
||||
trg.LASTCHANGED = GETDATE(),
|
||||
trg.MODIFIER = @userId
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
ID
|
||||
,C_TANKOTELEZETTSEGVEGE
|
||||
,C_TANKOTELEZETT
|
||||
,C_SAJATOSNEVELESU
|
||||
,C_BTMPROBLEMAS
|
||||
,C_JOGVISZONYVARHATOBEFEJEZESE
|
||||
,C_VENDEG
|
||||
,C_MAGANTANULO
|
||||
,C_JOGVISZONYATSZUNETELTETO
|
||||
,C_FELVETELTANEVEID
|
||||
,C_TANTERVID
|
||||
,C_ALINTEZMENYID
|
||||
,C_ALTANEVID
|
||||
,SERIAL
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) VALUES (
|
||||
src.insertedID
|
||||
,src.TankotelezettsegVege
|
||||
,src.TankotelezettsegetTeljesito
|
||||
,src.SajatosNevelesIgenyu
|
||||
,src.BeilleszkedesselKuzd
|
||||
,src.JogviszonyVarBefejezese
|
||||
,src.Vendegtanulo
|
||||
,src.Magantanulo
|
||||
,src.JogviszonyStatusza
|
||||
,@tanevID
|
||||
,@TantervId
|
||||
,@intezmenyID
|
||||
,@tanevID
|
||||
,NULL
|
||||
,@userId
|
||||
);
|
||||
|
||||
--TODO: GENERATE SALT
|
||||
-------FELHASZNALO BELEPES--------
|
||||
|
||||
/*SET @userNameGenerateMode = dbo.fnGetRendszerbeallitasEnumBool(2885, @intezmenyID, @tanevID)
|
||||
IF @userNameGenerateMode <> 3 BEGIN
|
||||
INSERT INTO [T_FELHASZNALOBELEPES_OSSZES] (
|
||||
[C_JELSZO],
|
||||
[C_BEJELENTKEZESINEV],
|
||||
[C_FELHASZNALOID],
|
||||
[C_INTEZMENYID],
|
||||
[C_TANEVID],
|
||||
[MODIFIER],
|
||||
[CREATOR],
|
||||
[C_GUID]
|
||||
)
|
||||
SELECT
|
||||
CONVERT(nvarchar(8), fh.C_SZULETESIDATUM,112),
|
||||
CASE @userNameGenerateMode
|
||||
WHEN 1 THEN fh.C_OKTATASIAZONOSITO
|
||||
WHEN 2 THEN fh.C_KRETAKOD
|
||||
ELSE NULL
|
||||
END,
|
||||
fh.ID,
|
||||
@intezmenyID,
|
||||
@tanevID,
|
||||
NULL,
|
||||
@userId,
|
||||
(select NEWID())
|
||||
FROM #tempTanulok t
|
||||
INNER JOIN @linkTable l ON t.ID = l.tempID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = l.insertedId
|
||||
WHERE C_TANEVID = @tanevID AND
|
||||
NOT EXISTS (SELECT 1 FROM T_FELHASZNALOBELEPES_OSSZES belepes
|
||||
WHERE belepes.C_FELHASZNALOID = fh.ID AND
|
||||
belepes.C_GONDVISELOID IS NULL)
|
||||
END*/
|
||||
|
||||
--------FELHASZNALO SZEREPKÖR-----------
|
||||
DELETE FROM T_FELHASZNALO_SZEREPKOR
|
||||
WHERE T_FELHASZNALO_SZEREPKOR.[C_FELHASZNALOID] IN (SELECT TanuloID FROM #tempTanulok WHERE TanuloID > 0)
|
||||
|
||||
INSERT INTO T_FELHASZNALO_SZEREPKOR (C_FELHASZNALOID, C_SZEREPKORID)
|
||||
SELECT l.insertedId, (SELECT ID FROM T_SZEREPKOR_OSSZES WHERE C_SZEREPKORTIPUS = '1761' AND C_TANEVID = @tanevID)
|
||||
FROM #tempTanulok t
|
||||
INNER JOIN @linkTable l ON t.ID = l.tempID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = l.insertedId
|
||||
WHERE C_TANEVID = @tanevID
|
||||
|
||||
|
||||
----- Telefonszám -----
|
||||
MERGE T_TELEFON_OSSZES trg
|
||||
USING (
|
||||
SELECT t.*, l.insertedId AS insertedID
|
||||
FROM #tempTanulok t
|
||||
INNER JOIN @linkTable l ON t.ID = l.tempID --AND C_ALAPERTELMEZETT = 'T'
|
||||
WHERE t.Telefonszam IS NOT NULL AND t.Telefonszam <> ''
|
||||
) src ON src.TanuloID = trg.C_FELHASZNALOID AND trg.C_TANEVID = @tanevID AND src.isTanulo = 1 AND trg.C_ALAPERTELMEZETT = 'T'
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
trg.C_TELEFONSZAM = src.Telefonszam,
|
||||
trg.TOROLT = 'F',
|
||||
trg.SERIAL = trg.SERIAL + 1,
|
||||
trg.LASTCHANGED = GETDATE(),
|
||||
trg.MODIFIER = @userId
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
C_TELEFONTIPUSA
|
||||
,C_TELEFONSZAM
|
||||
,C_LEIRAS
|
||||
,C_ALAPERTELMEZETT
|
||||
,C_GONDVISELOID
|
||||
,C_FELHASZNALOID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) VALUES (
|
||||
1019 -- C_TELEFONTIPUSA - int
|
||||
,src.Telefonszam -- C_TELEFONSZAM - nvarchar(100)
|
||||
,N'' -- C_LEIRAS - nvarchar(50)
|
||||
,'T' -- C_ALAPERTELMEZETT - char(1)
|
||||
,NULL -- C_GONDVISELOID - int
|
||||
,src.insertedID -- C_FELHASZNALOID - int
|
||||
,@intezmenyID -- C_INTEZMENYID - int
|
||||
,@tanevID -- C_TANEVID - int
|
||||
,NULL -- MODIFIER - int
|
||||
,@userId -- CREATOR - int
|
||||
);
|
||||
|
||||
----- TARTÓZKODÁSI HELY -----
|
||||
MERGE T_CIM_OSSZES trg
|
||||
USING (
|
||||
SELECT t.*, l.insertedId AS insertedID
|
||||
FROM #tempTanulok t
|
||||
INNER JOIN @linkTable l ON t.ID = l.tempID
|
||||
WHERE t.TartozkodasiCimIranyitoszam IS NOT NULL AND t.TartozkodasiCimIranyitoszam <> ''
|
||||
) src ON src.TanuloID = trg.C_FELHASZNALOID AND trg.C_TANEVID = @tanevID AND src.isTanulo = 1 AND trg.C_CIMTIPUSA = 908
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
trg.C_CIMTIPUSA = 908,
|
||||
trg.C_ORSZAG = 765,
|
||||
trg.C_IRANYITOSZAM = src.TartozkodasiCimIranyitoszam,
|
||||
trg.C_VAROS = src.TartozkodasiCimTelepules,
|
||||
trg.C_KOZTERULET = src.TartozkodasiCimKozteruletNev,
|
||||
trg.C_KOZTERULETJELLEGE = src.TartozkodasiCimKozteruletJelleg,
|
||||
trg.C_HAZSZAM = src.TartozkodasiCimHazszam,
|
||||
trg.C_FELHASZNALOID = src.insertedId,
|
||||
trg.TOROLT = 'F',
|
||||
trg.SERIAL = trg.SERIAL + 1,
|
||||
trg.LASTCHANGED = GETDATE(),
|
||||
trg.MODIFIER = @userId
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
C_CIMTIPUSA
|
||||
,C_ORSZAG
|
||||
,C_IRANYITOSZAM
|
||||
,C_VAROS
|
||||
,C_KOZTERULET
|
||||
,C_KOZTERULETJELLEGE
|
||||
,C_HAZSZAM
|
||||
,C_FELHASZNALOID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) VALUES (
|
||||
908
|
||||
,765
|
||||
,src.TartozkodasiCimIranyitoszam
|
||||
,src.TartozkodasiCimTelepules
|
||||
,src.TartozkodasiCimKozteruletNev
|
||||
,src.TartozkodasiCimKozteruletJelleg
|
||||
,src.TartozkodasiCimHazszam
|
||||
,src.insertedID
|
||||
,@intezmenyID
|
||||
,@tanevID
|
||||
,NULL
|
||||
,@userId
|
||||
);
|
||||
|
||||
----- TARTÓZKODÁSI HELY -----
|
||||
MERGE T_CIM_OSSZES trg
|
||||
USING (
|
||||
SELECT t.*, l.insertedId AS insertedID
|
||||
FROM #tempTanulok t
|
||||
INNER JOIN @linkTable l ON t.ID = l.tempID
|
||||
) src ON src.TanuloID = trg.C_FELHASZNALOID AND trg.C_TANEVID = @tanevID AND src.isTanulo = 1 AND trg.C_CIMTIPUSA = 907
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
trg.C_CIMTIPUSA = 907,
|
||||
trg.C_ORSZAG = 765,
|
||||
trg.C_IRANYITOSZAM = src.AllandoLakcimIranyitoSzam,
|
||||
trg.C_VAROS = src.AllandoLakcimTelepules,
|
||||
trg.C_KOZTERULET = src.AllandoLakcimKozteruletNev,
|
||||
trg.C_KOZTERULETJELLEGE = src.AllandoLakcimKozteruletJelleg,
|
||||
trg.C_HAZSZAM = src.AllandoLakcimHazszam,
|
||||
trg.C_FELHASZNALOID = src.insertedId,
|
||||
trg.TOROLT = 'F',
|
||||
trg.SERIAL = trg.SERIAL + 1,
|
||||
trg.LASTCHANGED = GETDATE(),
|
||||
trg.MODIFIER = @userId
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
C_CIMTIPUSA
|
||||
,C_ORSZAG
|
||||
,C_IRANYITOSZAM
|
||||
,C_VAROS
|
||||
,C_KOZTERULET
|
||||
,C_KOZTERULETJELLEGE
|
||||
,C_HAZSZAM
|
||||
,C_FELHASZNALOID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) VALUES (
|
||||
907
|
||||
,765
|
||||
,src.AllandoLakcimIranyitoSzam
|
||||
,src.AllandoLakcimTelepules
|
||||
,src.AllandoLakcimKozteruletNev
|
||||
,src.AllandoLakcimKozteruletJelleg
|
||||
,src.AllandoLakcimHazszam
|
||||
,src.insertedID
|
||||
,@intezmenyID
|
||||
,@tanevID
|
||||
,NULL
|
||||
,@userId
|
||||
);
|
||||
|
||||
----- E-mail cím -----
|
||||
MERGE T_EMAIL_OSSZES
|
||||
USING (
|
||||
SELECT #tempTanulok.*, linkTable.insertedId AS insertedID
|
||||
FROM #tempTanulok
|
||||
INNER JOIN
|
||||
@linkTable linkTable ON #tempTanulok.ID = linkTable.tempID --AND C_ALAPERTELMEZETT = 'T'
|
||||
WHERE #tempTanulok.EmailCim IS NOT NULL AND #tempTanulok.EmailCim <> ''
|
||||
)
|
||||
src ON
|
||||
T_EMAIL_OSSZES.C_FELHASZNALOID = src.TanuloID AND
|
||||
T_EMAIL_OSSZES.C_TANEVID = @tanevID AND
|
||||
src.isTanulo = 1 AND
|
||||
T_EMAIL_OSSZES.C_ALAPERTELMEZETT = 'T'
|
||||
WHEN
|
||||
MATCHED THEN
|
||||
UPDATE SET
|
||||
T_EMAIL_OSSZES.C_EMAILCIM = src.EmailCim,
|
||||
T_EMAIL_OSSZES.TOROLT = 'F',
|
||||
T_EMAIL_OSSZES.SERIAL = T_EMAIL_OSSZES.SERIAL + 1,
|
||||
T_EMAIL_OSSZES.LASTCHANGED = GETDATE(),
|
||||
T_EMAIL_OSSZES.MODIFIER = @userId
|
||||
WHEN
|
||||
NOT MATCHED THEN
|
||||
INSERT (
|
||||
C_EMAILTIPUSA
|
||||
,C_EMAILCIM
|
||||
,C_ALAPERTELMEZETT
|
||||
,C_GONDVISELOID
|
||||
,C_FELHASZNALOID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
) VALUES (
|
||||
1024 -- C_EMAILTIPUSA - int NA
|
||||
,src.EmailCim -- C_EMAILCIM - nvarchar(100)
|
||||
,'T' -- C_ALAPERTELMEZETT - char(1)
|
||||
,NULL -- C_GONDVISELOID - int
|
||||
,src.insertedID -- C_FELHASZNALOID - int
|
||||
,@intezmenyID -- C_INTEZMENYID - int
|
||||
,@tanevID -- C_TANEVID - int
|
||||
,NULL -- MODIFIER - int
|
||||
,@userId -- CREATOR - int
|
||||
);
|
||||
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
END
|
|
@ -0,0 +1,219 @@
|
|||
-- =============================================
|
||||
-- Description: A nebuló lista importálása XML-ből
|
||||
-- =============================================
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_NebuloImport]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_NebuloImport]
|
||||
END
|
||||
GO
|
||||
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_NebuloImport]
|
||||
-- Add the parameters for the stored procedure here
|
||||
@pNebuloListXml XML
|
||||
,@pIntezmenyId INT
|
||||
,@pTanevId INT
|
||||
,@pUserId INT
|
||||
,@pNebuloImportTipusId INT
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
-- XML paraméter értelmezése
|
||||
SELECT
|
||||
-- MERGE-höz adatok
|
||||
NebuloID = 0
|
||||
,IsExistingNebulo = 0
|
||||
|
||||
--Egyszerű import adatok
|
||||
,Vezeteknev = Nebulo.value('(Vezeteknev)[1]', 'NVARCHAR(255)')
|
||||
,Keresztnev = Nebulo.value('(Keresztnev)[1]', 'NVARCHAR(255)')
|
||||
,AnyjaVezetekneve = Nebulo.value('(AnyjaVezetekneve)[1]', 'NVARCHAR(255)')
|
||||
,AnyjaKeresztneve = Nebulo.value('(AnyjaKeresztneve)[1]', 'NVARCHAR(255)')
|
||||
,SzuletesiVezeteknev = Nebulo.value('(SzuletesiVezeteknev)[1]', 'NVARCHAR(255)')
|
||||
,SzuletesiKeresztnev = Nebulo.value('(SzuletesiKeresztnev)[1]', 'NVARCHAR(255)')
|
||||
,SzuletesiOrszag = Nebulo.value('number((SzuletesiOrszag)[1])', 'INT')
|
||||
,SzuletesiHely = Nebulo.value('(SzuletesiHely)[1]', 'NVARCHAR(50)')
|
||||
,SzuletesiIdo = Nebulo.value('(SzuletesiIdoString)[1]', 'DATETIME')
|
||||
,TKCimeAzonos = Nebulo.value('(TKCimeAzonosString)[1]', 'CHAR(1)')
|
||||
,THCimeAzonos = Nebulo.value('(THCimeAzonosString)[1]', 'CHAR(1)')
|
||||
,Anyanyelv = Nebulo.value('number((Anyanyelv)[1])', 'INT')
|
||||
,Allampolgarsag = Nebulo.value('number((Allampolgarsag)[1])', 'INT')
|
||||
,EletvitelszeruOttLakasKorzetes = Nebulo.value('(EletvitelszeruOttLakasKorzetesString)[1]', 'CHAR(1)')
|
||||
,FeladatellatasiHelyId = Nebulo.value('number((FeladatellatasiHelyId)[1])', 'INT')
|
||||
,Tagozat = Nebulo.value('number((Tagozat)[1])', 'INT')
|
||||
,FelvetelStatusza = Nebulo.value('number((FelvetelStatusza)[1])', 'INT')
|
||||
,BTMLetszamSuly = Nebulo.value('number((BTMLetszamSuly)[1])', 'NUMERIC(10,2)')
|
||||
,SNILetszamSuly = Nebulo.value('number((SNILetszamSuly)[1])', 'NUMERIC(10,2)')
|
||||
|
||||
--Egyszerű import lakcímmel adatok
|
||||
,Iranyitoszam = Nebulo.value('(Iranyitoszam)[1]', 'NVARCHAR(20)')
|
||||
,Helyseg = Nebulo.value('(Helyseg)[1]', 'NVARCHAR(255)')
|
||||
,Kozterulet = Nebulo.value('(Kozterulet)[1]', 'NVARCHAR(40)')
|
||||
,KozteruletJelleg = Nebulo.value('number((KozteruletJelleg)[1])', 'INT')
|
||||
,Szam = Nebulo.value('(Szam)[1]', 'NVARCHAR(30)')
|
||||
,Emelet = Nebulo.value('(Emelet)[1]', 'NVARCHAR(40)')
|
||||
,Ajto = Nebulo.value('(Ajto)[1]', 'NVARCHAR(30)')
|
||||
INTO
|
||||
#tempNebuloList
|
||||
FROM
|
||||
@pNebuloListXml.nodes('NebuloImport/NebuloList/Nebulo') AS NebuloList(Nebulo)
|
||||
|
||||
-- A létező nebulók ID-ját kitöltjük, és az IsExistingNebulo-t is UPDATE-eljük 4T alapján
|
||||
UPDATE
|
||||
tempNebulo
|
||||
SET
|
||||
tempNebulo.NebuloID = nebulo.ID
|
||||
,tempNebulo.IsExistingNebulo = IIF(nebulo.ID IS NULL, 0, 1)
|
||||
FROM
|
||||
#tempNebuloList tempNebulo
|
||||
INNER JOIN
|
||||
T_NEBULO_OSSZES nebulo ON
|
||||
nebulo.C_TANULOCSALADINEVE = tempNebulo.Vezeteknev AND
|
||||
nebulo.C_TANULOUTONEVE = tempNebulo.Keresztnev AND
|
||||
nebulo.C_EDESANYJASZULETESICSALADINEV = tempNebulo.AnyjaVezetekneve AND
|
||||
nebulo.C_EDESANYJASZULETESIUTONEVE = tempNebulo.AnyjaKeresztneve AND
|
||||
nebulo.C_SZULETESIORSZAG = tempNebulo.SzuletesiOrszag AND
|
||||
nebulo.C_SZULETESIHELY = tempNebulo.SzuletesiHely AND
|
||||
nebulo.C_SZULETESIIDO = tempNebulo.SzuletesiIdo
|
||||
|
||||
BEGIN TRY
|
||||
BEGIN TRANSACTION
|
||||
|
||||
DECLARE @currentDateTime DATETIME
|
||||
SET @currentDateTime = (SELECT GETDATE())
|
||||
|
||||
DECLARE @isUpdateLakcim BIT
|
||||
SET @isUpdateLakcim = CASE WHEN @pNebuloImportTipusId = 1 THEN 1 ELSE 0 END
|
||||
|
||||
-- Nebulók INSERT-je vagy UPDATE-je aka MERGE
|
||||
MERGE T_NEBULO_OSSZES nebulo
|
||||
USING #tempNebuloList tempNebulo ON
|
||||
tempNebulo.NebuloID = nebulo.ID AND nebulo.C_TANEVID = @pTanevId
|
||||
WHEN MATCHED AND tempNebulo.IsExistingNebulo = 1 THEN
|
||||
UPDATE SET
|
||||
--Egyszerű import adatok
|
||||
nebulo.C_TANULOCSALADINEVE = tempNebulo.Vezeteknev
|
||||
,nebulo.C_TANULOUTONEVE = tempNebulo.Keresztnev
|
||||
,nebulo.C_EDESANYJASZULETESICSALADINEV = tempNebulo.AnyjaVezetekneve
|
||||
,nebulo.C_EDESANYJASZULETESIUTONEVE = tempNebulo.AnyjaKeresztneve
|
||||
,nebulo.C_SZULETESICSALADINEVE = tempNebulo.SzuletesiVezeteknev
|
||||
,nebulo.C_SZULETESIUTONEVE = tempNebulo.SzuletesiKeresztnev
|
||||
,nebulo.C_SZULETESIORSZAG = tempNebulo.SzuletesiOrszag
|
||||
,nebulo.C_SZULETESIHELY = tempNebulo.SzuletesiHely
|
||||
,nebulo.C_SZULETESIIDO = tempNebulo.SzuletesiIdo
|
||||
--nebulo.C_FELVETELSTATUSZA = tempNebulo.FelvetelStatusza
|
||||
|
||||
--Egyszerű import lakcímmel adatok
|
||||
,nebulo.C_IRANYITOSZAM = CASE WHEN @isUpdateLakcim = 1 THEN tempNebulo.Iranyitoszam ELSE nebulo.C_IRANYITOSZAM END
|
||||
,nebulo.C_HELYSEGNEV = CASE WHEN @isUpdateLakcim = 1 THEN tempNebulo.Helyseg ELSE nebulo.C_HELYSEGNEV END
|
||||
,nebulo.C_KOZTERULETNEV = CASE WHEN @isUpdateLakcim = 1 THEN tempNebulo.Kozterulet ELSE nebulo.C_KOZTERULETNEV END
|
||||
,nebulo.C_KOZTERULETJELLEGE = CASE WHEN @isUpdateLakcim = 1 THEN tempNebulo.KozteruletJelleg ELSE nebulo.C_KOZTERULETJELLEGE END
|
||||
,nebulo.C_HAZSZAM = CASE WHEN @isUpdateLakcim = 1 THEN tempNebulo.Szam ELSE nebulo.C_HAZSZAM END
|
||||
,nebulo.C_EMELET = CASE WHEN @isUpdateLakcim = 1 THEN tempNebulo.Emelet ELSE nebulo.C_EMELET END
|
||||
,nebulo.C_AJTO = CASE WHEN @isUpdateLakcim = 1 THEN tempNebulo.Ajto ELSE nebulo.C_AJTO END
|
||||
|
||||
--Technikai adatok
|
||||
,nebulo.TOROLT = 'F'
|
||||
,nebulo.SERIAL = nebulo.SERIAL + 1
|
||||
,nebulo.LASTCHANGED = @currentDateTime
|
||||
,nebulo.MODIFIER = @pUserId
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
--Egyszerű import adatok
|
||||
C_TANULOCSALADINEVE
|
||||
,C_TANULOUTONEVE
|
||||
,C_EDESANYJASZULETESICSALADINEV
|
||||
,C_EDESANYJASZULETESIUTONEVE
|
||||
,C_SZULETESICSALADINEVE
|
||||
,C_SZULETESIUTONEVE
|
||||
,C_SZULETESIORSZAG
|
||||
,C_SZULETESIHELY
|
||||
,C_SZULETESIIDO
|
||||
,C_KEPVISELOCIMEAZONOS
|
||||
,C_TARTOZKODASIHELYAZONOS
|
||||
,C_ANYANYELVE
|
||||
,C_ALLAMPOLGARSAGA
|
||||
,C_ELETVITELSZERUOTTLAKASKORZET
|
||||
,C_FELADATELLATASIHELYID
|
||||
,C_TAGOZAT
|
||||
,C_FELVETELSTATUSZA
|
||||
,C_BTMLETSZAMSULY
|
||||
,C_SNILETSZAMSULY
|
||||
|
||||
--Egyszerű import lakcímmel adatok
|
||||
,C_IRANYITOSZAM
|
||||
,C_HELYSEGNEV
|
||||
,C_KOZTERULETNEV
|
||||
,C_KOZTERULETJELLEGE
|
||||
,C_HAZSZAM
|
||||
,C_EMELET
|
||||
,C_AJTO
|
||||
|
||||
--Technikai adatok
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,TOROLT
|
||||
,LASTCHANGED
|
||||
,CREATED
|
||||
,MODIFIER
|
||||
,CREATOR)
|
||||
VALUES (
|
||||
--Egyszerű import adatok
|
||||
tempNebulo.Vezeteknev
|
||||
,tempNebulo.Keresztnev
|
||||
,tempNebulo.AnyjaVezetekneve
|
||||
,tempNebulo.AnyjaKeresztneve
|
||||
,tempNebulo.SzuletesiVezeteknev
|
||||
,tempNebulo.SzuletesiKeresztnev
|
||||
,tempNebulo.SzuletesiOrszag
|
||||
,tempNebulo.SzuletesiHely
|
||||
,tempNebulo.SzuletesiIdo
|
||||
,tempNebulo.TKCimeAzonos
|
||||
,tempNebulo.THCimeAzonos
|
||||
,tempNebulo.Anyanyelv
|
||||
,tempNebulo.Allampolgarsag
|
||||
,tempNebulo.EletvitelszeruOttLakasKorzetes
|
||||
,tempNebulo.FeladatellatasiHelyId
|
||||
,tempNebulo.Tagozat
|
||||
,tempNebulo.FelvetelStatusza
|
||||
,tempNebulo.BTMLetszamSuly
|
||||
,tempNebulo.SNILetszamSuly
|
||||
|
||||
--Egyszerű import lakcímmel adatok
|
||||
,tempNebulo.Iranyitoszam
|
||||
,tempNebulo.Helyseg
|
||||
,tempNebulo.Kozterulet
|
||||
,tempNebulo.KozteruletJelleg
|
||||
,tempNebulo.Szam
|
||||
,tempNebulo.Emelet
|
||||
,tempNebulo.Ajto
|
||||
|
||||
--Technikai adatok
|
||||
,@pIntezmenyId
|
||||
,@pTanevId
|
||||
,'F'
|
||||
,@currentDateTime
|
||||
,@currentDateTime
|
||||
,@pUserId
|
||||
,@pUserId);
|
||||
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
|
||||
END
|
||||
GO
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue