98 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
			
		
		
	
	
			98 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
-- =============================================
 | 
						|
-- Description:	<A tantárgyfelosztás módosításával az órarendi órák, a tanítási órák és az értékelések átállítása is történjen meg>
 | 
						|
-- =============================================
 | 
						|
 | 
						|
SET ANSI_NULLS ON
 | 
						|
GO
 | 
						|
SET QUOTED_IDENTIFIER ON
 | 
						|
GO
 | 
						|
 | 
						|
IF OBJECT_ID('[dbo].[sp_UpdateTantargyfelosztasVisszamenoleges]') IS NOT NULL
 | 
						|
BEGIN
 | 
						|
	DROP PROCEDURE [dbo].[sp_UpdateTantargyfelosztasVisszamenoleges]
 | 
						|
END
 | 
						|
GO
 | 
						|
 | 
						|
CREATE PROCEDURE [dbo].[sp_UpdateTantargyfelosztasVisszamenoleges]
 | 
						|
	 @pIntezmenyId				INT
 | 
						|
	,@pTanevId					INT
 | 
						|
	,@pUserId					INT
 | 
						|
	,@pEredetiTanarId			INT
 | 
						|
	,@pModosultTanarId			INT
 | 
						|
	,@pEredetiTantargyId		INT
 | 
						|
	,@pModosultTantargyId		INT
 | 
						|
	,@pEredetiOsztalyCsoportId	INT
 | 
						|
	,@pModosultOsztalyCsoportId	INT
 | 
						|
 | 
						|
AS
 | 
						|
BEGIN
 | 
						|
 | 
						|
    BEGIN TRY
 | 
						|
    SET NOCOUNT ON
 | 
						|
    SET XACT_ABORT ON
 | 
						|
 | 
						|
    BEGIN TRANSACTION
 | 
						|
	
 | 
						|
	UPDATE T_TANITASIORA SET
 | 
						|
		 C_TANTARGYID 			=	@pModosultTantargyId
 | 
						|
		,C_OSZTALYCSOPORTID 	=	@pModosultOsztalyCsoportId
 | 
						|
		,C_TANARID 				=	@pModosultTanarId
 | 
						|
		,SERIAL					+=	1
 | 
						|
		,LASTCHANGED			=   GETDATE()
 | 
						|
		,MODIFIER				=   @pUserId
 | 
						|
	FROM
 | 
						|
		T_TANITASIORA
 | 
						|
	WHERE
 | 
						|
			C_INTEZMENYID 		= 	@pIntezmenyId
 | 
						|
		AND C_TANEVID 			= 	@pTanevId
 | 
						|
		AND C_TANTARGYID 		= 	@pEredetiTantargyId
 | 
						|
		AND C_OSZTALYCSOPORTID	= 	@pEredetiOsztalyCsoportId
 | 
						|
		AND C_TANARID			=   @pEredetiTanarId
 | 
						|
 | 
						|
	UPDATE T_TANULOERTEKELES SET
 | 
						|
		 C_TANTARGYID 			=	@pModosultTantargyId
 | 
						|
		,C_OSZTALYCSOPORTID 	=	@pModosultOsztalyCsoportId
 | 
						|
		,C_ERTEKELOID 			=	@pModosultTanarId
 | 
						|
		,SERIAL					+=  1
 | 
						|
		,LASTCHANGED			=   GETDATE()
 | 
						|
		,MODIFIER				=   @pUserId
 | 
						|
	FROM
 | 
						|
		T_TANULOERTEKELES
 | 
						|
	WHERE
 | 
						|
			C_INTEZMENYID 		= 	@pIntezmenyId
 | 
						|
		AND C_TANEVID 			= 	@pTanevId
 | 
						|
		AND C_TANTARGYID 		= 	@pEredetiTantargyId
 | 
						|
		AND C_OSZTALYCSOPORTID	= 	@pEredetiOsztalyCsoportId
 | 
						|
		AND C_ERTEKELOID		=   @pEredetiTanarId
 | 
						|
 | 
						|
	UPDATE T_TANMENET SET
 | 
						|
		 C_TANTARGYID 			=	@pModosultTantargyId
 | 
						|
		,C_OSZTALYCSOPORTID 	=	@pModosultOsztalyCsoportId
 | 
						|
		,C_FELTOLTOID 			=	@pModosultTanarId
 | 
						|
		,SERIAL					+=  1
 | 
						|
		,LASTCHANGED			=   GETDATE()
 | 
						|
		,MODIFIER				=   @pUserId
 | 
						|
	FROM
 | 
						|
		T_TANMENET
 | 
						|
	WHERE
 | 
						|
			C_INTEZMENYID 		= 	@pIntezmenyId
 | 
						|
		AND C_TANEVID 			= 	@pTanevId
 | 
						|
		AND C_TANTARGYID 		= 	@pEredetiTantargyId
 | 
						|
		AND C_OSZTALYCSOPORTID	= 	@pEredetiOsztalyCsoportId
 | 
						|
		AND C_FELTOLTOID		=   @pEredetiTanarId
 | 
						|
   
 | 
						|
 | 
						|
    COMMIT TRANSACTION
 | 
						|
       END TRY
 | 
						|
       BEGIN CATCH
 | 
						|
       IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0 
 | 
						|
             ROLLBACK TRAN;
 | 
						|
             THROW
 | 
						|
       END CATCH
 | 
						|
		
 | 
						|
END
 | 
						|
 | 
						|
 | 
						|
GO
 | 
						|
 |