Files
kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20200304134948_DB_2122/uspFollowUpFelhasznaloEmail.sql
2024-03-13 00:33:46 +01:00

79 lines
2.3 KiB
Transact-SQL

-- =============================================
-- Author: Szekeres András
-- Create date: 2018.04.24.
-- Description: Egy tanuló email címeinek frissítése a következõ tanévre
-- Modifier: Zalán Máriusz
-- Modify date: 2020.02.19
-- Description: Dinamizálás
-- =============================================
DROP PROCEDURE IF EXISTS uspFollowUpFelhasznaloEmail
GO
CREATE PROCEDURE uspFollowUpFelhasznaloEmail
@intezmenyId int
,@aktTanevId int
,@kovetkezoTanevId int
,@felhasznaloId int
AS
BEGIN
SET NOCOUNT ON;
DECLARE
@kovFelhasznaloId int
,@insertColList nvarchar(max)
,@selectColList nvarchar(max)
,@sql nvarchar(max)
CREATE TABLE #columnMapping (
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
,selectColName nvarchar(128)
)
INSERT INTO #columnMapping
SELECT insertColName,selectColName
FROM fnGetFollowUpColumnMapping (NULL,'T_EMAIL')
SELECT @kovFelhasznaloId = kov.ID
FROM T_FELHASZNALO_OSSZES akt
INNER JOIN T_FELHASZNALO_OSSZES kov ON akt.C_OKTATASIAZONOSITO = kov.C_OKTATASIAZONOSITO AND kov.C_TANEVID = @kovetkezoTanevId AND kov.C_INTEZMENYID = @intezmenyId
WHERE akt.ID = @felhasznaloId
AND akt.C_INTEZMENYID = @intezmenyId
AND akt.C_TANEVID = @aktTanevId
AND kov.TOROLT = 'F'
AND akt.TOROLT = 'F'
IF @kovFelhasznaloId IS NOT NULL BEGIN
DELETE FROM T_EMAIL_OSSZES
WHERE C_FELHASZNALOID = @kovFelhasznaloId
AND C_GONDVISELOID IS NULL
AND C_INTEZMENYID = @intezmenyId
AND C_TANEVID = @kovetkezoTanevId;
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
SET @sql = N'
INSERT INTO T_EMAIL_OSSZES (
'+@insertColList+'
) SELECT
'+@selectColList+'
FROM T_EMAIL_OSSZES s
WHERE s.C_FELHASZNALOID = @felhasznaloId AND s.C_GONDVISELOID IS NULL AND s.TOROLT = ''F'''
--PRINT @sql
EXEC sp_executesql
@sql,N'
@kovetkezoTanevId int
,@intezmenyId int
,@felhasznaloId int
,@kovFelhasznaloId int'
,@kovetkezoTanevId = @kovetkezoTanevId
,@intezmenyId = @intezmenyId
,@felhasznaloId = @felhasznaloId
,@kovFelhasznaloId = @kovFelhasznaloId
END
END
GO