310 lines
No EOL
9.7 KiB
Transact-SQL
310 lines
No EOL
9.7 KiB
Transact-SQL
GO
|
||
PRINT N'Creating [dbo].[T_TANULOERTEKELESLATTAMOZAS_OSSZES]...';
|
||
|
||
|
||
GO
|
||
CREATE VIEW [dbo].T_TANULOERTEKELESLATTAMOZAS_OSSZES
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOERTEKELESLATTAMOZAS
|
||
GO
|
||
PRINT N'Creating [dbo].[T_TANULOESEMENYLATTAMOZAS_OSSZES]...';
|
||
|
||
|
||
GO
|
||
CREATE VIEW [dbo].T_TANULOESEMENYLATTAMOZAS_OSSZES
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOESEMENYLATTAMOZAS
|
||
GO
|
||
PRINT N'Creating [dbo].[T_TANULOMULASZTASLATTAMOZAS_OSSZES]...';
|
||
|
||
|
||
GO
|
||
CREATE VIEW [dbo].T_TANULOMULASZTASLATTAMOZAS_OSSZES
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOMULASZTASLATTAMOZAS
|
||
|
||
GO
|
||
|
||
|
||
--------------------
|
||
|
||
|
||
CREATE PROCEDURE [dbo].[sp_AddNewSchemaViews]
|
||
@IntezmenyId int,
|
||
@IntezmenyAzonosito nvarchar(30),
|
||
@TanevId int
|
||
AS
|
||
BEGIN
|
||
|
||
DECLARE @IntezmenyTemplate nvarchar(50) = 'KR_'+@IntezmenyAzonosito
|
||
DECLARE @Schema nvarchar(50) = @IntezmenyTemplate+'_Schema'
|
||
DECLARE @SchemaUser nvarchar(50) = @IntezmenyTemplate + '_user'
|
||
DECLARE @AktivTanev nvarchar(500)
|
||
DECLARE @Sql nvarchar(max)
|
||
|
||
/*============================================================================*/
|
||
/* View : T_TANULOERTEKELESLATTAMOZAS */
|
||
/*============================================================================*/
|
||
/* Package: Kreta */
|
||
IF OBJECT_ID('['+@Schema+'].T_TANULOERTEKELESLATTAMOZAS', 'V') IS NOT NULL BEGIN
|
||
SET @Sql = N'EXEC sp_refreshview ''['+@Schema+'].T_TANULOERTEKELESLATTAMOZAS'''
|
||
EXEC sp_executesql @Sql
|
||
|
||
IF OBJECT_ID('['+@Schema+'].T_TANULOERTEKELESLATTAMOZAS_OSSZES', 'V') IS NOT NULL BEGIN
|
||
SET @Sql = N'EXEC sp_refreshview ''['+@Schema+'].T_TANULOERTEKELESLATTAMOZAS_OSSZES'''
|
||
EXEC sp_executesql @Sql
|
||
END
|
||
END
|
||
ELSE BEGIN
|
||
/* Ha nem l<>tezik a view, akkor l<>trehozzuk */
|
||
IF (SELECT COUNT(1)
|
||
FROM INFORMATION_SCHEMA.COLUMNS
|
||
WHERE TABLE_NAME = N'T_TANULOERTEKELESLATTAMOZAS' AND TABLE_SCHEMA = 'dbo' AND COLUMN_NAME = 'C_TANEVID'
|
||
) > 0
|
||
BEGIN
|
||
SET @AktivTanev = N' C_TANEVID = '+ CAST(@TanevId as nvarchar) +' AND '
|
||
END
|
||
ELSE
|
||
BEGIN
|
||
SET @AktivTanev = N''
|
||
END
|
||
|
||
IF (SELECT COUNT(1)
|
||
FROM INFORMATION_SCHEMA.COLUMNS
|
||
WHERE TABLE_NAME = N'T_TANULOERTEKELESLATTAMOZAS' AND TABLE_SCHEMA = 'dbo' AND COLUMN_NAME = 'C_INTEZMENYID'
|
||
) > 0
|
||
BEGIN
|
||
/* T_TANULOERTEKELESLATTAMOZAS */
|
||
SET @Sql = N'CREATE VIEW ['+@Schema+'].T_TANULOERTEKELESLATTAMOZAS
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOERTEKELESLATTAMOZAS
|
||
WHERE '+@AktivTanev+' (TOROLT = ''F'') AND C_INTEZMENYID = '+CAST(@IntezmenyId as nvarchar)
|
||
EXECUTE sp_executesql @Sql
|
||
|
||
/* T_TANULOERTEKELESLATTAMOZAS_OSSZES */
|
||
SET @Sql = N'CREATE VIEW ['+@Schema+'].T_TANULOERTEKELESLATTAMOZAS_OSSZES
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOERTEKELESLATTAMOZAS
|
||
WHERE C_INTEZMENYID = '+CAST(@IntezmenyId as nvarchar)
|
||
EXECUTE sp_executesql @Sql
|
||
END
|
||
ELSE
|
||
BEGIN
|
||
/* T_TANULOERTEKELESLATTAMOZAS */
|
||
SET @Sql = N'CREATE VIEW ['+@Schema+'].T_TANULOERTEKELESLATTAMOZAS
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOERTEKELESLATTAMOZAS
|
||
WHERE '+@AktivTanev+' (TOROLT = ''F'')'
|
||
EXECUTE sp_executesql @Sql
|
||
|
||
/* T_TANULOERTEKELESLATTAMOZAS_OSSZES */
|
||
SET @Sql = N'CREATE VIEW ['+@Schema+'].T_TANULOERTEKELESLATTAMOZAS_OSSZES
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOERTEKELESLATTAMOZAS'
|
||
EXECUTE sp_executesql @Sql
|
||
END
|
||
END
|
||
|
||
|
||
/*============================================================================*/
|
||
/* View : T_TANULOESEMENYLATTAMOZAS */
|
||
/*============================================================================*/
|
||
/* Package: Kreta */
|
||
IF OBJECT_ID('['+@Schema+'].T_TANULOESEMENYLATTAMOZAS', 'V') IS NOT NULL BEGIN
|
||
SET @Sql = N'EXEC sp_refreshview ''['+@Schema+'].T_TANULOESEMENYLATTAMOZAS'''
|
||
EXEC sp_executesql @Sql
|
||
|
||
IF OBJECT_ID('['+@Schema+'].T_TANULOESEMENYLATTAMOZAS_OSSZES', 'V') IS NOT NULL BEGIN
|
||
SET @Sql = N'EXEC sp_refreshview ''['+@Schema+'].T_TANULOESEMENYLATTAMOZAS_OSSZES'''
|
||
EXEC sp_executesql @Sql
|
||
END
|
||
END
|
||
ELSE BEGIN
|
||
/* Ha nem l<>tezik a view, akkor l<>trehozzuk */
|
||
IF (SELECT COUNT(1)
|
||
FROM INFORMATION_SCHEMA.COLUMNS
|
||
WHERE TABLE_NAME = N'T_TANULOESEMENYLATTAMOZAS' AND TABLE_SCHEMA = 'dbo' AND COLUMN_NAME = 'C_TANEVID'
|
||
) > 0
|
||
BEGIN
|
||
SET @AktivTanev = N' C_TANEVID = '+ CAST(@TanevId as nvarchar) +' AND '
|
||
END
|
||
ELSE
|
||
BEGIN
|
||
SET @AktivTanev = N''
|
||
END
|
||
|
||
IF (SELECT COUNT(1)
|
||
FROM INFORMATION_SCHEMA.COLUMNS
|
||
WHERE TABLE_NAME = N'T_TANULOESEMENYLATTAMOZAS' AND TABLE_SCHEMA = 'dbo' AND COLUMN_NAME = 'C_INTEZMENYID'
|
||
) > 0
|
||
BEGIN
|
||
/* T_TANULOESEMENYLATTAMOZAS */
|
||
SET @Sql = N'CREATE VIEW ['+@Schema+'].T_TANULOESEMENYLATTAMOZAS
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOESEMENYLATTAMOZAS
|
||
WHERE '+@AktivTanev+' (TOROLT = ''F'') AND C_INTEZMENYID = '+CAST(@IntezmenyId as nvarchar)
|
||
EXECUTE sp_executesql @Sql
|
||
|
||
/* T_TANULOESEMENYLATTAMOZAS_OSSZES */
|
||
SET @Sql = N'CREATE VIEW ['+@Schema+'].T_TANULOESEMENYLATTAMOZAS_OSSZES
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOESEMENYLATTAMOZAS
|
||
WHERE C_INTEZMENYID = '+CAST(@IntezmenyId as nvarchar)
|
||
EXECUTE sp_executesql @Sql
|
||
END
|
||
ELSE
|
||
BEGIN
|
||
/* T_TANULOESEMENYLATTAMOZAS */
|
||
SET @Sql = N'CREATE VIEW ['+@Schema+'].T_TANULOESEMENYLATTAMOZAS
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOESEMENYLATTAMOZAS
|
||
WHERE '+@AktivTanev+' (TOROLT = ''F'')'
|
||
EXECUTE sp_executesql @Sql
|
||
|
||
/* T_TANULOESEMENYLATTAMOZAS_OSSZES */
|
||
SET @Sql = N'CREATE VIEW ['+@Schema+'].T_TANULOESEMENYLATTAMOZAS_OSSZES
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOESEMENYLATTAMOZAS'
|
||
EXECUTE sp_executesql @Sql
|
||
END
|
||
END
|
||
|
||
|
||
/*============================================================================*/
|
||
/* View : T_TANULOMULASZTASLATTAMOZAS */
|
||
/*============================================================================*/
|
||
/* Package: Kreta */
|
||
IF OBJECT_ID('['+@Schema+'].T_TANULOMULASZTASLATTAMOZAS', 'V') IS NOT NULL BEGIN
|
||
SET @Sql = N'EXEC sp_refreshview ''['+@Schema+'].T_TANULOMULASZTASLATTAMOZAS'''
|
||
EXEC sp_executesql @Sql
|
||
|
||
IF OBJECT_ID('['+@Schema+'].T_TANULOMULASZTASLATTAMOZAS_OSSZES', 'V') IS NOT NULL BEGIN
|
||
SET @Sql = N'EXEC sp_refreshview ''['+@Schema+'].T_TANULOMULASZTASLATTAMOZAS_OSSZES'''
|
||
EXEC sp_executesql @Sql
|
||
END
|
||
END
|
||
ELSE BEGIN
|
||
/* Ha nem l<>tezik a view, akkor l<>trehozzuk */
|
||
IF (SELECT COUNT(1)
|
||
FROM INFORMATION_SCHEMA.COLUMNS
|
||
WHERE TABLE_NAME = N'T_TANULOMULASZTASLATTAMOZAS' AND TABLE_SCHEMA = 'dbo' AND COLUMN_NAME = 'C_TANEVID'
|
||
) > 0
|
||
BEGIN
|
||
SET @AktivTanev = N' C_TANEVID = '+ CAST(@TanevId as nvarchar) +' AND '
|
||
END
|
||
ELSE
|
||
BEGIN
|
||
SET @AktivTanev = N''
|
||
END
|
||
|
||
IF (SELECT COUNT(1)
|
||
FROM INFORMATION_SCHEMA.COLUMNS
|
||
WHERE TABLE_NAME = N'T_TANULOMULASZTASLATTAMOZAS' AND TABLE_SCHEMA = 'dbo' AND COLUMN_NAME = 'C_INTEZMENYID'
|
||
) > 0
|
||
BEGIN
|
||
/* T_TANULOMULASZTASLATTAMOZAS */
|
||
SET @Sql = N'CREATE VIEW ['+@Schema+'].T_TANULOMULASZTASLATTAMOZAS
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOMULASZTASLATTAMOZAS
|
||
WHERE '+@AktivTanev+' (TOROLT = ''F'') AND C_INTEZMENYID = '+CAST(@IntezmenyId as nvarchar)
|
||
EXECUTE sp_executesql @Sql
|
||
|
||
/* T_TANULOMULASZTASLATTAMOZAS_OSSZES */
|
||
SET @Sql = N'CREATE VIEW ['+@Schema+'].T_TANULOMULASZTASLATTAMOZAS_OSSZES
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOMULASZTASLATTAMOZAS
|
||
WHERE C_INTEZMENYID = '+CAST(@IntezmenyId as nvarchar)
|
||
EXECUTE sp_executesql @Sql
|
||
END
|
||
ELSE
|
||
BEGIN
|
||
/* T_TANULOMULASZTASLATTAMOZAS */
|
||
SET @Sql = N'CREATE VIEW ['+@Schema+'].T_TANULOMULASZTASLATTAMOZAS
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOMULASZTASLATTAMOZAS
|
||
WHERE '+@AktivTanev+' (TOROLT = ''F'')'
|
||
EXECUTE sp_executesql @Sql
|
||
|
||
/* T_TANULOMULASZTASLATTAMOZAS_OSSZES */
|
||
SET @Sql = N'CREATE VIEW ['+@Schema+'].T_TANULOMULASZTASLATTAMOZAS_OSSZES
|
||
AS
|
||
SELECT *
|
||
FROM dbo.T_TANULOMULASZTASLATTAMOZAS'
|
||
EXECUTE sp_executesql @Sql
|
||
END
|
||
END
|
||
|
||
END
|
||
|
||
GO
|
||
|
||
|
||
--------------------
|
||
|
||
|
||
DECLARE intezmenytanevekCursor CURSOR LOCAL FOR
|
||
SELECT T_INTEZMENY.ID, T_INTEZMENY.C_AZONOSITO, T_TANEV.ID
|
||
FROM T_INTEZMENY
|
||
INNER JOIN T_TANEV ON T_TANEV.C_INTEZMENYID = T_INTEZMENY.ID
|
||
WHERE T_TANEV.C_AKTIV = 'T' AND T_INTEZMENY.TOROLT = 'F'
|
||
ORDER BY T_INTEZMENY.ID
|
||
|
||
DECLARE @intezmenyId int, @intezmenyAzonosito nvarchar(30), @tanevId int
|
||
|
||
OPEN intezmenytanevekCursor
|
||
FETCH NEXT FROM intezmenytanevekCursor INTO @intezmenyId, @intezmenyAzonosito, @tanevId
|
||
|
||
WHILE @@FETCH_STATUS = 0
|
||
BEGIN
|
||
PRINT 'INTÉZMÉNY ID: ' + CAST(@intezmenyId AS NVARCHAR(10)) + ', INTÉZMÉNY AZONOSÍTÓ: ' + CAST(@intezmenyAzonosito AS NVARCHAR(30)) + ', TANÉV ID: ' + CAST(@tanevId AS NVARCHAR(10))
|
||
EXEC sp_AddNewSchemaViews @IntezmenyId = @intezmenyId, @IntezmenyAzonosito = @intezmenyAzonosito, @TanevId = @tanevId
|
||
|
||
FETCH NEXT FROM intezmenytanevekCursor INTO @intezmenyId, @intezmenyAzonosito, @tanevId
|
||
END
|
||
|
||
CLOSE intezmenytanevekCursor
|
||
DEALLOCATE intezmenytanevekCursor
|
||
|
||
GO
|
||
|
||
|
||
--------------------
|
||
|
||
|
||
|
||
DROP PROCEDURE [dbo].[sp_AddNewSchemaViews]
|
||
GO
|
||
|
||
|
||
EXEC dev.sp_Global_GenerateAsyncAuditTriggerAll
|
||
GO
|
||
|
||
EXEC dev.sp_Global_GenerateAsyncAuditProcedureAll
|
||
GO
|
||
|
||
EXEC dev.sp_Global_GenerateAsyncAuditAuditPocessing
|
||
GO
|
||
|
||
ALTER QUEUE auditLog.[AuditQueue]
|
||
WITH ACTIVATION
|
||
(
|
||
STATUS = ON,
|
||
PROCEDURE_NAME = auditLog.usp_AuditProcessing,
|
||
MAX_QUEUE_READERS = 10,
|
||
EXECUTE AS 'Kreta_tech_user'
|
||
);
|
||
GO |