116 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
			
		
		
	
	
			116 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
-- =============================================
 | 
						|
-- Author:		Kecskeméthy Zsolt
 | 
						|
-- Create date: 2016.05.09
 | 
						|
-- Description:	Intézményhez tartozó adatok.
 | 
						|
-- =============================================
 | 
						|
 | 
						|
SET ANSI_NULLS ON
 | 
						|
GO
 | 
						|
SET QUOTED_IDENTIFIER ON
 | 
						|
GO
 | 
						|
 | 
						|
IF OBJECT_ID('dbo.sp_Global_IntezmenyLetrehozas') IS NOT NULL 
 | 
						|
BEGIN
 | 
						|
  DROP PROCEDURE [dbo].[sp_Global_IntezmenyLetrehozas]
 | 
						|
END  
 | 
						|
GO
 | 
						|
 | 
						|
CREATE PROCEDURE [dbo].[sp_Global_IntezmenyLetrehozas]
 | 
						|
	@fenntartoAzonosito nvarchar(20),
 | 
						|
	@intezmenyAzonosito nvarchar(30),
 | 
						|
	@tanevNeve nvarchar(200),
 | 
						|
	@kovetkezoTanevNeve nvarchar(200),
 | 
						|
	@intezmenyNeve nvarchar(255),
 | 
						|
	@intezmenyIranyitoSzam nvarchar(20),
 | 
						|
	@intezmenyVaros nvarchar(255),
 | 
						|
	@intezmenyKozteruletNev nvarchar(40),
 | 
						|
	@intezmenyKozteruletJelleg int,
 | 
						|
	@intezmenyHazszam nvarchar(30),
 | 
						|
	@intezmenyEmelet nvarchar(40),
 | 
						|
	@intezmenyAjto nvarchar(30),
 | 
						|
	@intezmenyOMKod nvarchar(20),
 | 
						|
	@intezmenyIgazgato nvarchar(255),
 | 
						|
	@intezmenyTagkod nvarchar(50),
 | 
						|
	@intezmenyEmail nvarchar(255),
 | 
						|
	@adminJelszo nvarchar(8),
 | 
						|
	@fenntartoJelszo nvarchar(8),
 | 
						|
	@kellABHet bit,
 | 
						|
	@teljesKreta bit,
 | 
						|
	@dbJelszo nvarchar(50)
 | 
						|
AS
 | 
						|
BEGIN
 | 
						|
	DECLARE @intezmenyID int = (SELECT TOP 1 ID FROM T_INTEZMENY WHERE T_INTEZMENY.C_AZONOSITO = @intezmenyAzonosito);
 | 
						|
 | 
						|
	-- Létezik-e az intézmény
 | 
						|
	IF(@intezmenyID IS NULL)
 | 
						|
	BEGIN
 | 
						|
		-- Intézmény létrehozása
 | 
						|
		INSERT INTO [dbo].[T_INTEZMENY]
 | 
						|
			   ([C_AZONOSITO]
 | 
						|
			   ,[C_FENNTARTOAZONOSITO]
 | 
						|
			   ,[TOROLT]
 | 
						|
			   ,[SERIAL]
 | 
						|
			   ,[LASTCHANGED]
 | 
						|
			   ,[CREATED]
 | 
						|
			   ,[MODIFIER]
 | 
						|
			   ,[CREATOR])
 | 
						|
		 VALUES
 | 
						|
			   (@intezmenyAzonosito
 | 
						|
			   ,@fenntartoAzonosito
 | 
						|
			   ,'F'
 | 
						|
			   ,0
 | 
						|
			   ,getdate()
 | 
						|
			   ,getdate()
 | 
						|
			   ,null
 | 
						|
			   ,null)
 | 
						|
		
 | 
						|
		SET @intezmenyID = SCOPE_IDENTITY();
 | 
						|
 | 
						|
		PRINT 'Intézmény létrehozása sikeres! (ID:' + CAST(@intezmenyID as VARCHAR) + ')';
 | 
						|
	END
 | 
						|
	ELSE
 | 
						|
	BEGIN
 | 
						|
		PRINT 'Már létezik az intézmény! (ID:' + CAST(@intezmenyID AS VARCHAR) + ')';
 | 
						|
		--PRINT 'Kilépés';
 | 
						|
		--RETURN 1;
 | 
						|
	END
 | 
						|
 | 
						|
	-- Aktuális tanév létrehozása
 | 
						|
	DECLARE @tanevID int = (SELECT TOP 1 ID FROM T_TANEV WHERE T_TANEV.C_NEV = @tanevNeve AND T_TANEV.C_INTEZMENYID = @intezmenyID);
 | 
						|
	IF(@tanevID is null)
 | 
						|
	BEGIN
 | 
						|
	   -- tanéves adatok létrehozása
 | 
						|
	   EXEC [dbo].[sp_Global_GenerateTanevAdatok] @intezmenyId = @intezmenyID, @intezmenyAzonosito = @intezmenyAzonosito, @tanevNeve = @tanevNeve, @kovetkezoTanev = 0,
 | 
						|
			@intezmenyNeve = @intezmenyNeve, @intezmenyIranyitoSzam = @intezmenyIranyitoSzam, @intezmenyVaros = @intezmenyVaros,
 | 
						|
			@intezmenyKozteruletNev = @intezmenyKozteruletNev, @intezmenyKozteruletJelleg = @intezmenyKozteruletJelleg, @intezmenyHazszam = @intezmenyHazszam, @intezmenyEmelet = @intezmenyEmelet, @intezmenyAjto = @intezmenyAjto,
 | 
						|
			@intezmenyOMKod = @intezmenyOMKod, @intezmenyIgazgato = @intezmenyIgazgato, @intezmenyTagkod = @intezmenyTagkod, @intezmenyEmail = @intezmenyEmail,
 | 
						|
			@adminJelszo = @adminJelszo, @fenntartoJelszo = @fenntartoJelszo, @kellABHet = @kellABHet, @teljesKreta = @teljesKreta, @dbJelszo = @dbJelszo
 | 
						|
	END
 | 
						|
	ELSE
 | 
						|
	BEGIN
 | 
						|
		PRINT 'Már létezik ilyan tanév! (ID:' + CAST(@tanevID AS VARCHAR) + ', Tanév: '+ @tanevNeve +')';
 | 
						|
	END
 | 
						|
 | 
						|
	-- Következő tanév létrehozása, ha szükséges
 | 
						|
	IF(@kovetkezoTanevNeve IS NOT NULL AND @kovetkezoTanevNeve != '')
 | 
						|
	BEGIN
 | 
						|
		SET @tanevID = (SELECT TOP 1 ID FROM T_TANEV WHERE T_TANEV.C_NEV = @kovetkezoTanevNeve AND T_TANEV.C_INTEZMENYID = @intezmenyID);
 | 
						|
		IF(@tanevID is null)
 | 
						|
		BEGIN
 | 
						|
		   -- tanéves adatok létrehozása
 | 
						|
		   EXEC [dbo].[sp_Global_GenerateTanevAdatok] @intezmenyId = @intezmenyID, @intezmenyAzonosito = @intezmenyAzonosito, @tanevNeve = @tanevNeve, @kovetkezoTanev = 1,
 | 
						|
				@intezmenyNeve = @intezmenyNeve, @intezmenyIranyitoSzam = @intezmenyIranyitoSzam, @intezmenyVaros = @intezmenyVaros,
 | 
						|
				@intezmenyKozteruletNev = @intezmenyKozteruletNev, @intezmenyKozteruletJelleg = @intezmenyKozteruletJelleg, @intezmenyHazszam = @intezmenyHazszam, @intezmenyEmelet = @intezmenyEmelet, @intezmenyAjto = @intezmenyAjto,
 | 
						|
				@intezmenyOMKod = @intezmenyOMKod, @intezmenyIgazgato = @intezmenyIgazgato, @intezmenyTagkod = @intezmenyTagkod, @intezmenyEmail = @intezmenyEmail,
 | 
						|
				@adminJelszo = @adminJelszo, @fenntartoJelszo = @fenntartoJelszo, @kellABHet = @kellABHet, @teljesKreta = @teljesKreta, @dbJelszo = @dbJelszo
 | 
						|
		END
 | 
						|
		ELSE
 | 
						|
		BEGIN
 | 
						|
			PRINT 'Már létezik ilyan tanév! (ID:' + CAST(@tanevID AS VARCHAR) + ', Tanév: '+ @kovetkezoTanevNeve +')';
 | 
						|
			PRINT 'Kilépés';
 | 
						|
			RETURN ;
 | 
						|
		END
 | 
						|
	END
 | 
						|
END
 | 
						|
 |