init
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
-- =============================================
|
||||
-- Description: az int<6E>zm<7A>nyhez tartoz<6F> schema, user <20>s login l<>trehoz<6F>sa
|
||||
-- =============================================
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('dbo.sp_Global_CreateSchema') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_Global_CreateSchema]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Global_CreateSchema]
|
||||
@pIntezmenyAzonosito NVARCHAR(30),
|
||||
@pSchemaUserPassword NVARCHAR(50)
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @schema NVARCHAR(50) = 'KR_' + @pIntezmenyAzonosito +'_Schema'
|
||||
DECLARE @schemaUser NVARCHAR(50) = 'KR_' + @pIntezmenyAzonosito + '_user'
|
||||
DECLARE @sql NVARCHAR(MAX)
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.schemas WHERE name = @schema)
|
||||
BEGIN
|
||||
SET @sql = N'CREATE SCHEMA [' + @schema + '] AUTHORIZATION [dbo]'
|
||||
EXEC sp_executesql @sql
|
||||
END
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM master.dbo.syslogins WHERE name = @schemaUser AND dbname = 'master')
|
||||
BEGIN
|
||||
SET @sql = N'CREATE LOGIN [' + @schemaUser + '] WITH PASSWORD = N''' + @pSchemaUserPassword + ''', DEFAULT_LANGUAGE = British'
|
||||
EXEC sp_executesql @sql
|
||||
END
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.sysusers WHERE name = @schemaUser)
|
||||
BEGIN
|
||||
SET @sql = N'CREATE USER [' + @schemaUser + '] FOR LOGIN [' + @schemaUser + '] WITH DEFAULT_SCHEMA = [' + @schema + ']'
|
||||
EXEC sp_executesql @sql
|
||||
|
||||
SET @sql = N'GRANT SELECT ON SCHEMA::[' + @schema + '] TO [' + @schemaUser + ']
|
||||
GRANT DELETE ON SCHEMA::[' + @schema + '] TO [' + @schemaUser + ']
|
||||
GRANT UPDATE ON SCHEMA::[' + @schema + '] TO [' + @schemaUser + ']
|
||||
GRANT INSERT ON SCHEMA::[' + @schema + '] TO [' + @schemaUser + ']
|
||||
GRANT EXECUTE ON SCHEMA::[' + @schema + '] TO [' + @schemaUser + ']
|
||||
GRANT VIEW DEFINITION ON SCHEMA::[dbo] TO [' + @schemaUser + ']'
|
||||
|
||||
EXEC sp_executesql @sql
|
||||
|
||||
SET @sql = N'GRANT CONNECT TO [' + @schemaUser + ']'
|
||||
EXEC sp_executesql @sql
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @sql = N'ALTER USER [' + @schemaUser + '] WITH LOGIN = [' + @schemaUser + '] '
|
||||
EXEC sp_executesql @sql
|
||||
END
|
||||
|
||||
END
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,111 @@
|
||||
-- =============================================
|
||||
-- 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(30),
|
||||
@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,
|
||||
@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, @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, @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, @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, @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
|
||||
|
Reference in New Issue
Block a user