kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20170327110702_Init/sp_Global_IntezmenyLetrehozas.sql
2024-03-13 00:33:46 +01:00

110 lines
3.8 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),
@intezmenyCime nvarchar(200),
@intezmenyAzonosito nvarchar(20),
@intezmenyIranyitoSzam nvarchar(20),
@intezmenyNeve nvarchar(255),
@intezmenyOMKod nvarchar(20),
@intezmenyVaros nvarchar(255),
@intezmenyIgazgato nvarchar(255),
@intezmenyTagkod nvarchar(50),
@intezmenyEmail nvarchar(255),
@tanevNeve nvarchar(200),
@kovetkezoTanevNeve nvarchar(200),
@adminJelszo nvarchar(8),
@fenntartoJelszo nvarchar(8),
@kellABHet bit,
@teljesKreta bit
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, @tanevNeve = @tanevNeve, @kovetkezoTanev = 0,
@intezmenyCime = @intezmenyCime, @intezmenyAzonosito = @intezmenyAzonosito,
@intezmenyIranyitoSzam = @intezmenyIranyitoSzam, @intezmenyNeve = @intezmenyNeve, @intezmenyOMKod = @intezmenyOMKod, @intezmenyVaros = @intezmenyVaros,
@intezmenyIgazgato = @intezmenyIgazgato, @intezmenyTagkod = @intezmenyTagkod, @intezmenyEmail = @intezmenyEmail, @adminJelszo = @adminJelszo,
@fenntartoJelszo = @fenntartoJelszo, @kellABHet = @kellABHet, @teljesKreta = @teljesKreta
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, @tanevNeve = @kovetkezoTanevNeve, @kovetkezoTanev = 1,
@intezmenyCime = @intezmenyCime, @intezmenyAzonosito = @intezmenyAzonosito,
@intezmenyIranyitoSzam = @intezmenyIranyitoSzam, @intezmenyNeve = @intezmenyNeve, @intezmenyOMKod = @intezmenyOMKod, @intezmenyVaros = @intezmenyVaros,
@intezmenyIgazgato = @intezmenyIgazgato, @intezmenyTagkod = @intezmenyTagkod, @intezmenyEmail = @intezmenyEmail, @adminJelszo = @adminJelszo,
@fenntartoJelszo = @fenntartoJelszo, @kellABHet = @kellABHet, @teljesKreta = @teljesKreta
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