kreta/Kreta.DataAccess.Migrations/DBScripts/Database/dbo/Stored procedures/uspUpdateTanulokNKTesSZKTSzakkepzesesAdatok.sql
2024-03-13 00:33:46 +01:00

64 lines
2.3 KiB
Transact-SQL

-- Tanulók szakképzéses adatinak frissítése, paraméterektől függően
-- Szekeres András, Telek Ákos
-- 2017.05.12.
DROP PROCEDURE IF EXISTS dbo.uspUpdateTanulokNKTesSZKTSzakkepzesesAdatok
GO
CREATE PROCEDURE dbo.uspUpdateTanulokNKTesSZKTSzakkepzesesAdatok
@tanulokIdString varchar(max)
,@isSzakkepzesesUpdate bit = 1
,@isNKTSzakkepzesesUpdate bit = 0
,@SzakiranyNKTTipusId int = NULL
,@SzakkepesitesNKTTipusId int = NULL
,@TanulmanyiTeruletNKTTipusId int = NULL
,@szakmacsoport int = NULL
,@agazat int = NULL
,@szakkepesites int = NULL
,@reszSzakkepesites int = NULL
AS
BEGIN
SET NOCOUNT ON;
DECLARE @sql NVARCHAR(MAX), @setList NVARCHAR(MAX)
SET @sql = N'UPDATE T_TANULO_OSSZES
SET '
IF @isSzakkepzesesUpdate is not null and @isSzakkepzesesUpdate = 1
BEGIN
IF @szakmacsoport is not null BEGIN
SET @setList = ISNULL(@setList + ', ', '') + N'C_SZAKMACSOPORT = @szakmacsoport'
END
IF @agazat is not null BEGIN
SET @setList = ISNULL(@setList + ', ', '') + N'C_AGAZAT = @agazat'
END
IF @szakkepesites is not null BEGIN
SET @setList = ISNULL(@setList + ', ', '') + N'C_SZAKKEPESITES = @szakkepesites'
END
IF @reszSzakkepesites is not null BEGIN
SET @setList = ISNULL(@setList + ', ', '') + N'C_RESZSZAKKEPESITES = @reszSzakkepesites'
END
END
IF @isNKTSzakkepzesesUpdate is not null and @isNKTSzakkepzesesUpdate = 1
BEGIN
IF @SzakiranyNKTTipusId is not null BEGIN
SET @setList = ISNULL(@setList + ', ', '') + N'C_SZAKIRANYNKTTIPUSID = @SzakiranyNKTTipusId'
END
IF @SzakkepesitesNKTTipusId is not null BEGIN
SET @setList = ISNULL(@setList + ', ', '') + N'C_SZAKKEPESITESNKTTIPUSID = @SzakkepesitesNKTTipusId'
END
IF @TanulmanyiTeruletNKTTipusId is not null BEGIN
SET @setList = ISNULL(@setList + ', ', '') + N'C_TANULMANYITERULETNKTTIPUSID = @TanulmanyiTeruletNKTTipusId'
END
END
SET @sql += @setList + '
WHERE ID IN ('+ @tanulokIdString +')
AND TOROLT = ''F''
'
EXEC sp_executesql @sql,
N'@szakmacsoport int, @agazat int, @szakkepesites int, @reszSzakkepesites int, @SzakiranyNKTTipusId int, @SzakkepesitesNKTTipusId int, @TanulmanyiTeruletNKTTipusId int',
@szakmacsoport, @agazat, @szakkepesites, @reszSzakkepesites, @SzakiranyNKTTipusId, @SzakkepesitesNKTTipusId, @TanulmanyiTeruletNKTTipusId
END
GO