142 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
			
		
		
	
	
			142 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
	
	
-- =============================================
 | 
						|
-- Author:		Kecskeméthy Zsolt
 | 
						|
-- Create date: 2016.05.09
 | 
						|
-- Description:	Intézményhez tartozó adatok.
 | 
						|
-- =============================================
 | 
						|
DROP PROCEDURE IF EXISTS [dev].[uspIntezmenyLetrehozas]
 | 
						|
GO
 | 
						|
 | 
						|
CREATE PROCEDURE [dev].[uspIntezmenyLetrehozas]
 | 
						|
	@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_POSZEIDONBEJELENTKEZESINEV]
 | 
						|
			   ,[C_IKTATOSZERVEZETAZONOSITO]
 | 
						|
			   ,[C_FENNTARTOAZONOSITO]
 | 
						|
			   ,[C_FENNTARTOID]
 | 
						|
			   ,[TOROLT]
 | 
						|
			   ,[SERIAL]
 | 
						|
			   ,[LASTCHANGED]
 | 
						|
			   ,[CREATED]
 | 
						|
			   ,[MODIFIER]
 | 
						|
			   ,[CREATOR])
 | 
						|
		 VALUES
 | 
						|
			   (@intezmenyAzonosito
 | 
						|
			   ,@intezmenyAzonosito
 | 
						|
			   ,@intezmenyAzonosito
 | 
						|
			   ,@fenntartoAzonosito
 | 
						|
			   ,0
 | 
						|
			   ,'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 AND TOROLT = 'F');
 | 
						|
	IF @tanevID IS NULL BEGIN
 | 
						|
	   -- tanéves adatok létrehozása
 | 
						|
	   EXEC [dev].[uspGenerateTanevAdatok] 
 | 
						|
       @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 AND TOROLT = 'F');
 | 
						|
		IF @tanevID IS NULL BEGIN
 | 
						|
		   -- tanéves adatok létrehozása
 | 
						|
		  EXEC [dev].[uspGenerateTanevAdatok] 
 | 
						|
         @intezmenyId = @intezmenyID
 | 
						|
        ,@intezmenyAzonosito = @intezmenyAzonosito
 | 
						|
        ,@tanevNeve = @kovetkezoTanevNeve
 | 
						|
        ,@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
 | 
						|
 |