42 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.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.
 | 
						|
 | 
						|
IF OBJECT_ID('dbo.sp_UpdateTanulokSzakkepzesesAdatok') IS NOT NULL BEGIN
 | 
						|
  DROP PROCEDURE dbo.sp_UpdateTanulokSzakkepzesesAdatok
 | 
						|
END
 | 
						|
GO
 | 
						|
 | 
						|
CREATE PROCEDURE dbo.sp_UpdateTanulokSzakkepzesesAdatok 
 | 
						|
	@tanulokIdString varchar(max)
 | 
						|
	,@szakmacsoport int = NULL
 | 
						|
	,@agazat int = NULL
 | 
						|
	,@szakkepesites int = NULL
 | 
						|
	,@reszSzakkepesites int = NULL
 | 
						|
AS
 | 
						|
BEGIN
 | 
						|
	DECLARE @sql NVARCHAR(MAX), @setList NVARCHAR(MAX)
 | 
						|
 | 
						|
	SET @sql = N'UPDATE T_TANULO_OSSZES
 | 
						|
		SET '
 | 
						|
 | 
						|
	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
 | 
						|
 | 
						|
	SET @sql += @setList + '
 | 
						|
	WHERE ID IN ('+ @tanulokIdString +')
 | 
						|
		AND TOROLT = ''F''
 | 
						|
	'
 | 
						|
 | 
						|
	EXEC sp_executesql @sql, N'@szakmacsoport int, @agazat int, @szakkepesites int, @reszSzakkepesites int', @szakmacsoport, @agazat, @szakkepesites, @reszSzakkepesites
 | 
						|
END |