kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20170615100543_KRETA_1708/sp_KIRImportTanarok.sql
2024-03-13 00:33:46 +01:00

837 lines
No EOL
26 KiB
Transact-SQL

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