8
0

Serverumzug

This commit is contained in:
2026-04-13 12:08:30 +02:00
parent 3096e432aa
commit 82609f5fc1
48 changed files with 5489 additions and 618 deletions

View File

@@ -0,0 +1,114 @@
/* ============================================================================
SYSTEM_INFO TRIGGER
Voraussetzung: Tabelle [_meta].[TBDD_CFG_SYSTEM_INFO] und Prozeduren existieren
============================================================================ */
USE [DD_IIM];
GO
CREATE OR ALTER TRIGGER [_meta].[TBDD_CFG_SYSTEM_INFO_IO_INS]
ON [_meta].[TBDD_CFG_SYSTEM_INFO]
INSTEAD OF INSERT
AS
BEGIN
SET NOCOUNT ON;
IF TRY_CAST(SESSION_CONTEXT(N'_meta_allow_tbdd_system_info_dml') AS bit) = 1
BEGIN
IF TRY_CAST(SESSION_CONTEXT(N'_meta_tbdd_system_info_use_input_pk') AS bit) = 1
BEGIN
INSERT INTO [_meta].[TBDD_CFG_SYSTEM_INFO]
(
[PK_CFG_SYSTEM_INFO_ID],
[SYSTEM_VERSION],
[COMMENT],
[CREATED_WHO],
[CREATED_WHEN],
[CHANGED_WHO],
[CHANGED_WHEN]
)
SELECT
i.[PK_CFG_SYSTEM_INFO_ID],
i.[SYSTEM_VERSION],
i.[COMMENT],
i.[CREATED_WHO],
i.[CREATED_WHEN],
i.[CHANGED_WHO],
i.[CHANGED_WHEN]
FROM inserted i;
END
ELSE
BEGIN
INSERT INTO [_meta].[TBDD_CFG_SYSTEM_INFO]
(
[SYSTEM_VERSION],
[COMMENT],
[CREATED_WHO],
[CREATED_WHEN],
[CHANGED_WHO],
[CHANGED_WHEN]
)
SELECT
i.[SYSTEM_VERSION],
i.[COMMENT],
i.[CREATED_WHO],
i.[CREATED_WHEN],
i.[CHANGED_WHO],
i.[CHANGED_WHEN]
FROM inserted i;
END;
RETURN;
END;
THROW 51001, 'Direktes INSERT auf [_meta].[TBDD_CFG_SYSTEM_INFO] ist nicht erlaubt. Bitte Prozedur [_meta].[PRDD_UPSERT_SYSTEM_INFO] verwenden.', 1;
END;
GO
CREATE OR ALTER TRIGGER [_meta].[TBDD_CFG_SYSTEM_INFO_IO_UPD]
ON [_meta].[TBDD_CFG_SYSTEM_INFO]
INSTEAD OF UPDATE
AS
BEGIN
SET NOCOUNT ON;
IF TRY_CAST(SESSION_CONTEXT(N'_meta_allow_tbdd_system_info_dml') AS bit) = 1
BEGIN
UPDATE t
SET t.[SYSTEM_VERSION] = i.[SYSTEM_VERSION],
t.[COMMENT] = i.[COMMENT],
t.[CREATED_WHO] = i.[CREATED_WHO],
t.[CREATED_WHEN] = i.[CREATED_WHEN],
t.[CHANGED_WHO] = i.[CHANGED_WHO],
t.[CHANGED_WHEN] = i.[CHANGED_WHEN]
FROM [_meta].[TBDD_CFG_SYSTEM_INFO] t
JOIN inserted i
ON i.[PK_CFG_SYSTEM_INFO_ID] = t.[PK_CFG_SYSTEM_INFO_ID];
RETURN;
END;
THROW 51002, 'Direktes UPDATE auf [_meta].[TBDD_CFG_SYSTEM_INFO] ist nicht erlaubt. Bitte Prozedur [_meta].[PRDD_UPSERT_SYSTEM_INFO] verwenden.', 1;
END;
GO
CREATE OR ALTER TRIGGER [_meta].[TBDD_CFG_SYSTEM_INFO_IO_DEL]
ON [_meta].[TBDD_CFG_SYSTEM_INFO]
INSTEAD OF DELETE
AS
BEGIN
SET NOCOUNT ON;
IF TRY_CAST(SESSION_CONTEXT(N'_meta_allow_tbdd_system_info_dml') AS bit) = 1
BEGIN
DELETE t
FROM [_meta].[TBDD_CFG_SYSTEM_INFO] t
JOIN deleted d
ON d.[PK_CFG_SYSTEM_INFO_ID] = t.[PK_CFG_SYSTEM_INFO_ID];
RETURN;
END;
THROW 51003, 'Direktes DELETE auf [_meta].[TBDD_CFG_SYSTEM_INFO] ist nicht erlaubt. Bitte Prozedur [_meta].[PRDD_DELETE_SYSTEM_INFO] verwenden.', 1;
END;
GO