DD-ECm Zugferd templates
taskFLOW open Kontierung in separatem Fenster
This commit is contained in:
@@ -112,3 +112,69 @@ BEGIN
|
|||||||
END
|
END
|
||||||
GO
|
GO
|
||||||
|
|
||||||
|
USE [DD_ECM]
|
||||||
|
GO
|
||||||
|
|
||||||
|
/****** Object: UserDefinedFunction [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_CUST_RESULT] Script Date: 22.06.2026 15:29:36 ******/
|
||||||
|
SET ANSI_NULLS ON
|
||||||
|
GO
|
||||||
|
|
||||||
|
SET QUOTED_IDENTIFIER ON
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
--CHANGED 22.06.2026 VCHR in NVRCHR
|
||||||
|
--CHANGED 09.06.2026 Tabelle und Max(index)
|
||||||
|
--CHANGED 13.11.2025 Y_eq_lastRow
|
||||||
|
--CHANGED 16.09.2025 Nur auf die Area gehen
|
||||||
|
--CHANGED 25.04.2025 INV_POSITION_UNIT_TYPE integriert
|
||||||
|
--CHANGED 25.04.2025 INV_POSITION_UNIT_TYPE integriert
|
||||||
|
--CHANGED 06.03.2025 INV_POS_NOTE integriert
|
||||||
|
ALTER FUNCTION [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_CUST_RESULT] (@pMSGID NVARCHAR(100))
|
||||||
|
RETURNS @TABLE TABLE (SPEC_NAME NVARCHAR(100),ITEM_VALUE NVARCHAR(3500),Area NVARCHAR(60), Row_Caption NVARCHAR(100), SequenceItem INT,Display BIT,
|
||||||
|
XPosition Integer, Y_eq_lastrow BIT,ORDER_SEQ INT)
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
INSERT INTO @TABLE (
|
||||||
|
SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, XPosition, Y_eq_lastrow, ORDER_SEQ)
|
||||||
|
|
||||||
|
SELECt A.SPEC_NAME,A.ITEM_VALUE, A.Area, A.Row_Caption, A.SequenceItem, A.Display, A.xPosition, A.Y_eq_lastrow, A.SequenceItem
|
||||||
|
FROM VWDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE_ITEMS A
|
||||||
|
WHERE REFERENCE_GUID = @pMSGID
|
||||||
|
AND A.Area NOT IN ('ALLOWANCE','POSITION','INCLUDED_NOTE');
|
||||||
|
DECLARE @IDX INTEGER = (SELECT MAX(SequenceItem) FROM @TABLE)
|
||||||
|
--POSITIONEN EINTRAGEN
|
||||||
|
INSERT INTO @TABLE (
|
||||||
|
SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, XPosition, Y_eq_lastrow, ORDER_SEQ)
|
||||||
|
SELECT SPEC_NAME, ITEM_VALUE, Area, '', SequenceItem, Display, 10, Y_eq_lastrow, SequenceItem
|
||||||
|
FROM [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_POSITIONS] (@pMSGID,@IDX)
|
||||||
|
--TAXES EINTRAGEN
|
||||||
|
SELECT @IDX = MAX(SequenceItem) FROM @TABLE
|
||||||
|
INSERT INTO @TABLE (
|
||||||
|
SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, XPosition, Y_eq_lastrow, ORDER_SEQ)
|
||||||
|
SELECT SPEC_NAME, ITEM_VALUE, Area, '', SequenceItem, Display, 10, 0, SequenceItem
|
||||||
|
FROM [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_TAX] (@pMSGID,@IDX)
|
||||||
|
--NOTES EINTRAGEN
|
||||||
|
SELECT @IDX = MAX(SequenceItem) FROM @TABLE
|
||||||
|
INSERT INTO @TABLE (
|
||||||
|
SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, XPosition, Y_eq_lastrow, ORDER_SEQ)
|
||||||
|
SELECT SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, 10, Y_eq_lastrow, SequenceItem
|
||||||
|
FROM [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_INCL_NOTES] (@pMSGID,@IDX);
|
||||||
|
--ALLOWANCES EINTRAGEN
|
||||||
|
SELECT @IDX = MAX(SequenceItem) FROM @TABLE
|
||||||
|
INSERT INTO @TABLE (
|
||||||
|
SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, XPosition, Y_eq_lastrow, ORDER_SEQ)
|
||||||
|
SELECT SPEC_NAME, ITEM_VALUE, Area, '', SequenceItem, Display, 10, Y_eq_lastrow, SequenceItem
|
||||||
|
FROM [dbo].[FNDD_ZUGFERD_VIEW_ALLOWANCE_POSITIONS] (@pMSGID,@IDX);
|
||||||
|
|
||||||
|
INSERT INTO @TABLE (
|
||||||
|
SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, XPosition, Y_eq_lastrow, ORDER_SEQ)
|
||||||
|
SELECT SPECNAME, Row_Caption, Area, Row_Caption , SequenceItem, Display, 10, 0, SequenceItem
|
||||||
|
FROM TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE WHERE Area = 'INTERNAL'
|
||||||
|
RETURN
|
||||||
|
END
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
154
00_DB_SETUP_SINGLE/01_DD_ECM/Update/2.8.sql
Normal file
154
00_DB_SETUP_SINGLE/01_DD_ECM/Update/2.8.sql
Normal file
@@ -0,0 +1,154 @@
|
|||||||
|
UPDATE TBDD_BASECONFIG SET DB_VERSION = '2.7.0';
|
||||||
|
GO
|
||||||
|
DELETE FROM TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE;
|
||||||
|
Insert INTO TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE
|
||||||
|
(SPECNAME, Row_Caption, Area, xPosition, SequenceItem, Y_eq_lastrow, Display) values
|
||||||
|
('INVOICE_TYPE', '', 'TYPE', 10, 1, 0, 0),
|
||||||
|
('INVOICE_CURRENCY', '', 'TYPE', 10, 2, 0, 0),
|
||||||
|
('INVOICE_NUMBER', 'Rechnungsnummer/Invoice-No:', 'HEAD', 10, 3, 0, 1),
|
||||||
|
('INVOICE_DATE', 'Datum/Date:', 'HEAD', 10, 4, 0, 1),
|
||||||
|
('INVOICE_SERVICE_DATE','Leistungsdatum/Service date:', 'HEAD', 10, 5, 0, 1),
|
||||||
|
('INVOICE_COST_CENTER', 'BT-10 KäuferReferenz/BuyerRef.', 'HEAD', 10, 6, 0, 1),
|
||||||
|
('INVOICE_REFERENCE', 'BT-13 BestellReferenz/BORD:', 'HEAD', 10, 7, 0, 1),
|
||||||
|
('INVOICE_REFERENCE3', 'BT-19 KSt/CostCenter', 'HEAD', 10, 8, 0, 1),
|
||||||
|
('INVOICE_SELLER_NAME', '', 'SELLER', 10, 9, 0, 1),
|
||||||
|
('INVOICE_SELLER_ADDRESS', '', 'SELLER', 10, 10, 0, 1),
|
||||||
|
('INVOICE_SELLER_POSTALCODE', '', 'SELLER', 10, 11, 0, 1),
|
||||||
|
('INVOICE_SELLER_CITY', '', 'SELLER', 35, 12, 1, 1),
|
||||||
|
('INVOICE_SELLER_TAX_ID', 'USt-ID/Seller tax ID:', 'SELLER', 10, 13, 0, 1),
|
||||||
|
('INVOICE_SELLER_ID', 'Lieferant-Nr/Seller ID:', 'SELLER', 10, 14, 0, 1),
|
||||||
|
('INVOICE_BUYER_NAME', '', 'BUYER', 10, 15, 0, 1),
|
||||||
|
('INVOICE_BUYER_ADRESS2', '', 'BUYER', 10, 16, 0, 1),
|
||||||
|
('INVOICE_BUYER_ADRESS', '', 'BUYER', 10, 17, 0, 1),
|
||||||
|
('INVOICE_BUYER_POSTALCODE', '', 'BUYER', 10, 18, 0, 1),
|
||||||
|
('INVOICE_BUYER_CITY', '', 'BUYER', 35, 19, 1, 1),
|
||||||
|
--('STATIC_Y_SWITCH', '271', 'INTERNAL', 35, 15, 0, 0),
|
||||||
|
('INVOICE_POSITION_AMOUNT', '', 'POSITION', 10, 20, 0, 1),
|
||||||
|
('INVOICE_POSITION_UNIT_TYPE', '', 'POSITION', 10, 21, 1, 1),
|
||||||
|
('INVOICE_POSITION_ARTICLE', '', 'POSITION', 10, 22, 1, 1),
|
||||||
|
('INVOICE_POSITION_ARTICLE_DESCRIPTION', '', 'POSITION', 10, 23, 1, 1),
|
||||||
|
('INVOICE_POSITION_NOTE', '', 'POSITION', 10, 24, 1, 1),
|
||||||
|
('INVOICE_TAXPOS_TAX_RATE', '', 'POSITION', 10, 25, 1, 1),
|
||||||
|
('INVOICE_POSITION_TAX_AMOUNT', '', 'POSITION', 10, 26, 1, 1),
|
||||||
|
('INCLUDED_NOTE_CONTENT', '', 'INCLUDED_NOTE', 10, 40, 0, 1),
|
||||||
|
('POSITION_ALLOWANCE_ACTUAL_AMOUNT', '', 'ALLOWANCE',10, 100, 0, 1),
|
||||||
|
('POSITION_ALLOWANCE_REASON', '', 'ALLOWANCE',10, 101, 1, 1),
|
||||||
|
('POSITION_ALLOWANCE_REASON_CODE', '', 'ALLOWANCE',10, 102, 1, 1),
|
||||||
|
('POSITION_ALLOWANCE_CALCULATION_PERCENT', '', 'ALLOWANCE',10, 103, 0, 1),
|
||||||
|
('RECEIPT_ALLOWANCE_CHARGE_INDICATOR', '', 'ALLOWANCE',10, 110, 0, 0),
|
||||||
|
('RECEIPT_ALLOWANCE_ACTUAL_AMOUNT', '', 'ALLOWANCE',10, 111, 0, 1),
|
||||||
|
('RECEIPT_ALLOWANCE_REASON', '', 'ALLOWANCE',10, 112, 1, 1),
|
||||||
|
('RECEIPT_ALLOWANCE_REASON_CODE', '', 'ALLOWANCE',10, 113, 1, 1),
|
||||||
|
('RECEIPT_ALLOWANCE_CALCULATION_PERCENT', '', 'ALLOWANCE',10, 114, 0, 1),
|
||||||
|
('RECEIPT_ALLOWANCE_VAT_RATE', '', 'ALLOWANCE',10, 115, 0, 1),
|
||||||
|
('RECEIPT_ALLOWANCE_VAT_CODE', '', 'ALLOWANCE',10, 116, 1, 1),
|
||||||
|
('INVOICE_TOTAL_NET', 'Nettobetrag/Net amount:', 'AMOUNT', 10, 400, 0, 1),
|
||||||
|
('INVOICE_TOTAL_TAX', 'Steuerbetrag/Tax amount:', 'AMOUNT', 10, 401, 0, 1),
|
||||||
|
('INVOICE_TOTAL_GROSS', 'Bruttobetrag/Gross amount:', 'AMOUNT', 10, 402, 0, 1),
|
||||||
|
('INVOICE_TOTAL_CHARGE_AMOUNT', 'Zuschläge/Charge amount:', 'AMOUNT', 10, 403, 0, 1),
|
||||||
|
('INVOICE_TAXPOS_BASEAMOUNT','BT 116', 'TAXPOS', 10, 404, 0, 0),
|
||||||
|
('INVOICE_TAXPOS_RATE', 'BT 119', 'TAXPOS', 10, 405, 1, 0),
|
||||||
|
('INVOICE_TAXPOS_AMOUNT', 'BT 117', 'TAXPOS', 10, 406, 0, 0),
|
||||||
|
('INVOICE_TAXPOS_TYPE', 'BT 118', 'TAXPOS', 10, 407, 1, 1),
|
||||||
|
('INVOICE_TAXPOS_EXEMPTION_REASON', '', 'EXEMPTION',10, 450, 0, 1),
|
||||||
|
('INVOICE_TAXPOS_EXEMPTION_REASON_CODE', '', 'EXEMPTION',10, 451, 0, 1),
|
||||||
|
('INVOICE_PAYMENT_TERMS','', 'PAYMENT', 10, 500, 0, 1),
|
||||||
|
('INVOICE_PAYMENT_IBAN','IBAN:', 'PAYMENT', 10, 501, 0, 1),
|
||||||
|
('INVOICE_PAYMENT_BIC','BIC:', 'PAYMENT', 10, 502, 0, 1);
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
--Changed 08.06.2026 NLCK
|
||||||
|
ALTER FUNCTION [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_TAX] (@pMSGID VARCHAR(100), @INDEX INT)
|
||||||
|
RETURNS @TABLE TABLE(SPEC_NAME VARCHAR(100),ITEM_VALUE VARCHAR(250),Area VARCHAR(60),Row_Caption Varchar(100), SequenceItem INT,Display BIT)
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
DECLARE @GROUP_COUNTER INT
|
||||||
|
DECLARE cursGroupCounter CURSOR FOR
|
||||||
|
select GROUP_COUNTER from TBEDMI_ITEM_VALUE (NOLOCK) WHERE REFERENCE_GUID = @pMSGID And SPEC_NAME = 'INVOICE_TAXPOS_RATE' ORDER BY GROUP_COUNTER
|
||||||
|
OPEN cursGroupCounter
|
||||||
|
FETCH NEXT FROM cursGroupCounter INTO @GROUP_COUNTER
|
||||||
|
WHILE @@FETCH_STATUS = 0
|
||||||
|
BEGIN
|
||||||
|
DECLARE @SPEC_NAME VARCHAR(100),@ITEM_VALUE VARCHAR(100),@Row_Caption VARCHAR(100),@Display BIT
|
||||||
|
DECLARE cursPosItems CURSOR FOR
|
||||||
|
select
|
||||||
|
A.SPEC_NAME,ITEM_VALUE, B.Row_Caption, B.Display
|
||||||
|
from
|
||||||
|
TBEDMI_ITEM_VALUE A (NOLOCK) INNER JOIN
|
||||||
|
TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE (NOLOCK) B ON A.SPEC_NAME = B.SPECNAME
|
||||||
|
WHERE
|
||||||
|
REFERENCE_GUID = @pMSGID And A.SPEC_NAME IN ('INVOICE_TAXPOS_AMOUNT',
|
||||||
|
'INVOICE_TAXPOS_RATE','INVOICE_TAXPOS_TYPE','INVOICE_TAXPOS_BASEAMOUNT') AND GROUP_COUNTER = @GROUP_COUNTER ORDER BY B.SequenceItem
|
||||||
|
OPEN cursPosItems
|
||||||
|
FETCH NEXT FROM cursPosItems INTO @SPEC_NAME,@ITEM_VALUE,@Row_Caption,@Display
|
||||||
|
WHILE @@FETCH_STATUS = 0
|
||||||
|
BEGIN
|
||||||
|
SET @INDEX += 1
|
||||||
|
INSERT INTO @TABLE (SPEC_NAME,ITEM_VALUE,Area,Row_Caption,SequenceItem,Display) VALUES
|
||||||
|
(@SPEC_NAME,@ITEM_VALUE,'TAXPOS',@Row_Caption,@INDEX,@Display)
|
||||||
|
FETCH NEXT FROM cursPosItems INTO @SPEC_NAME,@ITEM_VALUE, @Row_Caption,@Display
|
||||||
|
END
|
||||||
|
CLOSE cursPosItems
|
||||||
|
DEALLOCATE cursPosItems
|
||||||
|
FETCH NEXT FROM cursGroupCounter INTO @GROUP_COUNTER
|
||||||
|
END
|
||||||
|
CLOSE cursGroupCounter
|
||||||
|
DEALLOCATE cursGroupCounter
|
||||||
|
RETURN
|
||||||
|
END
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
--CHANGED 30.06.2026 Reihenfolge und Taxpos
|
||||||
|
--CHANGED 22.06.2026 VCHR in NVRCHR
|
||||||
|
--CHANGED 09.06.2026 Tabelle und Max(index)
|
||||||
|
--CHANGED 13.11.2025 Y_eq_lastRow
|
||||||
|
--CHANGED 16.09.2025 Nur auf die Area gehen
|
||||||
|
--CHANGED 25.04.2025 INV_POSITION_UNIT_TYPE integriert
|
||||||
|
--CHANGED 25.04.2025 INV_POSITION_UNIT_TYPE integriert
|
||||||
|
--CHANGED 06.03.2025 INV_POS_NOTE integriert
|
||||||
|
ALTER FUNCTION [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_CUST_RESULT] (@pMSGID NVARCHAR(100))
|
||||||
|
RETURNS @TABLE TABLE (SPEC_NAME NVARCHAR(100),ITEM_VALUE NVARCHAR(3500),Area NVARCHAR(60), Row_Caption NVARCHAR(100), SequenceItem INT,Display BIT,
|
||||||
|
XPosition Integer, Y_eq_lastrow BIT,ORDER_SEQ INT,MYSOURCE NVARCHAR(100))
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
INSERT INTO @TABLE (
|
||||||
|
SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, XPosition, Y_eq_lastrow, ORDER_SEQ, MYSOURCE)
|
||||||
|
|
||||||
|
SELECt A.SPEC_NAME,A.ITEM_VALUE, A.Area, A.Row_Caption, A.SequenceItem, A.Display, A.xPosition, A.Y_eq_lastrow, A.SequenceItem, 'TEMPL_ITEM'
|
||||||
|
FROM VWDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE_ITEMS A
|
||||||
|
WHERE REFERENCE_GUID = @pMSGID
|
||||||
|
AND A.Area NOT IN ('ALLOWANCE','POSITION','INCLUDED_NOTE','TAXPOS');
|
||||||
|
--TAXES EINTRAGEN
|
||||||
|
DECLARE @IDX INTEGER = (SELECT MAX(SequenceItem) FROM @TABLE)
|
||||||
|
INSERT INTO @TABLE (
|
||||||
|
SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, XPosition, Y_eq_lastrow, ORDER_SEQ, MYSOURCE)
|
||||||
|
SELECT SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, 10, 0, SequenceItem, 'REC_TAX'
|
||||||
|
FROM [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_TAX] (@pMSGID,@IDX)
|
||||||
|
--POSITIONEN EINTRAGEN
|
||||||
|
SELECT @IDX = MAX(SequenceItem) FROM @TABLE
|
||||||
|
INSERT INTO @TABLE (
|
||||||
|
SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, XPosition, Y_eq_lastrow, ORDER_SEQ, MYSOURCE)
|
||||||
|
SELECT SPEC_NAME, ITEM_VALUE, Area, '', SequenceItem, Display, 10, Y_eq_lastrow, SequenceItem, 'REC_POS'
|
||||||
|
FROM [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_POSITIONS] (@pMSGID,@IDX)
|
||||||
|
--NOTES EINTRAGEN
|
||||||
|
SELECT @IDX = MAX(SequenceItem) FROM @TABLE
|
||||||
|
INSERT INTO @TABLE (
|
||||||
|
SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, XPosition, Y_eq_lastrow, ORDER_SEQ, MYSOURCE)
|
||||||
|
SELECT SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, 10, Y_eq_lastrow, SequenceItem, 'INCL_NOTES'
|
||||||
|
FROM [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_INCL_NOTES] (@pMSGID,@IDX);
|
||||||
|
--ALLOWANCES EINTRAGEN
|
||||||
|
SELECT @IDX = MAX(SequenceItem) FROM @TABLE
|
||||||
|
INSERT INTO @TABLE (
|
||||||
|
SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, XPosition, Y_eq_lastrow, ORDER_SEQ, MYSOURCE)
|
||||||
|
SELECT SPEC_NAME, ITEM_VALUE, Area, '', SequenceItem, Display, 10, Y_eq_lastrow, SequenceItem, 'ALLOW_POS'
|
||||||
|
FROM [dbo].[FNDD_ZUGFERD_VIEW_ALLOWANCE_POSITIONS] (@pMSGID,@IDX);
|
||||||
|
|
||||||
|
INSERT INTO @TABLE (
|
||||||
|
SPEC_NAME, ITEM_VALUE, Area, Row_Caption, SequenceItem, Display, XPosition, Y_eq_lastrow, ORDER_SEQ, MYSOURCE)
|
||||||
|
SELECT SPECNAME, Row_Caption, Area, Row_Caption , SequenceItem, Display, 10, 0, SequenceItem, 'INTERNAL'
|
||||||
|
FROM TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE WHERE Area = 'INTERNAL'
|
||||||
|
RETURN
|
||||||
|
END
|
||||||
|
GO
|
||||||
@@ -20,12 +20,95 @@ IF NOT EXISTS (
|
|||||||
FROM INFORMATION_SCHEMA.COLUMNS
|
FROM INFORMATION_SCHEMA.COLUMNS
|
||||||
WHERE TABLE_SCHEMA = 'dbo'
|
WHERE TABLE_SCHEMA = 'dbo'
|
||||||
AND TABLE_NAME = 'TBPM_PROFILE_CONTROLS'
|
AND TABLE_NAME = 'TBPM_PROFILE_CONTROLS'
|
||||||
AND COLUMN_NAME = 'DISPLAY_IN_SEPARATE_FORM'
|
AND COLUMN_NAME = 'DISPLAY_IN_SEPERATE_FORM'
|
||||||
)
|
)
|
||||||
BEGIN
|
BEGIN
|
||||||
PRINT 'Spalte existiert nicht';
|
PRINT 'Spalte existiert nicht';
|
||||||
ALTER TABLE TBPM_PROFILE_CONTROLS ADD DISPLAY_IN_SEPARATE_FORM BIT NOT NULL DEFAULT 0
|
ALTER TABLE TBPM_PROFILE_CONTROLS ADD DISPLAY_IN_SEPERATE_FORM BIT NOT NULL DEFAULT 0
|
||||||
|
END
|
||||||
|
GO
|
||||||
|
|
||||||
|
--24.06.2026 MS Kontierungstabelle as sep Form
|
||||||
|
ALTER TRIGGER [dbo].[TBPM_PROFILE_CONTROLS_AFT_UPD]
|
||||||
|
ON [dbo].[TBPM_PROFILE_CONTROLS]
|
||||||
|
FOR UPDATE
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
SET NOCOUNT ON;
|
||||||
|
|
||||||
|
DECLARE
|
||||||
|
@NAME VARCHAR(50),
|
||||||
|
@WHO VARCHAR(100),
|
||||||
|
@CTRL_TYPE VARCHAR(10),
|
||||||
|
@CTRL_TEXT VARCHAR(100),
|
||||||
|
@CTRL_CONFIG_TITLE VARCHAR(100);
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
@NAME = [NAME],
|
||||||
|
@WHO = CHANGED_WHO,
|
||||||
|
@CTRL_TYPE = CTRL_TYPE,
|
||||||
|
@CTRL_TEXT = CTRL_TEXT
|
||||||
|
FROM inserted;
|
||||||
|
|
||||||
|
IF NOT (UPDATE(NAME) OR UPDATE(CTRL_TEXT))
|
||||||
|
RETURN;
|
||||||
|
|
||||||
|
IF @CTRL_TYPE NOT IN ('LBL', 'CHK', 'BUTTON', 'TABLE')
|
||||||
|
RETURN;
|
||||||
|
|
||||||
|
SET @CTRL_CONFIG_TITLE = @CTRL_TYPE + '.' + @NAME;
|
||||||
|
SET @WHO = ISNULL(NULLIF(LTRIM(@WHO), ''), 'DD Automatic');
|
||||||
|
|
||||||
|
-- Eintrag 1: Standard-Titel (für TABLE nur initial mit angepasstem Text)
|
||||||
|
DECLARE @CTRL_TEXT_INSERT VARCHAR(100) = @CTRL_TEXT;
|
||||||
|
|
||||||
|
IF @CTRL_TYPE = 'TABLE'
|
||||||
|
AND NOT EXISTS (
|
||||||
|
SELECT 1 FROM TBDD_GUI_LANGUAGE_PHRASE WITH (NOLOCK)
|
||||||
|
WHERE MODULE = 'PM'
|
||||||
|
AND CAPT_TYPE = 'Caption Validator Control'
|
||||||
|
AND TITLE = @CTRL_CONFIG_TITLE
|
||||||
|
AND OBJ_NAME = 'frmValidator'
|
||||||
|
)
|
||||||
|
SET @CTRL_TEXT_INSERT = 'Öffne ' + @CTRL_TEXT + ' in separatem Fenster';
|
||||||
|
|
||||||
|
INSERT INTO TBDD_GUI_LANGUAGE_PHRASE
|
||||||
|
(MODULE, TITLE, LANGUAGE, CAPT_TYPE, STRING1, STRING2, ADDED_WHO, OBJ_NAME)
|
||||||
|
SELECT 'PM', @CTRL_CONFIG_TITLE, L.LANG_CODE,
|
||||||
|
'Caption Validator Control', @CTRL_TEXT_INSERT, '', @WHO, 'frmValidator'
|
||||||
|
FROM TBDD_GUI_LANGUAGE AS L WITH (NOLOCK)
|
||||||
|
WHERE NOT EXISTS (
|
||||||
|
SELECT 1 FROM TBDD_GUI_LANGUAGE_PHRASE WITH (NOLOCK)
|
||||||
|
WHERE MODULE = 'PM'
|
||||||
|
AND CAPT_TYPE = 'Caption Validator Control'
|
||||||
|
AND TITLE = @CTRL_CONFIG_TITLE
|
||||||
|
AND LANGUAGE = L.LANG_CODE
|
||||||
|
AND OBJ_NAME = 'frmValidator'
|
||||||
|
);
|
||||||
|
|
||||||
|
-- Eintrag 2: Nur für TABLE – FORMCAPTION mit originalem CTRL_TEXT und CAPT_TYPE 'FormTitle'
|
||||||
|
IF @CTRL_TYPE = 'TABLE'
|
||||||
|
BEGIN
|
||||||
|
DECLARE @CTRL_CONFIG_TITLE_FC VARCHAR(100) = @CTRL_TYPE + '.' + @NAME + '.FORMCAPTION';
|
||||||
|
|
||||||
|
INSERT INTO TBDD_GUI_LANGUAGE_PHRASE
|
||||||
|
(MODULE, TITLE, LANGUAGE, CAPT_TYPE, STRING1, STRING2, ADDED_WHO, OBJ_NAME)
|
||||||
|
SELECT 'PM', @CTRL_CONFIG_TITLE_FC, L.LANG_CODE,
|
||||||
|
'FormTitle', @CTRL_TEXT, '', @WHO, 'frmValidator'
|
||||||
|
FROM TBDD_GUI_LANGUAGE AS L WITH (NOLOCK)
|
||||||
|
WHERE NOT EXISTS (
|
||||||
|
SELECT 1 FROM TBDD_GUI_LANGUAGE_PHRASE WITH (NOLOCK)
|
||||||
|
WHERE MODULE = 'PM'
|
||||||
|
AND CAPT_TYPE = 'FormTitle'
|
||||||
|
AND TITLE = @CTRL_CONFIG_TITLE_FC
|
||||||
|
AND LANGUAGE = L.LANG_CODE
|
||||||
|
AND OBJ_NAME = 'frmValidator'
|
||||||
|
);
|
||||||
END
|
END
|
||||||
|
|
||||||
GO
|
-- Zeitstempel aktualisieren
|
||||||
|
UPDATE pc
|
||||||
|
SET pc.CHANGED_WHEN = GETDATE()
|
||||||
|
FROM TBPM_PROFILE_CONTROLS AS pc
|
||||||
|
JOIN inserted AS i ON pc.GUID = i.GUID;
|
||||||
|
END;
|
||||||
Reference in New Issue
Block a user