IF OBJECT_ID('[dbo].[sp_KIRImportTanarok]', 'P') IS NOT NULL BEGIN DROP PROCEDURE [dbo].[sp_KIRImportTanarok] END GO -- ============================================= -- Author: Sólyom Péter -- Create date: 2015.12.02. -- Description: KIR tanárok importja -- ============================================= CREATE PROCEDURE [dbo].[sp_KIRImportTanarok] -- Add the parameters for the stored procedure here @TanarokXML as 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 OFF; -- XML paraméter értelmezése 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') INTO #tempTanarok FROM @TanarokXML.nodes('/KIRTanarok/ImportaltTanarok/Tanar') as Tanarok(Tanar) -- tanuló felvétele DECLARE @transName varchar(11) = 'TanarTrans' DECLARE @rowCount int = 1 DECLARE @maxCount int = (SELECT MAX(ID) FROM #tempTanarok) -- Létező oktatási azonosítójú tanarok DECLARE @TEMPLETEZO TABLE (Nev nvarchar(255), OktatasiAzonosito nvarchar(12), ID INT, C_KRETAKOD nvarchar(6), FelhasznaloID INT, IsAlkalmazott INT) INSERT INTO @TEMPLETEZO SELECT C_NYOMTATASINEV Nev, C_OKTATASIAZONOSITO OktatasiAzonosito, #tempTanarok.ID , T_FELHASZNALO_OSSZES.C_KRETAKOD, T_FELHASZNALO_OSSZES.ID FelhasznaloID,(Select 1 from T_ALKALMAZOTT_OSSZES WHERE ID = T_FELHASZNALO_OSSZES.ID and c_alintezmenyid = @intezmenyid AND c_altanevid = @tanevID) IsAlkalmazott FROM T_FELHASZNALO_OSSZES JOIN #tempTanarok ON #tempTanarok.KretaKod = T_FELHASZNALO_OSSZES.C_kretakod WHERE c_intezmenyid = @intezmenyid AND c_tanevid = @tanevID UNION SELECT bal.NyomtatasiNev Nev, bal.OktatasiAzonosito OktatasiAzonosito, bal.ID , bal.KretaKod,null,0 FROM #tempTanarok bal JOIN #tempTanarok jobb ON bal.KretaKod = jobb.KretaKod AND bal.ID != jobb.ID select * from @TEMPLETEZO select * from #tempTanarok BEGIN TRANSACTION DECLARE @CREATED DateTime SET @CREATED = (SELECT GETDATE()) BEGIN TRY WHILE @rowCount <= @maxCount BEGIN -- ha van már felvéve azonosító alapján DECLARE @isAlkalmazott int DECLARE @FelhID int = NULL SELECT TOP 1 @FelhID=FelhasznaloID, @isAlkalmazott = IsAlkalmazott FROM @TEMPLETEZO WHERE ID = @rowCount IF @FelhID IS NOT NULL BEGIN print 1 ---- UPDATE FELHASZNALO UPDATE T_FELHASZNALO_OSSZES SET T_FELHASZNALO_OSSZES.C_NEME = t.Nem, T_FELHASZNALO_OSSZES.C_SZULETESIDATUM = t.SzuletesiDatum, T_FELHASZNALO_OSSZES.C_SZULETESINEV = t.VezetekNev + ' ' + t.UtoNev, T_FELHASZNALO_OSSZES.C_ANYJANEVE = t.AnyjaNeveVezetekNev + ' ' + t.AnyjaNeveKeresztNev, T_FELHASZNALO_OSSZES.C_SZULETESIHELY = t.SzuletesiHely, T_FELHASZNALO_OSSZES.C_ALLAMPOLGARSAGA = t.Allampolgarsag, T_FELHASZNALO_OSSZES.C_KERESESINEV = t.KeresesiNev, T_FELHASZNALO_OSSZES.C_SZULETESIORSZAG = t.SzuletesiOrszag, T_FELHASZNALO_OSSZES.C_SZULETESINEVSORREND = t.NevSorrend, T_FELHASZNALO_OSSZES.C_ANYJANEVESORREND = t.AnyjaNeveNevSorrend, T_FELHASZNALO_OSSZES.C_ALAPERTELMEZETTLCID = 1038, T_FELHASZNALO_OSSZES.C_SZULETESINEVELVALASZTO = LEN(t.VezetekNev), T_FELHASZNALO_OSSZES.C_ANYJANEVEELVALASZTO = LEN(t.AnyjaNeveVezetekNev), T_FELHASZNALO_OSSZES.C_NYOMTATASINEV = t.NyomtatasiNev, T_FELHASZNALO_OSSZES.C_UTONEV = t.UtoNev, T_FELHASZNALO_OSSZES.C_VEZETEKNEV = t.VezetekNev, T_FELHASZNALO_OSSZES.C_ELOTAG = t.Elotag, T_FELHASZNALO_OSSZES.C_NEVSORREND = t.NevSorrend, T_FELHASZNALO_OSSZES.C_NYILVANTARTASKEZDETE = @CREATED, T_FELHASZNALO_OSSZES.C_OMKOD = t.OMAzonosito, T_FELHASZNALO_OSSZES.C_KRETAKOD = t.KretaKod, T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO = t.OktatasiAzonosito, T_FELHASZNALO_OSSZES.TOROLT = 'F', T_FELHASZNALO_OSSZES.SERIAL = T_FELHASZNALO_OSSZES.SERIAL + 1, T_FELHASZNALO_OSSZES.LASTCHANGED = GETDATE(), T_FELHASZNALO_OSSZES.MODIFIER = @userId FROM (SELECT * FROM #tempTanarok WHERE ID = @rowCount) t Where T_FELHASZNALO_OSSZES.ID = @FelhID IF @isAlkalmazott = 1 BEGIN ----- UPDATE Alkalmazott UPDATE T_ALKALMAZOTT_OSSZES SET T_ALKALMAZOTT_OSSZES.C_FOALLAS = newData.Foallas, T_ALKALMAZOTT_OSSZES.TOROLT = 'F', T_ALKALMAZOTT_OSSZES.SERIAL = T_ALKALMAZOTT_OSSZES.SERIAL + 1, T_ALKALMAZOTT_OSSZES.LASTCHANGED = GETDATE(), T_ALKALMAZOTT_OSSZES.MODIFIER = @userId FROM (SELECT fel.ID, t.Foallas FROM #tempTanarok t JOIN T_FELHASZNALO_OSSZES fel ON fel.C_KRETAKOD = t.KretaKod and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID WHERE t.ID = @rowCount) AS newData WHERE T_ALKALMAZOTT_OSSZES.ID = @FelhID END ELSE BEGIN ---Create New Tanar INSERT INTO T_ALKALMAZOTT_OSSZES( ID, [C_FOALLAS], [C_ALINTEZMENYID], [C_ALTANEVID], [TOROLT], [SERIAL], [LASTCHANGED], [CREATED], [MODIFIER], [CREATOR]) SELECT fel.ID, t.Foallas, @intezmenyID, @tanevID, 'F', 1, NULL, @CREATED, NULL, @userId FROM #tempTanarok t JOIN T_FELHASZNALO_OSSZES fel ON fel.C_KRETAKOD = t.KretaKod and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID WHERE t.ID = @rowCount END --MunkaUgyi Adatok IF (Select count(0) from T_MUNKAUGYIADATOK_OSSZES where C_ALKALMAZOTTID = @FelhID ) >= 1 BEGIN UPDATE T_MUNKAUGYIADATOK_OSSZES SET T_MUNKAUGYIADATOK_OSSZES.C_ALKALMAZASKEZDETE = MunkaAdatok.JogviszonyKezdete, T_MUNKAUGYIADATOK_OSSZES.C_KOTELEZOORASZAM = MunkaAdatok.KotelezoOraszam, T_MUNKAUGYIADATOK_OSSZES.C_MUNKAKORTIPUSA = MunkaAdatok.MunkakorTipusa, T_MUNKAUGYIADATOK_OSSZES.C_MUNKAVISZONYTIPUSA = MunkaAdatok.MunkaviszonyTipusa, T_MUNKAUGYIADATOK_OSSZES.C_ALKALMAZOTTID = MunkaAdatok.ID, T_MUNKAUGYIADATOK_OSSZES.C_FELADATELLATASIHELYID = @FeladatellatasiHelyId, T_MUNKAUGYIADATOK_OSSZES.TOROLT = 'F', T_MUNKAUGYIADATOK_OSSZES.SERIAL = T_MUNKAUGYIADATOK_OSSZES.SERIAL + 1, T_MUNKAUGYIADATOK_OSSZES.LASTCHANGED = GETDATE(), T_MUNKAUGYIADATOK_OSSZES.MODIFIER = @userId FROM ( SELECT t.KotelezoOraszam, t.MunkakorTipusa, t.MunkaviszonyTipusa, fel.ID,t.JogviszonyKezdete FROM #tempTanarok t JOIN T_FELHASZNALO_OSSZES fel ON fel.C_KRETAKOD = t.KretaKod AND fel.TOROLT = 'F' and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID WHERE t.ID = @rowCount ) AS MunkaAdatok WHERE T_MUNKAUGYIADATOK_OSSZES.C_ALKALMAZOTTID = @FelhID END ELSE BEGIN INSERT INTO T_MUNKAUGYIADATOK_OSSZES ( --ID - this column value is auto-generated C_ALKALMAZASKEZDETE, C_KOTELEZOORASZAM, C_MUNKAKORTIPUSA, C_MUNKAVISZONYTIPUSA, C_FELADATELLATASIHELYID, C_ALKALMAZOTTID, C_INTEZMENYID, C_TANEVID, TOROLT, SERIAL, LASTCHANGED, CREATED, MODIFIER, CREATOR) SELECT t.JogviszonyKezdete, t.KotelezoOraszam, t.MunkakorTipusa, t.MunkaviszonyTipusa, @FeladatellatasiHelyId, fel.ID, @intezmenyID, @tanevID, 'F', 1, NULL, @CREATED, NULL, @userId FROM #tempTanarok t JOIN T_FELHASZNALO_OSSZES fel ON fel.C_KRETAKOD = t.KretaKod and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID WHERE t.ID = @rowCount END ----- Tartozkodasi hely ------ IF (Select count(0) FROM T_CIM_OSSZES WHERE C_FELHASZNALOID = @FelhID and C_CIMTIPUSA = 908 and c_intezmenyid = @intezmenyid AND c_tanevid = @tanevID) >= 1 BEGIN UPDATE T_CIM_OSSZES SET [T_CIM_OSSZES].[C_CIMTIPUSA] = 908, [T_CIM_OSSZES].[C_ORSZAG] = 765, [T_CIM_OSSZES].[C_IRANYITOSZAM] = Tartorzkodas.TartozkodasiCimIranyitoszam, [T_CIM_OSSZES].[C_VAROS] = Tartorzkodas.TartozkodasiCimTelepules, [T_CIM_OSSZES].[C_KOZTERULET] = Tartorzkodas.TartozkodasiCimKozteruletNev, [T_CIM_OSSZES].[C_KOZTERULETJELLEGE] = Tartorzkodas.TartozkodasiCimKozteruletJelleg, [T_CIM_OSSZES].[C_HAZSZAM] = Tartorzkodas.TartozkodasiCimHazszam, [T_CIM_OSSZES].[C_FELHASZNALOID] = Tartorzkodas.ID, [T_CIM_OSSZES].[TOROLT] = 'F', [T_CIM_OSSZES].SERIAL = [T_CIM_OSSZES].SERIAL + 1, [T_CIM_OSSZES].LASTCHANGED = GETDATE(), [T_CIM_OSSZES].MODIFIER = @userId FROM (SELECT t.TartozkodasiCimIranyitoszam, t.TartozkodasiCimTelepules, t.TartozkodasiCimKozteruletNev, t.TartozkodasiCimKozteruletJelleg, t.TartozkodasiCimHazszam, fel.ID FROM T_FELHASZNALO_OSSZES fel JOIN #tempTanarok t on t.KretaKod = fel.C_KRETAKOD WHERE t.ID = @rowCount AND t.TartozkodasiCimIranyitoszam is not null AND t.TartozkodasiCimIranyitoszam != '' and c_intezmenyid = @intezmenyid AND c_tanevid = @tanevID) AS Tartorzkodas WHERE T_CIM_OSSZES.C_FELHASZNALOID = @FelhID and T_CIM_OSSZES.C_CIMTIPUSA = 908 and c_intezmenyid = @intezmenyid AND c_tanevid = @tanevID END ELSE BEGIN INSERT INTO T_CIM_OSSZES ( [C_CIMTIPUSA], [C_ORSZAG], [C_IRANYITOSZAM], [C_VAROS], [C_KOZTERULET], [C_KOZTERULETJELLEGE], [C_HAZSZAM], [C_FELHASZNALOID], [C_INTEZMENYID], [C_TANEVID], [TOROLT], [SERIAL], [LASTCHANGED], [CREATED], [MODIFIER], [CREATOR]) SELECT 908, 765, t.TartozkodasiCimIranyitoszam, t.TartozkodasiCimTelepules, t.TartozkodasiCimKozteruletNev, t.TartozkodasiCimKozteruletJelleg, t.TartozkodasiCimHazszam, fel.ID, @intezmenyID, @tanevID, 'F', 1, NULL, @CREATED, NULL, @userId FROM T_FELHASZNALO_OSSZES fel JOIN #tempTanarok t on t.KretaKod = fel.C_KRETAKOD WHERE t.ID = @rowCount AND t.TartozkodasiCimIranyitoszam is not null AND t.TartozkodasiCimIranyitoszam != '' and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID END ----- Allando Lakscim------------ IF(Select count(0) FROM T_CIM_OSSZES WHERE C_FELHASZNALOID = @FelhID and C_CIMTIPUSA = 907 and c_intezmenyid = @intezmenyid AND c_tanevid = @tanevID) >= 1 BEGIN UPDATE T_CIM_OSSZES SET [T_CIM_OSSZES].[C_CIMTIPUSA] = 907, [T_CIM_OSSZES].[C_ORSZAG] = 765, [T_CIM_OSSZES].[C_IRANYITOSZAM] = AllandoCim.AllandoLakcimIranyitoSzam, [T_CIM_OSSZES].[C_VAROS] = AllandoCim.AllandoLakcimTelepules, [T_CIM_OSSZES].[C_KOZTERULET] = AllandoCim.AllandoLakcimKozteruletNev, [T_CIM_OSSZES].[C_KOZTERULETJELLEGE] =AllandoCim.AllandoLakcimKozteruletJelleg, [T_CIM_OSSZES].[C_HAZSZAM] =AllandoCim.AllandoLakcimHazszam, [T_CIM_OSSZES].[C_FELHASZNALOID] =AllandoCim.ID, [T_CIM_OSSZES].[TOROLT] = 'F', [T_CIM_OSSZES].SERIAL = [T_CIM_OSSZES].SERIAL + 1, [T_CIM_OSSZES].LASTCHANGED = GETDATE(), [T_CIM_OSSZES].MODIFIER = @userId FROM (SELECT t.AllandoLakcimIranyitoSzam, t.AllandoLakcimTelepules, t.AllandoLakcimKozteruletNev, t.AllandoLakcimKozteruletJelleg, t.AllandoLakcimHazszam, fel.ID FROM T_FELHASZNALO_OSSZES fel JOIN #tempTanarok t on t.KretaKod = fel.C_KRETAKOD WHERE t.ID = @rowCount and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID) AllandoCim WHERE T_CIM_OSSZES.C_FELHASZNALOID = @FelhID and T_CIM_OSSZES.C_CIMTIPUSA = 907 and t_cim_OSSZES.c_intezmenyid = @intezmenyid AND t_cim_OSSZES.c_tanevid = @tanevID END ELSE BEGIN INSERT INTO T_CIM( [C_CIMTIPUSA], [C_ORSZAG], [C_IRANYITOSZAM], [C_VAROS], [C_KOZTERULET], [C_KOZTERULETJELLEGE], [C_HAZSZAM], [C_FELHASZNALOID], [C_INTEZMENYID], [C_TANEVID], [TOROLT], [SERIAL], [LASTCHANGED], [CREATED], [MODIFIER], [CREATOR]) SELECT 907, 765, t.AllandoLakcimIranyitoSzam, t.AllandoLakcimTelepules, t.AllandoLakcimKozteruletNev, t.AllandoLakcimKozteruletJelleg, t.AllandoLakcimHazszam, fel.ID, @intezmenyID, @tanevID, 'F', 1, NULL, @CREATED, NULL, @userId FROM T_FELHASZNALO_OSSZES fel JOIN #tempTanarok t on t.KretaKod = fel.C_KRETAKOD WHERE t.ID = @rowCount and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID END IF(Select count(0) FROM T_EMAIL_OSSZES WHERE C_FELHASZNALOID = @FelhID and C_EMAILTIPUSA = 1025 and c_intezmenyid = @intezmenyid AND c_tanevid = @tanevID) >= 1 BEGIN UPDATE T_EMAIL_OSSZES SET [T_EMAIL_OSSZES].[C_EMAILCIM] = Email.EmailCim, [T_EMAIL_OSSZES].SERIAL = [T_EMAIL_OSSZES].SERIAL + 1, [T_EMAIL_OSSZES].LASTCHANGED = GETDATE(), [T_EMAIL_OSSZES].MODIFIER = @userId FROM (Select t.EmailCim from T_FELHASZNALO_OSSZES fel Inner join #tempTanarok t on t.KretaKod = fel.C_KRETAKOD WHERE t.ID = @rowCount and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID) Email WHERE [T_EMAIL_OSSZES].C_FELHASZNALOID = @FelhID and [T_EMAIL_OSSZES].[C_EMAILTIPUSA] = 1025 and [T_EMAIL_OSSZES].c_intezmenyid = @intezmenyid AND [T_EMAIL_OSSZES].c_tanevid = @tanevID END ELSE BEGIN INSERT INTO T_EMAIL_OSSZES( [C_EMAILTIPUSA], [C_EMAILCIM], [C_ALAPERTELMEZETT], [C_GONDVISELOID], [C_FELHASZNALOID], [C_INTEZMENYID], [C_TANEVID], [TOROLT], [SERIAL], [LASTCHANGED], [CREATED], [MODIFIER], [CREATOR]) SELECT 1025, t.EmailCim, 'T', null, fel.ID, @intezmenyID, @tanevID, 'F', 1, NULL, @CREATED, NULL, @userId FROM T_FELHASZNALO_OSSZES fel JOIN #tempTanarok t on t.KretaKod = fel.C_KRETAKOD AND fel.TOROLT = 'F' WHERE t.ID = @rowCount AND t.EmailCim is not null AND t.EmailCim != '' AND fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID END IF(Select count(0) FROM T_TELEFON_OSSZES WHERE C_FELHASZNALOID = @FelhID and [C_TELEFONTIPUSA] = 1019 and c_intezmenyid = @intezmenyid AND c_tanevid = @tanevID) >= 1 BEGIN UPDATE T_TELEFON_OSSZES SET [T_TELEFON_OSSZES].[C_TELEFONSZAM] = Telefon.Telefonszam, [T_TELEFON_OSSZES].SERIAL = [T_TELEFON_OSSZES].SERIAL + 1, [T_TELEFON_OSSZES].LASTCHANGED = GETDATE(), [T_TELEFON_OSSZES].MODIFIER = @userId FROM (Select t.Telefonszam from T_FELHASZNALO_OSSZES fel Inner join #tempTanarok t on t.KretaKod = fel.C_KRETAKOD WHERE t.ID = @rowCount and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID) Telefon WHERE [T_TELEFON_OSSZES].C_FELHASZNALOID = @FelhID and [T_TELEFON_OSSZES].[C_TELEFONTIPUSA] = 1019 and [T_TELEFON_OSSZES].c_intezmenyid = @intezmenyid AND [T_TELEFON_OSSZES].c_tanevid = @tanevID END ELSE BEGIN INSERT INTO T_TELEFON_OSSZES( [C_TELEFONTIPUSA], [C_TELEFONSZAM], [C_ALAPERTELMEZETT], [C_GONDVISELOID], [C_FELHASZNALOID], [C_INTEZMENYID], [C_TANEVID], [TOROLT], [SERIAL], [LASTCHANGED], [CREATED], [MODIFIER], [CREATOR]) SELECT 1019, t.Telefonszam, 'T', null, fel.ID, @intezmenyID, @tanevID, 'F', 1, NULL, @CREATED, NULL, @userId FROM T_FELHASZNALO_OSSZES fel JOIN #tempTanarok t on t.KretaKod = fel.C_KRETAKOD AND fel.TOROLT = 'F' WHERE t.ID = @rowCount AND t.Telefonszam is not null AND t.Telefonszam != '' AND fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID END ----------TANAR BELEPESEK-------- --IF (Select count(0) FROM T_FELHASZNALOBELEPES where C_FELHASZNALOID = @FelhID) = 0 -- BEGIN -- INSERT INTO [dbo].[T_FELHASZNALOBELEPES] ( -- [C_JELSZO], -- [C_BEJELENTKEZESINEV], -- [C_FELHASZNALOID], -- [C_INTEZMENYID], -- [C_TANEVID], -- [TOROLT], -- [SERIAL], -- [LASTCHANGED], -- [CREATED], -- [MODIFIER], -- [CREATOR]) -- SELECT -- CONVERT(nvarchar(8), fel.C_SZULETESIDATUM,112), -- fel.C_OKTATASIAZONOSITO, -- fel.ID, -- @intezmenyID, -- @tanevID, -- 'F', -- 1, -- NULL, -- @CREATED, -- NULL, -- @userId -- FROM #tempTanarok t -- JOIN T_FELHASZNALO fel ON fel.C_KRETAKOD = t.KretaKod -- WHERE t.ID = @rowCount -- END --------SZEREPKÖR----------- DELETE FROM T_FELHASZNALO_SZEREPKOR_OSSZES WHERE T_FELHASZNALO_SZEREPKOR_OSSZES.[C_FELHASZNALOID] = @FelhID INSERT INTO T_FELHASZNALO_SZEREPKOR_OSSZES (C_FELHASZNALOID, C_SZEREPKORID) SELECT DISTINCT fel.ID, (SELECT ID FROM T_SZEREPKOR_OSSZES WHERE C_SZEREPKORTIPUS = '1760' AND C_INTEZMENYID = @intezmenyID AND C_TANEVID = @tanevID) FROM #tempTanarok t JOIN T_FELHASZNALO_OSSZES fel ON fel.C_KRETAKOD = t.KretaKod AND C_TANEVID = @tanevID AND TOROLT='F' WHERE t.ID = @rowCount and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID --PRINT @rowCount SET @rowCount = @rowCount + 1 CONTINUE END -- Felhasználók létrehozása -- BEGIN TRY INSERT INTO T_FELHASZNALO_OSSZES ( [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], [TOROLT], [SERIAL], [LASTCHANGED], [CREATED], [MODIFIER], [CREATOR]) SELECT 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, @CREATED, t.OktatasiAzonosito, t.OMAzonosito, t.KretaKod, @intezmenyID, @tanevID, 'F', 1, NULL, @CREATED, NULL, @userId FROM #tempTanarok t WHERE ID = @rowCount -- END TRY -- BEGIN CATCH -- END CATCH -- Tanárok létrehozása INSERT INTO T_ALKALMAZOTT_OSSZES( [ID], [C_FOALLAS], [C_ALINTEZMENYID], [C_ALTANEVID], [TOROLT], [SERIAL], [LASTCHANGED], [CREATED], [MODIFIER], [CREATOR]) SELECT fel.ID, t.Foallas, @intezmenyID, @tanevID, 'F', 1, NULL, @CREATED, NULL, @userId FROM #tempTanarok t JOIN T_FELHASZNALO_OSSZES fel ON fel.C_KRETAKOD = t.KretaKod AND fel.TOROLT = 'F' and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID WHERE t.ID = @rowCount -- Munkaidő adatok INSERT INTO T_MUNKAUGYIADATOK_OSSZES ( --ID - this column value is auto-generated C_ALKALMAZASKEZDETE, C_KOTELEZOORASZAM, C_MUNKAKORTIPUSA, C_MUNKAVISZONYTIPUSA, C_ALKALMAZOTTID, C_FELADATELLATASIHELYID, C_INTEZMENYID, C_TANEVID, TOROLT, SERIAL, LASTCHANGED, CREATED, MODIFIER, CREATOR) SELECT t.JogviszonyKezdete, t.KotelezoOraszam, t.MunkakorTipusa, t.MunkaviszonyTipusa, fel.ID, @FeladatellatasiHelyId, @intezmenyID, @tanevID, 'F', 1, NULL, @CREATED, NULL, @userId FROM #tempTanarok t JOIN T_FELHASZNALO_OSSZES fel ON fel.C_KRETAKOD = t.KretaKod AND fel.TOROLT = 'F' and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID WHERE t.ID = @rowCount -- Szerepkör INSERT INTO T_FELHASZNALO_SZEREPKOR_OSSZES (C_FELHASZNALOID, C_SZEREPKORID) SELECT fel.ID, (SELECT ID FROM T_SZEREPKOR_OSSZES WHERE C_SZEREPKORTIPUS = '1760' AND C_INTEZMENYID = @intezmenyID AND C_TANEVID = @tanevID) FROM #tempTanarok t JOIN T_FELHASZNALO_OSSZES fel ON fel.C_KRETAKOD = t.KretaKod and fel.C_INTEZMENYID = @intezmenyid AND fel.c_tanevid = @tanevID AND TOROLT='F' WHERE t.ID = @rowCount and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID ---- Tanár belépések --INSERT INTO [dbo].[T_FELHASZNALOBELEPES] ( --[C_JELSZO], --[C_BEJELENTKEZESINEV], --[C_FELHASZNALOID], --[C_INTEZMENYID], --[C_TANEVID], --[TOROLT], --[SERIAL], --[LASTCHANGED], --[CREATED], --[MODIFIER], --[CREATOR]) --SELECT CONVERT( --nvarchar(8), --fel.C_SZULETESIDATUM,112), --fel.C_OKTATASIAZONOSITO, --fel.ID, --@intezmenyID, --@tanevID, --'F', --1, --NULL, --@CREATED, --NULL, --@userId -- FROM #tempTanarok t -- JOIN T_FELHASZNALO fel ON fel.C_KRETAKOD = t.KretaKod AND fel.TOROLT = 'F' -- WHERE t.ID = @rowCount -- BEGIN TRY -- Állandó lakcím INSERT INTO T_CIM_OSSZES ( [C_CIMTIPUSA], [C_ORSZAG], [C_IRANYITOSZAM], [C_VAROS], [C_KOZTERULET], [C_KOZTERULETJELLEGE], [C_HAZSZAM], [C_FELHASZNALOID], [C_INTEZMENYID], [C_TANEVID], [TOROLT], [SERIAL], [LASTCHANGED], [CREATED], [MODIFIER], [CREATOR]) SELECT 907, 765, t.AllandoLakcimIranyitoSzam, t.AllandoLakcimTelepules, t.AllandoLakcimKozteruletNev, t.AllandoLakcimKozteruletJelleg, t.AllandoLakcimHazszam, fel.ID, @intezmenyID, @tanevID, 'F', 1, NULL, @CREATED, NULL, @userId FROM T_FELHASZNALO_OSSZES fel JOIN #tempTanarok t on t.KretaKod = fel.C_KRETAKOD AND fel.TOROLT = 'F' WHERE t.ID = @rowCount and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID -- Tartozkodási lakcím INSERT INTO T_CIM_OSSZES ( [C_CIMTIPUSA], [C_ORSZAG], [C_IRANYITOSZAM], [C_VAROS], [C_KOZTERULET], [C_KOZTERULETJELLEGE], [C_HAZSZAM], [C_FELHASZNALOID], [C_INTEZMENYID], [C_TANEVID], [TOROLT], [SERIAL], [LASTCHANGED], [CREATED], [MODIFIER], [CREATOR]) SELECT 908, 765, t.TartozkodasiCimIranyitoszam, t.TartozkodasiCimTelepules, t.TartozkodasiCimKozteruletNev, t.TartozkodasiCimKozteruletJelleg, t.TartozkodasiCimHazszam, fel.ID, @intezmenyID, @tanevID, 'F', 1, NULL, @CREATED, NULL, @userId FROM T_FELHASZNALO_OSSZES fel JOIN #tempTanarok t on t.KretaKod = fel.C_KRETAKOD AND fel.TOROLT = 'F' WHERE t.ID = @rowCount AND t.TartozkodasiCimIranyitoszam is not null AND t.TartozkodasiCimIranyitoszam != '' and fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID -- Email Cím felvétele INSERT INTO T_EMAIL_OSSZES ( [C_EMAILTIPUSA], [C_EMAILCIM], [C_ALAPERTELMEZETT], [C_GONDVISELOID], [C_FELHASZNALOID], [C_INTEZMENYID], [C_TANEVID], [TOROLT], [SERIAL], [LASTCHANGED], [CREATED], [MODIFIER], [CREATOR]) SELECT 1025, t.EmailCim, 'T', null, fel.ID, @intezmenyID, @tanevID, 'F', 1, NULL, @CREATED, NULL, @userId FROM T_FELHASZNALO_OSSZES fel JOIN #tempTanarok t on t.KretaKod = fel.C_KRETAKOD AND fel.TOROLT = 'F' WHERE t.ID = @rowCount AND t.EmailCim is not null AND t.EmailCim != '' AND fel.c_intezmenyid = @intezmenyid AND fel.c_tanevid = @tanevID --END TRY --BEGIN CATCH --END CATCH --END CATCH SET @rowCount = @rowCount + 1 END END TRY BEGIN CATCH IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION DECLARE @ERRORMESSAGE NVARCHAR(4000), @ERRORSEV INT SET @ERRORMESSAGE = ERROR_MESSAGE() SET @ERRORSEV = ERROR_SEVERITY() print 2 RAISERROR(@ERRORMESSAGE, @ERRORSEV, 1) END CATCH IF @@TRANCOUNT > 0 COMMIT TRANSACTION --ROLLBACK TRANSACTION -- temptábla eldobása DROP TABLE #tempTanarok END