837 lines
No EOL
26 KiB
Transact-SQL
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 |