commit 11.12

This commit is contained in:
Developer01
2025-12-11 14:39:42 +01:00
parent b6a6495f52
commit 670f58e1fa
15 changed files with 229 additions and 123 deletions

View File

@@ -45,40 +45,41 @@ Insert INTO TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE
('INVOICE_BUYER_POSTALCODE', '', 'BUYER', 10, 17, 0, 1),
('INVOICE_BUYER_CITY', '', 'BUYER', 35, 18, 1, 1),
--('STATIC_Y_SWITCH', '271', 'INTERNAL', 35, 15, 0, 0),
('INVOICE_POSITION_AMOUNT', '', 'POSITION', 10, 20, 0, 0),
('INVOICE_POSITION_UNIT_TYPE', '', 'POSITION', 10, 21, 0, 0),
('INVOICE_POSITION_ARTICLE', '', 'POSITION', 10, 22, 0, 0),
('INVOICE_POSITION_ARTICLE_DESCRIPTION', '', 'POSITION', 10, 23, 0, 0),
('INVOICE_POSITION_NOTE', '', 'POSITION', 10, 24, 0, 0),
('INVOICE_TAXPOS_TAX_RATE', '', 'POSITION', 10, 25, 0, 0),
('INVOICE_POSITION_TAX_AMOUNT', '', 'POSITION', 10, 26, 0, 1),
('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),
('POSITION_ALLOWANCE_ACTUAL_AMOUNT', '', 'ALLOWANCE',10, 100, 0, 1),
('POSITION_ALLOWANCE_REASON', '', 'ALLOWANCE',10, 101, 0, 1),
('POSITION_ALLOWANCE_REASON_CODE', '', 'ALLOWANCE',10, 102, 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, 0, 1),
('RECEIPT_ALLOWANCE_REASON_CODE', '', 'ALLOWANCE',10, 113, 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, 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_TAXPOS_RATE', '', 'TAXPOS', 10, 403, 1, 0),
('INVOICE_TAXPOS_AMOUNT', '', 'TAXPOS', 10, 404, 0, 0),
('INVOICE_TAXPOS_TYPE', '', 'TAXPOS', 10, 405, 1, 1),
('INVOICE_TAXPOS_EXEMPTION_REASON', '', 'EXEMPTION', 10, 406, 0, 1),
('INVOICE_TAXPOS_EXEMPTION_REASON_CODE', '', 'EXEMPTION', 10, 407, 0, 1),
('INVOICE_TAXPOS_EXEMPTION_REASON', '', 'EXEMPTION',10, 406, 0, 1),
('INVOICE_TAXPOS_EXEMPTION_REASON_CODE', '', 'EXEMPTION',10, 407, 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 13.11.2025 Y_eq_lastrow
--CHANGED 27.10.2025 Beide Allowance Varianten
ALTER FUNCTION [dbo].[FNDD_ZUGFERD_VIEW_ALLOWANCE_POSITIONS] (@pMSGID VARCHAR(100))
RETURNS @TABLE TABLE(SPEC_NAME VARCHAR(100),ITEM_VALUE VARCHAR(250),Area VARCHAR(60),SequenceItem INT,Display BIT)
CREATE OR ALTER FUNCTION [dbo].[FNDD_ZUGFERD_VIEW_ALLOWANCE_POSITIONS] (@pMSGID VARCHAR(100))
RETURNS @TABLE TABLE(SPEC_NAME VARCHAR(100),ITEM_VALUE VARCHAR(250),Area VARCHAR(60),SequenceItem INT,Display BIT,Y_eq_lastrow BIT)
AS
BEGIN
@@ -92,21 +93,21 @@ BEGIN
FETCH NEXT FROM cursGroupCounter INTO @GROUP_COUNTER
WHILE @@FETCH_STATUS = 0
BEGIN
DECLARE @SPEC_NAME VARCHAR(100),@ITEM_VALUE VARCHAR(100),@Display BIT
DECLARE @SPEC_NAME VARCHAR(100),@ITEM_VALUE VARCHAR(100),@Display BIT,@Y_eq_lastrow BIT
DECLARE cursPosItems CURSOR FOR
select A.SPEC_NAME,ITEM_VALUE,Display from TBEDMI_ITEM_VALUE A INNER JOIN TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE B ON A.SPEC_NAME = B.SPECNAME
select A.SPEC_NAME,ITEM_VALUE,Display,Y_eq_lastrow from TBEDMI_ITEM_VALUE A INNER JOIN TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE B ON A.SPEC_NAME = B.SPECNAME
WHERE REFERENCE_GUID = @pMSGID And A.SPEC_NAME IN (SELECT SPECNAME FROM TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE WHERE Area = 'ALLOWANCE')
AND A.GROUP_COUNTER = @GROUP_COUNTER
AND LEN(ITEM_VALUE) > 0
ORDER BY B.SequenceItem
OPEN cursPosItems
FETCH NEXT FROM cursPosItems INTO @SPEC_NAME,@ITEM_VALUE,@Display
FETCH NEXT FROM cursPosItems INTO @SPEC_NAME,@ITEM_VALUE,@Display,@Y_eq_lastrow
WHILE @@FETCH_STATUS = 0
BEGIN
SET @INDEX += 1
INSERT INTO @TABLE (SPEC_NAME,ITEM_VALUE,Area,SequenceItem,Display) VALUES
(@SPEC_NAME,@ITEM_VALUE,'ALLOWANCE',@INDEX,@Display)
FETCH NEXT FROM cursPosItems INTO @SPEC_NAME,@ITEM_VALUE,@Display
INSERT INTO @TABLE (SPEC_NAME,ITEM_VALUE,Area,SequenceItem,Display,Y_eq_lastrow) VALUES
(@SPEC_NAME,@ITEM_VALUE,'ALLOWANCE',@INDEX,@Display,@Y_eq_lastrow)
FETCH NEXT FROM cursPosItems INTO @SPEC_NAME,@ITEM_VALUE,@Display,@Y_eq_lastrow
END
CLOSE cursPosItems
DEALLOCATE cursPosItems
@@ -115,4 +116,68 @@ BEGIN
CLOSE cursGroupCounter
DEALLOCATE cursGroupCounter
RETURN
END
END
GO
--CHANGED 13.11.2025
--CHANGED 06.10.2025 Über Area
--CHANGED 02.06.2025 Nur Items mit INhalt
--CHANGED 25.04.2025 INV_POSITION_UNIT_TYPE integriert
--CHANGED 06.03.2025 INV_POS_NOTE integriert
CREATE OR ALTER FUNCTION [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_POSITIONS] (@pMSGID VARCHAR(100))
RETURNS @TABLE TABLE(SPEC_NAME VARCHAR(100),ITEM_VALUE VARCHAR(250),Area VARCHAR(60),SequenceItem INT,Display BIT,Y_eq_lastrow BIT)
AS
BEGIN
DECLARE @GROUP_COUNTER INT,@INDEX INT = 20
DECLARE cursGroupCounter CURSOR FOR
select GROUP_COUNTER from TBEDMI_ITEM_VALUE WHERE REFERENCE_GUID = @pMSGID And SPEC_NAME = 'INVOICE_POSITION_AMOUNT' 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),@Display BIT,@Y_eq_lastrow BIT
DECLARE cursPosItems CURSOR FOR
select A.SPEC_NAME,ITEM_VALUE,Display,B.Y_eq_lastrow from TBEDMI_ITEM_VALUE A INNER JOIN TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE B ON A.SPEC_NAME = B.SPECNAME
WHERE REFERENCE_GUID = @pMSGID And B.Area = 'POSITION' AND GROUP_COUNTER = @GROUP_COUNTER
AND LEN(ITEM_VALUE) > 0
ORDER BY B.SequenceItem
OPEN cursPosItems
FETCH NEXT FROM cursPosItems INTO @SPEC_NAME,@ITEM_VALUE,@Display,@Y_eq_lastrow
WHILE @@FETCH_STATUS = 0
BEGIN
SET @INDEX += 1
INSERT INTO @TABLE (SPEC_NAME,ITEM_VALUE,Area,SequenceItem,Display,Y_eq_lastrow) VALUES
(@SPEC_NAME,@ITEM_VALUE,'POSITION',@INDEX,@Display,@Y_eq_lastrow);
FETCH NEXT FROM cursPosItems INTO @SPEC_NAME,@ITEM_VALUE,@Display,@Y_eq_lastrow
END
CLOSE cursPosItems
DEALLOCATE cursPosItems
FETCH NEXT FROM cursGroupCounter INTO @GROUP_COUNTER
END
CLOSE cursGroupCounter
DEALLOCATE cursGroupCounter
RETURN
END
GO
--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
CREATE OR ALTER FUNCTION [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_CUST_RESULT] (@pMSGID VARCHAR(100))
RETURNS TABLE
AS RETURN
(
SELECt A.SPEC_NAME,A.ITEM_VALUE,A.Area,A.Row_Caption,A.xPosition,A.Y_eq_lastrow,A.SequenceItem ORDER_SEQ,A.Display FROM VWDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE_ITEMS A
WHERE REFERENCE_GUID = @pMSGID
AND A.Area NOT IN ('ALLOWANCE','POSITION')
UNION
SELECT SPEC_NAME,ITEM_VALUE,Area,'' Row_Caption,10 xPosition, Y_eq_lastrow,SequenceItem ORDER_SEQ, Display FROM [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_POSITIONS] (@pMSGID)
UNION
SELECT SPEC_NAME,ITEM_VALUE,Area,'' Row_Caption,10 xPosition, Y_eq_lastrow ,SequenceItem ORDER_SEQ, Display FROM [dbo].[FNDD_ZUGFERD_VIEW_ALLOWANCE_POSITIONS] (@pMSGID)
UNION
SELECT SPEC_NAME,ITEM_VALUE,Area,'' Row_Caption,10 xPosition, 0 Y_eq_lastrow,SequenceItem ORDER_SEQ, Display FROM [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_TAX] (@pMSGID)
UNION
SELECT SPECNAME SPEC_NAME,Row_Caption,Area,Row_Caption Row_Caption,10 xPosition, 0 Y_eq_lastrow,SequenceItem ORDER_SEQ, Display FROM TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE WHERE Area = 'INTERNAL'
)
GO