diff --git a/00_DB_SETUP_SINGLE/01_DD_ECM/CreateDBObjects.sql b/00_DB_SETUP_SINGLE/01_DD_ECM/CreateDBObjects.sql index f9d754c..688a715 100644 --- a/00_DB_SETUP_SINGLE/01_DD_ECM/CreateDBObjects.sql +++ b/00_DB_SETUP_SINGLE/01_DD_ECM/CreateDBObjects.sql @@ -35,7 +35,7 @@ AS UPDATE TBDD_BASECONFIG SET CHANGED_WHEN = GETDATE() FROM INSERTED WHERE TBDD_BASECONFIG.GUID = INSERTED.GUID GO -INSERT INTO TBDD_BASECONFIG (GUID,WD_UNICODE,DB_VERSION) VALUES (1,1,'1.9.7.9') +INSERT INTO TBDD_BASECONFIG (GUID,WD_UNICODE,DB_VERSION) VALUES (1,1,'1.9.8.2') GO CREATE TABLE [dbo].[TBDD_3RD_PARTY_MODULES]( [GUID] [int] IDENTITY(1,1) NOT NULL, @@ -60,7 +60,11 @@ CREATE TABLE [dbo].[TBDD_3RD_PARTY_MODULES]( [CHANGED_WHEN] [datetime] NULL ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] GO - +ALTER TABLE [dbo].[TBDD_3RD_PARTY_MODULES] ADD CONSTRAINT [PK_TBDD_3RD_PARTY_MODULES] PRIMARY KEY CLUSTERED + ( + [GUID] ASC + )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]; +GO ALTER TABLE [dbo].[TBDD_3RD_PARTY_MODULES] ADD CONSTRAINT [DF_TBDD_3RD_PARTY_MODULES_ACTIVE] DEFAULT ((0)) FOR [ACTIVE] GO @@ -68,7 +72,12 @@ ALTER TABLE [dbo].[TBDD_3RD_PARTY_MODULES] ADD CONSTRAINT [DF_TBDD_3RD_PARTY_MO GO INSERT INTO TBDD_3RD_PARTY_MODULES (ACTIVE,NAME,LICENSE) VALUES (1,'GDPICTURE','21182889975216572111813147150675976632') GO - +INSERT INTO TBDD_3RD_PARTY_MODULES (NAME,LICENSE,[VERSION],ACTIVE) VALUES ( + 'GDPICTURE', + 'kG1Qf9PwmqgR8aDmIW2zI_ebj48RzqAJegRxcystEmkbTGQqfkNBdFOXIb6C_A00Ra8zZkrHdfjqzOPXK7kgkF2YDhvrqKfqh4WDug2vOt0qO31IommzkANSuLjZ4zmraoubyEVd25rE3veQ2h_j7tGIoH_LyIHmy24GaXsxdG0yCzIBMdiLbMMMDwcPY-809KeZ83Grv76OVhFvcbBWyYc251vou1N-kGg5_ZlHDgfWoY85gTLRxafjD3KS_i9ARW4BMiy36y8n7UP2jN8kGRnW_04ubpFtfjJqvtsrP_J9D0x7bqV8xtVtT5JI6dpKsVTiMgDCrIcoFSo5gCC1fw9oUopX4TDCkBQttO4-WHBlOeq9dG5Yb0otonVmJKaQA2tP6sMR-lZDs3ql_WI9t91yPWgpssrJUxSHDd27_LMTH_owJIqkF3NOJd9mYQuAv22oNKFYbH8e41pVKb8cT33Y9CgcQ_sy6YDA5PTuIRi67mjKge_nD9rd0IN213Ir9M_EFWqg9e4haWzIdHXQUo0md70kVhPX4UIH_BKJnxEEnFfoFRNMh77bB0N4jkcBEHPl-ghOERv8dOztf4vCnNpzzWvcLD2cqWIm6THy8XGGq9h4hp8aEreRleSMwv9QQAC7mjLwhQ1rBYkpUHlpTjhTLnMwHknl6HH0Z6zzmsgkRKVyfquv94Pd7QbQfZrRka0ss_48pf9p8hAywEn81Q==', + '11.2024', + 1); +GO CREATE TABLE TBDD_SERV_EXT_PROGRAMS @@ -702,6 +711,7 @@ CREATE TABLE TBDD_USER_MODULE_LOG_IN MACHINE_NAME VARCHAR(250) NOT NULL DEFAULT '', MODULE VARCHAR(50), VERSION_CLIENT VARCHAR(30), + LANGUAGE_OVERRIDE VARCHAR(5), ADDED_WHEN DATETIME DEFAULT GETDATE() NOT NULL, CONSTRAINT PK_TBDD_USER_MODULE_LOG_IN PRIMARY KEY (GUID) ) @@ -1004,7 +1014,7 @@ CREATE TABLE TBDD_INDEX_MAN OPTIONAL BIT DEFAULT 0 NOT NULL, SAVE_VALUE BIT DEFAULT 0 NOT NULL, VKT_ADD_ITEM BIT NOT NULL DEFAULT 0, - VKT_PREVENT_MULTIPLE_VALUES BIT NOT NULL DEFAULT 1, + VKT_PREVENT_MULTIPLE_VALUES BIT NOT NULL DEFAULT 0, MULTISELECT BIT NOT NULL DEFAULT 0, ACTIVE BIT DEFAULT 1 NOT NULL, -- 1 - Index aktiv, bei 0 - inaktiv. ADDED_WHO VARCHAR(50) DEFAULT 'DD_ECM DEFAULT' NOT NULL, @@ -1225,6 +1235,10 @@ GO INSERT INTO TBDD_SQL_COMMANDS (TITLE,SQL_COMMAND) VALUES ('GHOST_SELECT',' SELECT T.USERNAME,T.NAME, T.[PRENAME],T.EMAIL FROM TBDD_USER T ORDER BY USERNAME') GO +INSERT INTO TBDD_SQL_COMMANDS (TITLE,SQL_COMMAND) VALUES +('VWDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE_ITEMS',' +SELECT * FROM [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_CUST_RESULT] (''@MSG_ID'') ORDER BY ORDER_SEQ') +GO CREATE TABLE TBDD_GUI_LANGUAGE_PHRASE ( GUID INTEGER NOT NULL IDENTITY (1, 1), @@ -1460,6 +1474,36 @@ CREATE TABLE [dbo].[TBDD_MONITORING_RESULT]( ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] GO +CREATE TABLE TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE +( + GUID INT IDENTITY(1,1), + SPECNAME VARCHAR(100) NOT NULL, + Row_Caption VARCHAR(250) NOT NULL, + Area VARCHAR(100) NOT NULL, + xPosition INTEGER NOT NULL DEFAULT 10, + --yPosition INTEGER NOT NULL, + SequenceItem INTEGER NOT NULL DEFAULT 1, + Y_eq_lastrow BIT NOT NULL DEFAULT 0, + Display BIT NOT NULL DEFAULT 1, + Active BIT NOT NULL DEFAULT 1, + AddedWho VARCHAR(50) DEFAULT 'DD_ECM DEFAULT' NOT NULL, + AddedWhen DATETIME DEFAULT GETDATE(), + ChangedWho VARCHAR(50), + ChangedWhen DATETIME, + CONSTRAINT PK_TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE PRIMARY KEY (GUID), + CONSTRAINT UNIQUE_TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE UNIQUE(SPECNAME) +) +GO +------------------------------------------------------------------------------ + +CREATE TRIGGER TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE_AFT_UPD ON TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE +FOR UPDATE +AS + UPDATE TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE SET ChangedWhen = GETDATE() FROM INSERTED WHERE TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE.GUID = INSERTED.GUID +GO + + + --PROCEDURES -- 20.09.2024 MS @MODULE_SHORT eingesetzt @@ -1683,6 +1727,21 @@ CREATE TABLE TBDD_NOTIFICATIONS_USER_HISTORY ) GO --###### VIEWS ##### +CREATE VIEW VWDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE_ITEMS AS +SELECT + A.SPEC_NAME, + A.ITEM_VALUE, + B.Area, + B.Row_Caption, + B.xPosition, + B.Y_eq_lastrow, + B.SequenceItem, + B.Display, + A.REFERENCE_GUID +FROM + (SELECT * FROM TBEDMI_ITEM_VALUE ) A INNER JOIN + (SELECT * FROM TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE WHERE Active = 1) B ON A.SPEC_NAME = B.SPECNAME +GO CREATE VIEW [dbo].[VWDD_WM_ACCESS_RIGHTS_GROUP] AS SELECT AR.dwObjectID, UG.dwUserOrGROUPID, @@ -1810,8 +1869,8 @@ SELECT TOP 100 PERCENT T.SQL_ACTIVE, T.VALUE, T.[SEQUENCE], - T.VKT_OVERWRITE, - T.VKT_PREVENT_MULTIPLE_VALUES + T.VKT_OVERWRITE, + T.VKT_PREVENT_MULTIPLE_VALUES FROM TBDD_INDEX_AUTOM T INNER JOIN TBDD_DOKUMENTART T1 ON T.DOCTYPE_ID = T1.GUID AND T1.AKTIV = 1 @@ -1855,7 +1914,118 @@ AS GO --####Functions +CREATE OR ALTER FUNCTION [dbo].[FNDD_ZUGFERD_VIEW_RECEIPT_TAX] (@pMSGID VARCHAR(100)) +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,@INDEX INT = 402 + DECLARE cursGroupCounter CURSOR FOR + select GROUP_COUNTER from TBEDMI_ITEM_VALUE 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 INNER JOIN TBDD_ZUGFERD_VIEW_RECEIPT_TEMPLATE 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') 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 06.03.2025 INVOICE_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.SPEC_NAME NOT IN ('INVOICE_POSITION_AMOUNT','INVOICE_POSITION_NOTE', + 'INVOICE_TAXPOS_TAX_RATE','INVOICE_POSITION_ARTICLE','INVOICE_TAXPOS_AMOUNT', + 'INVOICE_TAXPOS_RATE','INVOICE_TAXPOS_TYPE','INVOICE_POSITION_TAX_AMOUNT') + 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_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 +--CHANGED 06.03.2025 INVOICE_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) +AS +BEGIN + DECLARE @GROUP_COUNTER INT,@INDEX INT = 15 + 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 + 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 WHERE REFERENCE_GUID = @pMSGID And A.SPEC_NAME IN ('INVOICE_POSITION_AMOUNT', + 'INVOICE_TAXPOS_TAX_RATE','INVOICE_POSITION_NOTE','INVOICE_POSITION_ARTICLE','INVOICE_POSITION_TAX_AMOUNT') AND GROUP_COUNTER = @GROUP_COUNTER ORDER BY B.SequenceItem + OPEN cursPosItems + FETCH NEXT FROM cursPosItems INTO @SPEC_NAME,@ITEM_VALUE,@Display + WHILE @@FETCH_STATUS = 0 + BEGIN + SET @INDEX += 1 + INSERT INTO @TABLE (SPEC_NAME,ITEM_VALUE,Area,SequenceItem,Display) VALUES + (@SPEC_NAME,@ITEM_VALUE,'POSITION',@INDEX,@Display) + FETCH NEXT FROM cursPosItems INTO @SPEC_NAME,@ITEM_VALUE,@Display + END + CLOSE cursPosItems + DEALLOCATE cursPosItems + FETCH NEXT FROM cursGroupCounter INTO @GROUP_COUNTER + END + CLOSE cursGroupCounter + DEALLOCATE cursGroupCounter +RETURN +END +GO +-- ============================================= +-- Author: DD MS +-- Creation date: 25.06.20200 +-- ============================================= +CREATE FUNCTION [dbo].[FNDD_GET_DECIMAL_FOR_VARCHAR] (@INPUT VARCHAR(100)) +RETURNS DECIMAL(19,2) +AS +BEGIN + DECLARE @DEC_VALUE DECIMAL(19,2) + DECLARE @INPUT_SS_15 VARCHAR(5) + SELECT @INPUT_SS_15 = SUBSTRING(@INPUT,1,5) + IF @INPUT_SS_15 LIKE ('%.%') + BEGIN + DECLARE @REP_SS_15 VARCHAR(5) + SET @REP_SS_15 = REPLACE(@INPUT_SS_15,'.','') + SET @INPUT = REPLACE(@INPUT,@INPUT_SS_15,@REP_SS_15) + END + SELECT @INPUT = REPLACE(@INPUT,',','.') + SELECT @DEC_VALUE = convert(DECIMAL(19,2),@INPUT) + +RETURN @DEC_VALUE +END + +--SELECT [dbo].[FNDD_GET_DECIMAL_FOR_VARCHAR] ('15681444,56') +--GO +GO -- [FNDD_CONVERT_RTF2Text] -- ================================================================= -- Converts a RTF text to a regular text @@ -4847,7 +5017,7 @@ AS GO INSERT INTO [TBDD_CATALOG] (CAT_TITLE,CAT_STRING) VALUES ('DDSUPPORT_PORTAL','https://digitaldata.works/support/'); GO -CREATE VIEW [dbo].[VWDD_GROUPS_USER] AS +CREATE OR ALTER VIEW [dbo].[VWDD_GROUPS_USER] AS select USR.GUID AS USR_ID ,USR.USERNAME, @@ -4856,8 +5026,38 @@ select ,GU.ADDED_WHEN ,GU.ADDED_WHO from - dd_ecm.dbo.TBDD_GROUPS GRP INNER JOIN TBDD_GROUPS_USER GU ON GRP.GUID = GU.GROUP_ID - INNER JOIN TBDD_USER USR ON GU.USER_ID = USR.GUID -WHERE - USR.ACTIVE = 1 + TBDD_GROUPS GRP INNER JOIN TBDD_GROUPS_USER GU ON GRP.GUID = GU.GROUP_ID + INNER JOIN TBDD_USER USR ON GU.USER_ID = USR.GUID; +GO +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_SELLER_NAME', '', 'SELLER', 10, 6, 0, 1), +('INVOICE_SELLER_ADDRESS', '', 'SELLER', 10, 7, 0, 1), +('INVOICE_SELLER_POSTALCODE', '', 'SELLER', 10, 8, 0, 1), +('INVOICE_SELLER_CITY', '', 'SELLER', 35, 9, 1, 1), +('INVOICE_SELLER_TAX_ID', 'USt-ID/Seller tax ID:', 'SELLER', 10, 10, 0, 1), +('INVOICE_SELLER_ID', 'Lieferant-Nr/Seller ID:', 'SELLER', 10, 10, 0, 1), +('INVOICE_BUYER_NAME', '', 'BUYER', 10, 11, 0, 1), +('INVOICE_BUYER_ADRESS', '', 'BUYER', 10, 12, 0, 1), +('INVOICE_BUYER_POSTALCODE', '', 'BUYER', 10, 13, 0, 1), +('INVOICE_BUYER_CITY', '', 'BUYER', 35, 14, 1, 1), +--('STATIC_Y_SWITCH', '271', 'INTERNAL', 35, 15, 0, 0), +('INVOICE_POSITION_AMOUNT', '', 'POSITION', 10, 16, 0, 0), +('INVOICE_POSITION_ARTICLE', '', 'POSITION', 10, 17, 0, 0), +('INVOICE_TAXPOS_TAX_RATE', '', 'POSITION', 10, 18, 0, 0), +('INVOICE_POSITION_TAX_AMOUNT', '', 'POSITION', 10, 19, 0, 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_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 \ No newline at end of file diff --git a/00_DB_SETUP_SINGLE/01_DD_ECM/Update/1.9.8.0.sql b/00_DB_SETUP_SINGLE/01_DD_ECM/Update/Added2Main_script/1.9.8.0.sql similarity index 100% rename from 00_DB_SETUP_SINGLE/01_DD_ECM/Update/1.9.8.0.sql rename to 00_DB_SETUP_SINGLE/01_DD_ECM/Update/Added2Main_script/1.9.8.0.sql diff --git a/00_DB_SETUP_SINGLE/01_DD_ECM/Update/1.9.8.1.sql b/00_DB_SETUP_SINGLE/01_DD_ECM/Update/Added2Main_script/1.9.8.1.sql similarity index 100% rename from 00_DB_SETUP_SINGLE/01_DD_ECM/Update/1.9.8.1.sql rename to 00_DB_SETUP_SINGLE/01_DD_ECM/Update/Added2Main_script/1.9.8.1.sql diff --git a/00_DB_SETUP_SINGLE/01_DD_ECM/Update/1.9.8.2.sql b/00_DB_SETUP_SINGLE/01_DD_ECM/Update/Added2Main_script/1.9.8.2.sql similarity index 100% rename from 00_DB_SETUP_SINGLE/01_DD_ECM/Update/1.9.8.2.sql rename to 00_DB_SETUP_SINGLE/01_DD_ECM/Update/Added2Main_script/1.9.8.2.sql diff --git a/00_DB_SETUP_SINGLE/01_DD_ECM/Update/1.9.8.3.sql b/00_DB_SETUP_SINGLE/01_DD_ECM/Update/Added2Main_script/1.9.8.3.sql similarity index 78% rename from 00_DB_SETUP_SINGLE/01_DD_ECM/Update/1.9.8.3.sql rename to 00_DB_SETUP_SINGLE/01_DD_ECM/Update/Added2Main_script/1.9.8.3.sql index 9babf5b..63493b8 100644 --- a/00_DB_SETUP_SINGLE/01_DD_ECM/Update/1.9.8.3.sql +++ b/00_DB_SETUP_SINGLE/01_DD_ECM/Update/Added2Main_script/1.9.8.3.sql @@ -58,4 +58,30 @@ BEGIN DEALLOCATE cursGroupCounter RETURN END +GO +-- ============================================= +-- Author: DD MS +-- Creation date: 25.06.20200 +-- ============================================= +CREATE FUNCTION [dbo].[FNDD_GET_DECIMAL_FOR_VARCHAR] (@INPUT VARCHAR(100)) +RETURNS DECIMAL(19,2) +AS +BEGIN + DECLARE @DEC_VALUE DECIMAL(19,2) + DECLARE @INPUT_SS_15 VARCHAR(5) + SELECT @INPUT_SS_15 = SUBSTRING(@INPUT,1,5) + IF @INPUT_SS_15 LIKE ('%.%') + BEGIN + DECLARE @REP_SS_15 VARCHAR(5) + SET @REP_SS_15 = REPLACE(@INPUT_SS_15,'.','') + SET @INPUT = REPLACE(@INPUT,@INPUT_SS_15,@REP_SS_15) + END + SELECT @INPUT = REPLACE(@INPUT,',','.') + SELECT @DEC_VALUE = convert(DECIMAL(19,2),@INPUT) + +RETURN @DEC_VALUE +END + +--SELECT [dbo].[FNDD_GET_DECIMAL_FOR_VARCHAR] ('15681444,56') +--GO GO \ No newline at end of file