146 lines
4.5 KiB
Transact-SQL
146 lines
4.5 KiB
Transact-SQL
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
IF OBJECT_ID('[dbo].[sp_ImportFelhasznaloBelepes]') IS NOT NULL
|
|
BEGIN
|
|
DROP PROCEDURE [dbo].[sp_ImportFelhasznaloBelepes]
|
|
END
|
|
GO
|
|
|
|
-- =============================================
|
|
-- Description: <Importáljuk a felhasználó belépéseket>
|
|
-- =============================================
|
|
CREATE PROCEDURE [dbo].[sp_ImportFelhasznaloBelepes]
|
|
@pIntezmenyId INT
|
|
,@pTanevId INT
|
|
,@pModifierId INT
|
|
,@pFelhasznaloBelepesImportXml XML
|
|
|
|
AS
|
|
BEGIN
|
|
|
|
-- SET NOCOUNT ON added to prevent extra result sets from
|
|
-- interfering with SELECT statements.
|
|
SET NOCOUNT ON;
|
|
|
|
BEGIN TRY
|
|
SET XACT_ABORT ON
|
|
|
|
DECLARE @TempFelhasznaloBelepes TABLE (
|
|
C_KOTELEZOVALTOZTATNI CHAR(1) NULL
|
|
,C_MEGHIUSULTBELEPESEK INT NULL
|
|
,C_UTOLSOBELEPES DATETIME NULL
|
|
,C_JELSZO NVARCHAR(64) NULL
|
|
,C_JELSZOVALTOZTATASIDEJE DATETIME NULL
|
|
,C_SO NVARCHAR(64) NULL
|
|
,C_BEJELENTKEZESINEV NVARCHAR(255) NOT NULL
|
|
,C_NEPTUNNAPLOJELSZO NVARCHAR(64) NULL
|
|
,C_GUID NVARCHAR(36) NOT NULL
|
|
,C_FELHASZNALOID INT NOT NULL
|
|
,C_GONDVISELOID INT NULL
|
|
,C_INTEZMENYID INT NOT NULL
|
|
,C_TANEVID INT NOT NULL
|
|
,TOROLT CHAR(1) NOT NULL
|
|
,SERIAL INT NOT NULL
|
|
,LASTCHANGED DATETIME NOT NULL
|
|
,CREATED DATETIME NOT NULL
|
|
,MODIFIER INT NULL
|
|
,CREATOR INT NULL
|
|
,NNID INT NULL
|
|
,ELOZOTANEVIREKORDID INT NULL
|
|
)
|
|
|
|
INSERT INTO
|
|
@TempFelhasznaloBelepes
|
|
SELECT
|
|
'T' C_KOTELEZOVALTOZTATNI
|
|
,0 C_MEGHIUSULTBELEPESEK
|
|
,NULL C_UTOLSOBELEPES
|
|
,sor.value('(Jelszo)[1]', 'nvarchar(64)') C_JELSZO
|
|
,NULL C_JELSZOVALTOZTATASIDEJE
|
|
,sor.value('(Salt)[1]', 'nvarchar(64)') C_SO
|
|
,sor.value('(Felhasznalonev)[1]', 'nvarchar(255)') C_BEJELENTKEZESINEV
|
|
,NULL C_NEPTUNNAPLOJELSZO
|
|
,NEWID() C_GUID
|
|
,sor.value('number((FelhasznaloId)[1])', 'int') C_FELHASZNALOID
|
|
,sor.value('number((GondviseloId)[1][not(@xsi:nil = "true")])', 'int') C_GONDVISELOID
|
|
,@pIntezmenyId C_INTEZMENYID
|
|
,@pTanevId C_TANEVID
|
|
,'F' TOROLT
|
|
,0 SERIAL
|
|
,GETDATE() LASTCHANGED
|
|
,GETDATE() CREATED
|
|
,@pModifierId MODIFIER
|
|
,@pModifierId CREATOR
|
|
,NULL NNID
|
|
,NULL ELOZOTANEVIREKORDID
|
|
|
|
FROM @pFelhasznaloBelepesImportXml.nodes('/FelhasznaloBelepesImport/FelhasznaloBelepesList/FelhasznaloBelepes') AS sorok(sor)
|
|
|
|
BEGIN TRANSACTION
|
|
|
|
UPDATE
|
|
T_FELHASZNALOBELEPES_OSSZES
|
|
SET
|
|
T_FELHASZNALOBELEPES_OSSZES.TOROLT = 'T'
|
|
,T_FELHASZNALOBELEPES_OSSZES.SERIAL = T_FELHASZNALOBELEPES_OSSZES.SERIAL + 1
|
|
,T_FELHASZNALOBELEPES_OSSZES.LASTCHANGED = GETDATE()
|
|
,T_FELHASZNALOBELEPES_OSSZES.MODIFIER = @pModifierId
|
|
FROM
|
|
T_FELHASZNALOBELEPES_OSSZES
|
|
INNER JOIN
|
|
@TempFelhasznaloBelepes tempTable ON
|
|
tempTable.C_FELHASZNALOID = T_FELHASZNALOBELEPES_OSSZES.C_FELHASZNALOID
|
|
AND ((T_FELHASZNALOBELEPES_OSSZES.C_GONDVISELOID IS NOT NULL AND tempTable.C_GONDVISELOID IS NOT NULL AND T_FELHASZNALOBELEPES_OSSZES.C_GONDVISELOID = tempTable.C_GONDVISELOID)
|
|
OR (T_FELHASZNALOBELEPES_OSSZES.C_GONDVISELOID IS NULL AND tempTable.C_GONDVISELOID IS NULL))
|
|
WHERE
|
|
T_FELHASZNALOBELEPES_OSSZES.C_INTEZMENYID = @pIntezmenyId
|
|
AND T_FELHASZNALOBELEPES_OSSZES.C_TANEVID = @pTanevId
|
|
AND T_FELHASZNALOBELEPES_OSSZES.TOROLT = 'F'
|
|
|
|
INSERT INTO
|
|
T_FELHASZNALOBELEPES
|
|
SELECT
|
|
C_KOTELEZOVALTOZTATNI C_KOTELEZOVALTOZTATNI
|
|
,C_MEGHIUSULTBELEPESEK C_MEGHIUSULTBELEPESEK
|
|
,C_UTOLSOBELEPES C_UTOLSOBELEPES
|
|
,C_JELSZO C_JELSZO
|
|
,C_JELSZOVALTOZTATASIDEJE C_JELSZOVALTOZTATASIDEJE
|
|
,C_SO C_SO
|
|
,C_BEJELENTKEZESINEV C_BEJELENTKEZESINEV
|
|
,C_NEPTUNNAPLOJELSZO C_NEPTUNNAPLOJELSZO
|
|
,C_GUID C_GUID
|
|
,'F' C_ELFOGADOTTGDPRNYILATKOZAT
|
|
, NULL C_GDPRELFOGADASDATUMA
|
|
,C_FELHASZNALOID C_FELHASZNALOID
|
|
,C_GONDVISELOID C_GONDVISELOID
|
|
,C_INTEZMENYID C_INTEZMENYID
|
|
,C_TANEVID C_TANEVID
|
|
,TOROLT TOROLT
|
|
,SERIAL SERIAL
|
|
,LASTCHANGED LASTCHANGED
|
|
,CREATED CREATED
|
|
,MODIFIER MODIFIER
|
|
,CREATOR CREATOR
|
|
,NNID NNID
|
|
,ELOZOTANEVIREKORDID ELOZOTANEVIREKORDID
|
|
|
|
FROM
|
|
@TempFelhasznaloBelepes
|
|
|
|
COMMIT TRANSACTION
|
|
END TRY
|
|
|
|
BEGIN CATCH
|
|
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
|
ROLLBACK TRANSACTION;
|
|
THROW
|
|
END CATCH
|
|
|
|
END
|
|
|
|
|
|
GO
|
|
|