This commit is contained in:
2024-03-21 17:47:57 +01:00
commit 9b7b684dc4
84 changed files with 6990 additions and 0 deletions

View File

@@ -0,0 +1,37 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_GET_NAVISION_VENDORACCOUNT_LIST] Script Date: 21.03.2024 17:18:06 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenwertfunktion zu Ausgabe der Kreditoren
-- 14.07.2023 MS Update BC ID
-- Stand: MK // 15.09.2021
CREATE FUNCTION [dbo].[FNCUST_GET_NAVISION_VENDORACCOUNT_LIST] (
@Mandant VARCHAR(8) -- Default SWB
)
RETURNS TABLE
AS
RETURN
-- Daten aus dem Vendor Modul
SELECT TOP 10000
LTRIM(RTRIM([No_])) as 'Lieferanten-Nummer'
----------------------------------------------------------------------------------------------
,LTRIM(RTRIM([Name])) as 'Lieferanten-Name'
----------------------------------------------------------------------------------------------
FROM [NTSERP\NTSSUITE].[NTSsuite2015].[dbo].[STW Bebra GmbH inkl Netz$Vendor$437dbf0e-84ff-417a-965d-ed2bb9650972]
GO

View File

@@ -0,0 +1,35 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_GET_NAVISION_VENDOR_INFO] Script Date: 21.03.2024 17:17:31 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenwertfunktion zu Ausgabe des Kreditor Namen
--14.07.2023 MS Update BC ID
-- Stand: MK // 15.09.2021
CREATE FUNCTION [dbo].[FNCUST_GET_NAVISION_VENDOR_INFO] (
@Mandant VARCHAR(8), -- Default VHM
@VendorNr VARCHAR(25)
)
RETURNS TABLE
AS
RETURN
-- Daten aus dem FiBu Modul
SELECT TOP 1 LTRIM(RTRIM([Name])) as 'Lieferanten-Name',
LTRIM(RTRIM([Our Account No_])) as 'KundenNr-Lieferant'
FROM [NTSERP\NTSSUITE].[NTSsuite2015].[dbo].[STW Bebra GmbH inkl Netz$Vendor$437dbf0e-84ff-417a-965d-ed2bb9650972]
WHERE LTRIM(RTRIM([No_])) = LTRIM(RTRIM(@VendorNr))
GO

View File

@@ -0,0 +1,42 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_GET_PM_MONITORING_HISTORY_GRID1] Script Date: 21.03.2024 17:19:03 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- TSQL Table function for PM Monitoring - Gird 1
-- Stand: MK // 04.02.2022
-- 04.02.2022 Initial
create FUNCTION [dbo].[FNCUST_GET_PM_MONITORING_HISTORY_GRID1] (
)
RETURNS TABLE
AS
RETURN
SELECT
[dwDocID] as 'DocID',
[szText37] as 'Dokumentart',
[szText38] as 'Lieferanten-Nummer',
[szText08] as 'Lieferanten-Name',
[szText36] as 'NAV-Nr.',
[lfFloat12] as 'Rechnungsbetrag',
[szText19] as 'ex. Rechnungs-Nr',
[szText33] as 'Status',
[szText32] as 'letzte Entscheidung',
[DD_ECM].dbo.FNDD_GET_WINDREAM_FILE_PATH ([dwDocID],0) as 'FULL_FILE_PATH'
FROM [windream60].[dbo].[BaseAttributes]
WHERE szText37 like 'Eingangsrechnung%'
or szText37 like 'Eingangsgutschrift%'
GO

View File

@@ -0,0 +1,104 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_GET_PM_MONITORING_HISTORY_GRID2] Script Date: 21.03.2024 17:19:26 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- TSQL Table function for PM Monitoring - Gird 2
-- Stand: MK // 30.01.2021
-- 30.01.2021 Initial
CREATE FUNCTION [dbo].[FNCUST_GET_PM_MONITORING_HISTORY_GRID2] (
@windreamDocID BIGINT,
@windreamAttrID INT = 10040,
@Seperator VARCHAR(1) = '~'
)
RETURNS @vTB_HISTORY TABLE ([GUID] [INT] IDENTITY(1,1) NOT NULL,
HISTORY_USER [VARCHAR](max) NULL,
HISTORY_STATE [VARCHAR](max) NULL,
HISTORY_DESCRIPTION [VARCHAR](max) NULL,
HISTORY_DATE [DATETIME] NULL,
HISTORY_PROFILE [VARCHAR](max) NULL)
AS
BEGIN
DECLARE @szValue VARCHAR(max)
DECLARE CURSOR_HISTORY CURSOR
FOR
SELECT [szValue]
FROM [windream60].[dbo].[Vector]
WHERE [dwAttrID] = @windreamAttrID
and [dwDocID] = @windreamDocID
order by dwRow ASC
OPEN CURSOR_HISTORY
FETCH NEXT FROM CURSOR_HISTORY INTO @szValue
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT INTO @vTB_HISTORY (HISTORY_USER,HISTORY_STATE,HISTORY_DESCRIPTION,HISTORY_DATE,HISTORY_PROFILE)
VALUES (
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 1),
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 2),
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 3),
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 4),
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 5)
)
FETCH NEXT FROM CURSOR_HISTORY INTO @szValue
END
CLOSE CURSOR_HISTORY
DEALLOCATE CURSOR_HISTORY
--select * from @vTB_HISTORY
RETURN;
END
--THIS FUNCTION IS NEEDED::
--SET ANSI_NULLS ON
--GO
--SET QUOTED_IDENTIFIER ON
--GO
--ALTER FUNCTION [dbo].[FNCUST_SPLIT_STRING_WITH_GUID]
--(
-- @Input NVARCHAR(MAX),
-- @Character CHAR(1)
--)
--RETURNS @Output TABLE (GUID INTEGER IDENTITY(1,1),
-- Item NVARCHAR(1000)
--)
--AS
--BEGIN
-- DECLARE @StartIndex INT, @EndIndex INT
-- SET @StartIndex = 1
-- IF SUBSTRING(@Input, LEN(@Input) - 1, LEN(@Input)) <> @Character
-- BEGIN
-- SET @Input = @Input + @Character
-- END
-- WHILE CHARINDEX(@Character, @Input) > 0
-- BEGIN
-- SET @EndIndex = CHARINDEX(@Character, @Input)
-- INSERT INTO @Output(Item)
-- SELECT SUBSTRING(@Input, @StartIndex, @EndIndex - 1)
-- SET @Input = SUBSTRING(@Input, @EndIndex + 1, LEN(@Input))
-- END
-- RETURN
--END
GO

View File

@@ -0,0 +1,116 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_GET_PM_MONITORING_HISTORY_GRID3] Script Date: 21.03.2024 17:19:51 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- TSQL Table function for PM Monitoring - Gird 3
-- Stand: MK // 05.11.2021
-- 05.11.2021 Ergänzung um
-- 31.10.2021 Ergänzung um brutto Betrag
-- 20.10.2021 Initial
CREATE FUNCTION [dbo].[FNCUST_GET_PM_MONITORING_HISTORY_GRID3] (
@windreamDocID BIGINT,
@windreamAttrID INT = 10041,
@Seperator VARCHAR(1) = '~'
)
RETURNS @vTB_HISTORY TABLE ([GUID] [INT] IDENTITY(1,1) NOT NULL,
[ORDER_NR] [VARCHAR](max) NULL, -- Auftragsnummer
[COST_UNIT] [VARCHAR](max) NULL, -- Kostenstelle
[IMPERSONAL_ACCOUNT] [VARCHAR](max) NULL, -- Sachkonto
[STORAGE] [VARCHAR](max) NULL, -- Lagermaterial Ja/Nein
[NET_AMOUNT] [VARCHAR](max) NULL, -- netto Betrag
[TAX_KEY] [VARCHAR](max) NULL, -- Steuerschlüssel
[AMOUNT] [VARCHAR](max) NULL, -- brutto Betrag
[BUSINESS_UNIT] [VARCHAR](max) NULL, -- Geschäftsbereich
[DEBIT_AND_CREDIT] [VARCHAR](max) NULL, -- Soll/Haben Kennzeichen
[OPTION] [VARCHAR](max) NULL) -- "Weiterbelastung" oder "----"
AS
BEGIN
DECLARE @szValue VARCHAR(max)
DECLARE CURSOR_HISTORY CURSOR
FOR
SELECT [szValue]
FROM [windream60].[dbo].[Vector]
WHERE [dwAttrID] = @windreamAttrID
and [dwDocID] = @windreamDocID
order by dwRow ASC
OPEN CURSOR_HISTORY
FETCH NEXT FROM CURSOR_HISTORY INTO @szValue
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT INTO @vTB_HISTORY ([ORDER_NR], [COST_UNIT], [IMPERSONAL_ACCOUNT], [STORAGE], [NET_AMOUNT], [TAX_KEY], [AMOUNT], [BUSINESS_UNIT], [DEBIT_AND_CREDIT], [OPTION])
VALUES (
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 1),
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 2),
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 3),
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 4),
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 5),
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 6),
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 7),
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 8),
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 9),
(SELECT [Item] FROM FNCUST_SPLIT_STRING_WITH_GUID (@szValue, @Seperator) where GUID = 10)
)
FETCH NEXT FROM CURSOR_HISTORY INTO @szValue
END
CLOSE CURSOR_HISTORY
DEALLOCATE CURSOR_HISTORY
--select * from @vTB_HISTORY
RETURN;
END
--THIS FUNCTION IS NEEDED::
--SET ANSI_NULLS ON
--GO
--SET QUOTED_IDENTIFIER ON
--GO
--ALTER FUNCTION [dbo].[FNCUST_SPLIT_STRING_WITH_GUID]
--(
-- @Input NVARCHAR(MAX),
-- @Character CHAR(1)
--)
--RETURNS @Output TABLE (GUID INTEGER IDENTITY(1,1),
-- Item NVARCHAR(1000)
--)
--AS
--BEGIN
-- DECLARE @StartIndex INT, @EndIndex INT
-- SET @StartIndex = 1
-- IF SUBSTRING(@Input, LEN(@Input) - 1, LEN(@Input)) <> @Character
-- BEGIN
-- SET @Input = @Input + @Character
-- END
-- WHILE CHARINDEX(@Character, @Input) > 0
-- BEGIN
-- SET @EndIndex = CHARINDEX(@Character, @Input)
-- INSERT INTO @Output(Item)
-- SELECT SUBSTRING(@Input, @StartIndex, @EndIndex - 1)
-- SET @Input = SUBSTRING(@Input, @EndIndex + 1, LEN(@Input))
-- END
-- RETURN
--END
GO

View File

@@ -0,0 +1,84 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_GET_PM_OVERVIEW] Script Date: 21.03.2024 17:20:23 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- Stand: MK // 28.10.2021
-- 28.10.2021 Mandant hinzugefügt, Dateiname verschoben
-- 20.09.2021 Initial
CREATE FUNCTION [dbo].[FNCUST_GET_PM_OVERVIEW] (
@USER_ID BIGINT
)
RETURNS TABLE
AS
RETURN (
/*## Following Columns need to be part of sql ##
TL_STATE Returns the TrafficLight-State for each doc (1=Red;2=Orange;3=Green)
PROFILE_ID TITLE Profile-Title used for default-grouping
DOC_ID
FULL_FILE_PATH
LAST USE
LAST EDITED */
--DECLARE @USER_ID INTEGER = 20;
SELECT
T.GUID,
DATEDIFF(DAY, [dbo].[FNPM_LAST_EDITED_DOC] (T.PROFIL_ID,T.DOC_ID),GETDATE()) AS [Zuletzt Bearbeitet],
Case DATEDIFF(DAY, [dbo].[FNPM_LAST_EDITED_DOC] (T.PROFIL_ID,T.DOC_ID),GETDATE())
WHEN 0 THEN 3
WHEN 1 THEN 3
WHEN 2 THEN 3
WHEN 3 THEN 2
WHEN 4 THEN 2
WHEN 5 THEN 2
WHEN 6 THEN 2
WHEN 7 THEN 2
ELSE 1 -- Wenn drei tage = gelb | wenn mehr als 7 tage = rot
END AS TL_STATE,
T.PROFIL_ID AS PROFILE_ID,
T.DOC_ID AS DocID,
T.FILE_PATH AS FULL_FILE_PATH,
TWM_BA.szText37 AS Dokumentart,
TWM_BA.szText36 AS 'NAV-Nr.',
--TWM_BA.lfFloat12 AS 'Rechnungsbetrag',
TWM_BA.szText19 AS 'ex-RechnungsNummer',
TWM_BA.szText38 AS 'Kreditor-Nummer',
TWM_BA.szText08 AS 'Kreditor-Name',
T.DMS_ERSTELLT_DATE AS 'Erhalten wann',
TWM_BA.szText22 AS 'Prüfer',
[dbo].[FNPM_LAST_WORKUSER_DOC] (T.PROFIL_ID,T.DOC_ID) AS 'Letzter Bearbeiter',
FORMAT(CONVERT(date, convert(varchar(8),[TWM_BA].[dwChangeDate]), 120), N'dd.MM.yyyy') AS 'Letzte Bearbeitung', --Default: [dbo].[FNPM_LAST_EDITED_DOC] (T.PROFIL_ID,T.DOC_ID) AS 'Letzte Bearbeitung',
--FORMAT(CONVERT(date, convert(varchar(8),[TWM_BA].[dwDate06]), 120), N'dd.MM.yyyy') AS 'Fällig am', --Default: [dbo].[FNPM_LAST_EDITED_DOC] (T.PROFIL_ID,T.DOC_ID) AS 'Letzte Bearbeitung',
TWM_BA.szText31 AS 'Mandant',
TWM_BA.szLongName AS Dateiname,
[dbo].[FNPM_PROFILE_GROUP_COLOR] (T.PROFIL_ID) AS 'GROUP_COLOR',
[dbo].[FNPM_PROFILE_GROUP_TEXT] (T.PROFIL_ID) AS 'GROUP_TEXT'
,0 CONV_YN
FROM
[FNPM_CUST_GET_DOC_IDS] (@USER_ID) TDOC
INNER JOIN TBPM_PROFILE_FILES T ON TDOC.DOC_GUID = T.GUID
INNER JOIN TBPM_PROFILE T1 ON T.PROFIL_ID = T1.GUID
INNER JOIN windream60.dbo.BaseAttributes TWM_BA ON T.DOC_ID = TWM_BA.dwDocID
AND T.EDIT = 0 AND T.IN_WORK = 0 AND T.ACTIVE = 1
--ORDER By T1.PRIORITY
-- SELECT * FROM [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] (20)
-- SELECT * FROM [dbo].[FNPM_CUST_GET_DOC_IDS] (2)
-- Aufruf aus ProcessManager:
-- Stand: MK // 28.01.2021
-- SELECT * FROM [FNCUST_GET_PM_OVERVIEW]({#USER#USER_ID})
-- ORDER BY [Zuletzt Bearbeitet] DESC
);
GO

View File

@@ -0,0 +1,49 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_GET_TC_WD_RIGHTS] Script Date: 21.03.2024 17:21:03 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Ermittle Gruppenrechte anhand des gesetzten Benutzernamens (WINDREAM STRING 22)
-- Stand: MK // 18.11.2021
-- 18.11.2021 Initial
CREATE FUNCTION [dbo].[FNCUST_GET_TC_WD_RIGHTS] (
@windreamDocID BIGINT
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT DISTINCT concat([wdGI].[szNTDomain],'\',[wdGI].[szGroupName]) as 'RightGroups'
FROM [windream60].[dbo].[BaseAttributes] as [wdBA] (NOLOCK)
INNER JOIN [windream60].[dbo].[UserInfo] as [wdUI] (NOLOCK) ON UPPER([wdBA].[szText22]) = UPPER([wdUI].[szUserName]) -- Username for UserID
INNER JOIN [windream60].[dbo].[UserGroup] as [wdU2G] (NOLOCK) ON [wdUI].[dwUserID] = [wdU2G].[dwUserOrGroupID] -- UserID for GroupsID
INNER JOIN [windream60].[dbo].[GroupInfo] as [wdGI] (NOLOCK) ON [wdU2G].[dwGroupID] = [wdGI].[dwGroupID] -- GroupIDs for Groupnames
INNER JOIN [DD_ECM].[dbo].[TBDD_USER] as [ddUI] (NOLOCK) ON [wdUI].[dwUserID] = [ddUI].[USERID_FK_INT_ECM] -- windream UserID to DD UserID
INNER JOIN [DD_ECM].[dbo].[TBDD_GROUPS_USER] as [ddU2G] (NOLOCK) ON [ddUI].[GUID] = [ddU2G].[USER_ID] -- UserID for GroupsID
INNER JOIN [DD_ECM].[dbo].[TBDD_GROUPS] as [ddGI] (NOLOCK) ON [ddU2G].[GROUP_ID] = [ddGI].[GUID] -- GroupIDs for Groupnames
WHERE UPPER([wdGI].[szGroupName]) = UPPER([ddGI].[NAME])
AND [wdBA].[dwDocID] = @windreamDocID
AND [wdGI].[szGroupName] not in ('Eingangsrechnungsworkflow-FinaleFreigeber')
AND [wdGI].[szGroupName] not like '%Scan-Erfasser%'
----------------------------------------------------------------------------------------------------------------------------------
-- TEST:
-- select * from [FNCUST_GET_TC_WD_RIGHTS](730231)
-- select * from [FNCUST_GET_TC_WD_RIGHTS](741102)
GO

View File

@@ -0,0 +1,42 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_GET_TC_WD_RIGHTS_FOR_FIBU] Script Date: 21.03.2024 17:21:32 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Ermittle Gruppenrechte anhand des gesetzten Benutzernamens (WINDREAM STRING 22)
-- Stand: MK // 10.12.2021
-- 10.12.2021 Initial
CREATE FUNCTION [dbo].[FNCUST_GET_TC_WD_RIGHTS_FOR_FIBU] (
@windreamDocID BIGINT
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT DISTINCT concat([wdGI].[szNTDomain],'\',[wdBA].[szText31],'-FiBu') as 'RightGroups'
FROM [windream60].[dbo].[BaseAttributes] as [wdBA] (NOLOCK)
INNER JOIN [windream60].[dbo].[UserInfo] as [wdUI] (NOLOCK) ON UPPER([wdBA].[szText22]) = UPPER([wdUI].[szUserName]) -- Username for UserID
INNER JOIN [windream60].[dbo].[UserGroup] as [wdU2G] (NOLOCK) ON [wdUI].[dwUserID] = [wdU2G].[dwUserOrGroupID] -- UserID for GroupsID
INNER JOIN [windream60].[dbo].[GroupInfo] as [wdGI] (NOLOCK) ON [wdU2G].[dwGroupID] = [wdGI].[dwGroupID] -- GroupIDs for Groupnames
WHERE [wdBA].[szText31] IS NOT NULL
AND [wdBA].[dwDocID] = @windreamDocID
----------------------------------------------------------------------------------------------------------------------------------
-- TEST:
-- select * from [FNCUST_GET_TC_WD_RIGHTS](730231)
-- select * from [FNCUST_GET_TC_WD_RIGHTS_FOR_FIBU](741102)
GO

View File

@@ -0,0 +1,42 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_GET_USER_MAILADRESS_LIST] Script Date: 21.03.2024 17:22:09 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- MK // 19.01.2021
-- Funktion sollte erweitert werden um die Mandanten Abfrage
CREATE FUNCTION [dbo].[FNCUST_GET_USER_MAILADRESS_LIST] (
@Mandant VARCHAR(8) -- Default SWB
)
RETURNS TABLE
AS
RETURN
SELECT [E-Mail Adressen Liste] from
(SELECT '' AS 'E-Mail Adressen Liste') as Query1
UNION
SELECT TOP 10000 [E-Mail Adressen Liste] from
(SELECT TOP 10000 [EMAIL] AS 'E-Mail Adressen Liste'
FROM [DD_ECM].[dbo].[TBDD_USER]
WHERE [EMAIL] LIKE '%@%'
ORDER BY [EMAIL]) as Query2
ORDER BY [E-Mail Adressen Liste] ASC
GO

View File

@@ -0,0 +1,150 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_GET_USER_REPRESENTATION_GROUPS] Script Date: 21.03.2024 17:23:22 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- TSQL Table function to determ/get user access group informations
-- Stand: MK // 20.09.2021
-- 21.09.2021 Änderung Parameter
-- 20.09.2021 Initial
CREATE FUNCTION [dbo].[FNCUST_GET_USER_REPRESENTATION_GROUPS] (
@USER VARCHAR(250)
)
RETURNS @USERGROUPS TABLE ([USER_ID] [BIGINT] NOT NULL, -- eg = 1
[USER_NAME] [VARCHAR](100) NULL, -- eg = admin
[USER_GROUP_IDS] [VARCHAR](100) NULL, -- eg = 35,36,37
[USER_GROUP_NAMES] [VARCHAR](250) NULL, -- eg = Netzbetrieb-Gas-Wasser-Wärme,Netzservice,Netzbetrieb-Strom
[USER_BUSINESS_DIVISION] [VARCHAR](250) NULL) -- eg = Technik
AS
BEGIN
DECLARE @USER_REPRESENTATION_COUNT INT,
@USER_ID BIGINT,
@USERNAME VARCHAR(100),
@REPR_GROUP VARCHAR(100),
@REPR_GROUPNAME VARCHAR(250),
@USER_GROUP_IDS VARCHAR(100),
@USER_GROUP_NAMES VARCHAR(250),
@USER_BUSINESS_DIVISION VARCHAR(250);
--=================================================-- Get count --=============================================--
SELECT @USER_REPRESENTATION_COUNT = COUNT(*)
FROM [dbo].[VWCUST_USER_REPRESENTATION]
WHERE [USERNAME] = @USER
--===============================================-- Get division --============================================--
SELECT TOP 1 @USER_BUSINESS_DIVISION = [REPR_GROUPNAME],
@USER_ID = [USER_ID]
FROM [dbo].[VWCUST_USER_REPRESENTATION]
WHERE [USERNAME] = @USER
IF (@USER_BUSINESS_DIVISION like 'SWB-Netz%')
SET @USER_BUSINESS_DIVISION = 'SWB-Netz'
ELSE IF (@USER_BUSINESS_DIVISION like 'SWB-Vertrieb%')
SET @USER_BUSINESS_DIVISION = 'SWB-Vertrieb'
ELSE IF (@USER_BUSINESS_DIVISION like 'SB-Abwasserbetrieb%')
SET @USER_BUSINESS_DIVISION = 'SB-Abwasserbetrieb'
ELSE IF (@USER_BUSINESS_DIVISION like 'SB-Bäderbetrieb%')
SET @USER_BUSINESS_DIVISION = 'SB-Bäderbetrieb'
ELSE -- shared services
SET @USER_BUSINESS_DIVISION = 'SWB-Netz'
--=============================================================================================================--
If (@USER_REPRESENTATION_COUNT = 1)
BEGIN
INSERT INTO @USERGROUPS ([USER_ID],[USER_NAME],[USER_GROUP_IDS],[USER_GROUP_NAMES],[USER_BUSINESS_DIVISION])
SELECT @USER_ID,
[USERNAME],
[REPR_GROUP],
[REPR_GROUPNAME],
@USER_BUSINESS_DIVISION
FROM [dbo].[VWCUST_USER_REPRESENTATION]
WHERE [USER_ID] = @USER_ID
ORDER BY [GUID] ASC
END
--=============================================================================================================--
Else If (@USER_REPRESENTATION_COUNT > 1)
BEGIN
DECLARE CURSOR_USER_REPRESENTATION_DATA CURSOR
FOR
SELECT @USER_ID, USERNAME, REPR_GROUP, REPR_GROUPNAME
FROM [dbo].[VWCUST_USER_REPRESENTATION]
WHERE USER_ID = @USER_ID
ORDER BY GUID ASC
OPEN CURSOR_USER_REPRESENTATION_DATA
FETCH NEXT FROM CURSOR_USER_REPRESENTATION_DATA INTO @USER_ID, @USERNAME, @REPR_GROUP, @REPR_GROUPNAME
WHILE @@FETCH_STATUS = 0
BEGIN
BEGIN
SET @USER_GROUP_IDs = CONCAT(@USER_GROUP_IDs,convert(VARCHAR(100),@REPR_GROUP),',')
SET @USER_GROUP_NAMEs = CONCAT(@USER_GROUP_NAMEs,convert(VARCHAR(100),@REPR_GROUPNAME),',')
END
FETCH NEXT FROM CURSOR_USER_REPRESENTATION_DATA INTO @USER_ID,@USERNAME,@REPR_GROUP,@REPR_GROUPNAME
END
CLOSE CURSOR_USER_REPRESENTATION_DATA
DEALLOCATE CURSOR_USER_REPRESENTATION_DATA
------------------------------------------------------------------------------------------------------------
INSERT INTO @USERGROUPS ([USER_ID],[USER_NAME],[USER_GROUP_IDS],[USER_GROUP_NAMES],[USER_BUSINESS_DIVISION])
SELECT TOP 1
@USER_ID,
[USERNAME],
substring(@USER_GROUP_IDS, 1, (len(@USER_GROUP_IDS) - 1)),
substring(@USER_GROUP_NAMES, 1, (len(@USER_GROUP_NAMES) - 1)),
@USER_BUSINESS_DIVISION
FROM [dbo].[VWCUST_USER_REPRESENTATION]
WHERE [USER_ID] = @USER_ID
ORDER BY [GUID] ASC
END
--=============================================================================================================--
Else
BEGIN
--------------------------------------------------------
INSERT INTO @USERGROUPS ([USER_ID],[USER_NAME],[USER_GROUP_IDS],[USER_GROUP_NAMES],[USER_BUSINESS_DIVISION])
SELECT @USER_ID,NULL,NULL,NULL,@USER_BUSINESS_DIVISION
END
-----------------------------------------------------------------------------------------------------------------
RETURN;
END
GO

View File

@@ -0,0 +1,35 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_GET_USER_USERNAME_LIST] Script Date: 21.03.2024 17:23:59 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- MK // 19.01.2021
-- Funktion sollte erweitert werden um die Mandanten Abfrage
create FUNCTION [dbo].[FNCUST_GET_USER_USERNAME_LIST] (
@Mandant VARCHAR(8) -- Default SWB
)
RETURNS TABLE
AS
RETURN
SELECT TOP 10000 [USERNAME] as 'Benutzername',
[PRENAME] as 'Vorname',
[NAME] as 'Nachname',
[EMAIL] as 'E-Mail Adresse'
FROM [DD_ECM].[dbo].[TBDD_USER]
WHERE [EMAIL] LIKE '%@%'
ORDER BY [USERNAME] ASC
GO

View File

@@ -0,0 +1,36 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_GET_USER_USERNAME_LIST_FINAL_APPROVER] Script Date: 21.03.2024 17:24:39 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- Stand: MK // 10.11.2021
CREATE FUNCTION [dbo].[FNCUST_GET_USER_USERNAME_LIST_FINAL_APPROVER] (
@Mandant VARCHAR(8) -- Default SWB
)
RETURNS TABLE
AS
RETURN
SELECT TOP 10000 [USERNAME] as 'Benutzername',
[PRENAME] as 'Vorname',
[NAME] as 'Nachname',
[EMAIL] as 'E-Mail Adresse'
FROM [DD_ECM].[dbo].[TBDD_USER]
WHERE [EMAIL] LIKE '%@%'
AND [GUID] IN (SELECT [USER_ID]
FROM [DD_ECM].[dbo].[TBDD_GROUPS_USER]
WHERE [GROUP_ID] in (44)) -- 44=Eingangsrechnungsworkflow-FinaleFreigeber;
ORDER BY [USERNAME] ASC
GO

View File

@@ -0,0 +1,78 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_CONTROL_DATA_PROFILEID_10] Script Date: 21.03.2024 17:25:11 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Setze Werte in anderen Feldern anhand der Auswahl der NAV Nummer
-- Stand: MK // 27.10.2021
-- 27.10.2021 Initial
-- PM Profil: SWB - ER 4.1 - Auffangprofil für alle neu angeforderten Dokumente
CREATE FUNCTION [dbo].[FNCUST_SET_PM_CONTROL_DATA_PROFILEID_10] (
@Mandant VARCHAR(200), -- = '{#CTRL#CMB_Mandant}'
@BelegNr VARCHAR(200) -- = '{#CTRL#LU_NAV-Nr.}'
)
RETURNS @vTB_RESULT TABLE ([Control2Set] [BIGINT] NOT NULL,
[Caption] [VARCHAR](max) NOT NULL,
[BackgroundColor] [VARCHAR](50) NOT NULL,
[FontColor] [VARCHAR](50) NOT NULL)
AS
BEGIN
DECLARE @ControlFremdreferenz_1 Varchar(10) = '427',
@ControlZahlungsart Varchar(10) = '435',
@ControlRechnungssummeBrutto Varchar(10) = '584',
@ControlSkontoRabattProzent Varchar(10) = '585',
@ControlSkontoRabattWert Varchar(10) = '590',
@ControlRechnungssummeBruttoAbzglSkontoRabatt Varchar(10) = '591';
DECLARE @Fremdreferenz_1 Varchar(200) = NULL,
@Zahlungsart Varchar(200) = NULL,
@RechnungssummeBrutto Varchar(200) = NULL,
@SkontoRabattProzent Varchar(200) = NULL,
@SkontoRabattWert Varchar(200) = NULL,
@RechnungssummeBruttoAbzglSkontoRabatt Varchar(200) = NULL;
----------------------------------------------------------------------------------------------------------------------------------
SELECT @Fremdreferenz_1 = [Ex. Rech-Nr.],
@Zahlungsart = [Payment Method Code], -- ÜBW-K oder ABB-K
@RechnungssummeBrutto = Replace([Gesamtbetrag],'.',','),
@SkontoRabattProzent = Replace([Skonto/Rabatt Prozent],'.',','),
@SkontoRabattWert = Replace([Skonto/Rabatt Wert],'.',','),
@RechnungssummeBruttoAbzglSkontoRabatt = Replace([Gesamtbetrag (brutto) abzgl. Skonto/Rabatt],'.',',')
FROM [VWCUST_NAVISION_PURCHASE_HEADER]
WHERE [Mandant] = @Mandant --SWB-Netz
AND [Belegnummer] = @BelegNr --ER21-1986
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_RESULT ([Control2Set], [Caption], [BackgroundColor], [FontColor])
SELECT @ControlFremdreferenz_1 as Control2Set, @Fremdreferenz_1 as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlZahlungsart as Control2Set, @Zahlungsart as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlRechnungssummeBrutto as Control2Set, @RechnungssummeBrutto as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlSkontoRabattProzent as Control2Set, @SkontoRabattProzent as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlSkontoRabattWert as Control2Set, @SkontoRabattWert as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlRechnungssummeBruttoAbzglSkontoRabatt as Control2Set, @RechnungssummeBruttoAbzglSkontoRabatt as Caption, '' as BackgroundColor, '' as FontColor
RETURN;
END
GO

View File

@@ -0,0 +1,78 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_CONTROL_DATA_PROFILEID_3] Script Date: 21.03.2024 17:25:39 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Setze Werte in anderen Feldern anhand der Auswahl der NAV Nummer
-- Stand: MK // 27.10.2021
-- 27.10.2021 Initial
-- PM Profil: SWB - ER 3.0 - Zuweisung und Vorprüfung durch die FiBu
CREATE FUNCTION [dbo].[FNCUST_SET_PM_CONTROL_DATA_PROFILEID_3] (
@Mandant VARCHAR(200), -- = '{#CTRL#CMB_Mandant}'
@BelegNr VARCHAR(200) -- = '{#CTRL#LU_NAV-Nr.}'
)
RETURNS @vTB_RESULT TABLE ([Control2Set] [BIGINT] NOT NULL,
[Caption] [VARCHAR](max) NOT NULL,
[BackgroundColor] [VARCHAR](50) NOT NULL,
[FontColor] [VARCHAR](50) NOT NULL)
AS
BEGIN
DECLARE @ControlFremdreferenz_1 Varchar(10) = '208',
@ControlZahlungsart Varchar(10) = '396',
@ControlRechnungssummeBrutto Varchar(10) = '548',
@ControlSkontoRabattProzent Varchar(10) = '549',
@ControlSkontoRabattWert Varchar(10) = '554',
@ControlRechnungssummeBruttoAbzglSkontoRabatt Varchar(10) = '555';
DECLARE @Fremdreferenz_1 Varchar(200) = NULL,
@Zahlungsart Varchar(200) = NULL,
@RechnungssummeBrutto Varchar(200) = NULL,
@SkontoRabattProzent Varchar(200) = NULL,
@SkontoRabattWert Varchar(200) = NULL,
@RechnungssummeBruttoAbzglSkontoRabatt Varchar(200) = NULL;
----------------------------------------------------------------------------------------------------------------------------------
SELECT @Fremdreferenz_1 = [Ex. Rech-Nr.],
@Zahlungsart = [Payment Method Code], -- ÜBW-K oder ABB-K
@RechnungssummeBrutto = Replace([Gesamtbetrag],'.',','),
@SkontoRabattProzent = Replace([Skonto/Rabatt Prozent],'.',','),
@SkontoRabattWert = Replace([Skonto/Rabatt Wert],'.',','),
@RechnungssummeBruttoAbzglSkontoRabatt = Replace([Gesamtbetrag (brutto) abzgl. Skonto/Rabatt],'.',',')
FROM [VWCUST_NAVISION_PURCHASE_HEADER]
WHERE [Mandant] = @Mandant --SWB-Netz
AND [Belegnummer] = @BelegNr --ER21-1986
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_RESULT ([Control2Set], [Caption], [BackgroundColor], [FontColor])
SELECT @ControlFremdreferenz_1 as Control2Set, @Fremdreferenz_1 as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlZahlungsart as Control2Set, @Zahlungsart as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlRechnungssummeBrutto as Control2Set, @RechnungssummeBrutto as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlSkontoRabattProzent as Control2Set, @SkontoRabattProzent as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlSkontoRabattWert as Control2Set, @SkontoRabattWert as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlRechnungssummeBruttoAbzglSkontoRabatt as Control2Set, @RechnungssummeBruttoAbzglSkontoRabatt as Caption, '' as BackgroundColor, '' as FontColor
RETURN;
END
GO

View File

@@ -0,0 +1,78 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_CONTROL_DATA_PROFILEID_4] Script Date: 21.03.2024 17:26:16 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Setze Werte in anderen Feldern anhand der Auswahl der NAV Nummer
-- Stand: MK // 27.10.2021
-- 27.10.2021 Initial
-- PM Profil: SWB - ER 4.0 - Prüfung durch die Fachabteilung
CREATE FUNCTION [dbo].[FNCUST_SET_PM_CONTROL_DATA_PROFILEID_4] (
@Mandant VARCHAR(200), -- = '{#CTRL#CMB_Mandant}'
@BelegNr VARCHAR(200) -- = '{#CTRL#LU_NAV-Nr.}'
)
RETURNS @vTB_RESULT TABLE ([Control2Set] [BIGINT] NOT NULL,
[Caption] [VARCHAR](max) NOT NULL,
[BackgroundColor] [VARCHAR](50) NOT NULL,
[FontColor] [VARCHAR](50) NOT NULL)
AS
BEGIN
DECLARE @ControlFremdreferenz_1 Varchar(10) = '219',
@ControlZahlungsart Varchar(10) = '434',
@ControlRechnungssummeBrutto Varchar(10) = '572',
@ControlSkontoRabattProzent Varchar(10) = '573',
@ControlSkontoRabattWert Varchar(10) = '578',
@ControlRechnungssummeBruttoAbzglSkontoRabatt Varchar(10) = '579';
DECLARE @Fremdreferenz_1 Varchar(200) = NULL,
@Zahlungsart Varchar(200) = NULL,
@RechnungssummeBrutto Varchar(200) = NULL,
@SkontoRabattProzent Varchar(200) = NULL,
@SkontoRabattWert Varchar(200) = NULL,
@RechnungssummeBruttoAbzglSkontoRabatt Varchar(200) = NULL;
----------------------------------------------------------------------------------------------------------------------------------
SELECT @Fremdreferenz_1 = [Ex. Rech-Nr.],
@Zahlungsart = [Payment Method Code], -- ÜBW-K oder ABB-K
@RechnungssummeBrutto = Replace([Gesamtbetrag],'.',','),
@SkontoRabattProzent = Replace([Skonto/Rabatt Prozent],'.',','),
@SkontoRabattWert = Replace([Skonto/Rabatt Wert],'.',','),
@RechnungssummeBruttoAbzglSkontoRabatt = Replace([Gesamtbetrag (brutto) abzgl. Skonto/Rabatt],'.',',')
FROM [VWCUST_NAVISION_PURCHASE_HEADER]
WHERE [Mandant] = @Mandant --SWB-Netz
AND [Belegnummer] = @BelegNr --ER21-1986
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_RESULT ([Control2Set], [Caption], [BackgroundColor], [FontColor])
SELECT @ControlFremdreferenz_1 as Control2Set, @Fremdreferenz_1 as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlZahlungsart as Control2Set, @Zahlungsart as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlRechnungssummeBrutto as Control2Set, @RechnungssummeBrutto as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlSkontoRabattProzent as Control2Set, @SkontoRabattProzent as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlSkontoRabattWert as Control2Set, @SkontoRabattWert as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlRechnungssummeBruttoAbzglSkontoRabatt as Control2Set, @RechnungssummeBruttoAbzglSkontoRabatt as Caption, '' as BackgroundColor, '' as FontColor
RETURN;
END
GO

View File

@@ -0,0 +1,78 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_CONTROL_DATA_PROFILEID_5] Script Date: 21.03.2024 17:26:47 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Setze Werte in anderen Feldern anhand der Auswahl der NAV Nummer
-- Stand: MK // 27.10.2021
-- 27.10.2021 Initial
-- PM Profil: SWB - ER 5.0 - Buchung und Zahlung durch die FiBu
CREATE FUNCTION [dbo].[FNCUST_SET_PM_CONTROL_DATA_PROFILEID_5] (
@Mandant VARCHAR(200), -- = '{#CTRL#CMB_Mandant}'
@BelegNr VARCHAR(200) -- = '{#CTRL#LU_NAV-Nr.}'
)
RETURNS @vTB_RESULT TABLE ([Control2Set] [BIGINT] NOT NULL,
[Caption] [VARCHAR](max) NOT NULL,
[BackgroundColor] [VARCHAR](50) NOT NULL,
[FontColor] [VARCHAR](50) NOT NULL)
AS
BEGIN
DECLARE @ControlFremdreferenz_1 Varchar(10) = '229',
@ControlZahlungsart Varchar(10) = '436',
@ControlRechnungssummeBrutto Varchar(10) = '596',
@ControlSkontoRabattProzent Varchar(10) = '597',
@ControlSkontoRabattWert Varchar(10) = '602',
@ControlRechnungssummeBruttoAbzglSkontoRabatt Varchar(10) = '603';
DECLARE @Fremdreferenz_1 Varchar(200) = NULL,
@Zahlungsart Varchar(200) = NULL,
@RechnungssummeBrutto Varchar(200) = NULL,
@SkontoRabattProzent Varchar(200) = NULL,
@SkontoRabattWert Varchar(200) = NULL,
@RechnungssummeBruttoAbzglSkontoRabatt Varchar(200) = NULL;
----------------------------------------------------------------------------------------------------------------------------------
SELECT @Fremdreferenz_1 = [Ex. Rech-Nr.],
@Zahlungsart = [Payment Method Code], -- ÜBW-K oder ABB-K
@RechnungssummeBrutto = Replace([Gesamtbetrag],'.',','),
@SkontoRabattProzent = Replace([Skonto/Rabatt Prozent],'.',','),
@SkontoRabattWert = Replace([Skonto/Rabatt Wert],'.',','),
@RechnungssummeBruttoAbzglSkontoRabatt = Replace([Gesamtbetrag (brutto) abzgl. Skonto/Rabatt],'.',',')
FROM [VWCUST_NAVISION_PURCHASE_HEADER]
WHERE [Mandant] = @Mandant --SWB-Netz
AND [Belegnummer] = @BelegNr --ER21-1986
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_RESULT ([Control2Set], [Caption], [BackgroundColor], [FontColor])
SELECT @ControlFremdreferenz_1 as Control2Set, @Fremdreferenz_1 as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlZahlungsart as Control2Set, @Zahlungsart as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlRechnungssummeBrutto as Control2Set, @RechnungssummeBrutto as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlSkontoRabattProzent as Control2Set, @SkontoRabattProzent as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlSkontoRabattWert as Control2Set, @SkontoRabattWert as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlRechnungssummeBruttoAbzglSkontoRabatt as Control2Set, @RechnungssummeBruttoAbzglSkontoRabatt as Caption, '' as BackgroundColor, '' as FontColor
RETURN;
END
GO

View File

@@ -0,0 +1,78 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_CONTROL_DATA_PROFILEID_6] Script Date: 21.03.2024 17:27:13 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Setze Werte in anderen Feldern anhand der Auswahl der NAV Nummer
-- Stand: MK // 27.10.2021
-- 27.10.2021 Initial
-- PM Profil: SWB - ER 5.1 - Buchung und Zahlung durch die FiBu - Angehaltende Dokumente
CREATE FUNCTION [dbo].[FNCUST_SET_PM_CONTROL_DATA_PROFILEID_6] (
@Mandant VARCHAR(200), -- = '{#CTRL#CMB_Mandant}'
@BelegNr VARCHAR(200) -- = '{#CTRL#LU_NAV-Nr.}'
)
RETURNS @vTB_RESULT TABLE ([Control2Set] [BIGINT] NOT NULL,
[Caption] [VARCHAR](max) NOT NULL,
[BackgroundColor] [VARCHAR](50) NOT NULL,
[FontColor] [VARCHAR](50) NOT NULL)
AS
BEGIN
DECLARE @ControlFremdreferenz_1 Varchar(10) = '269',
@ControlZahlungsart Varchar(10) = '437',
@ControlRechnungssummeBrutto Varchar(10) = '608',
@ControlSkontoRabattProzent Varchar(10) = '609',
@ControlSkontoRabattWert Varchar(10) = '614',
@ControlRechnungssummeBruttoAbzglSkontoRabatt Varchar(10) = '615';
DECLARE @Fremdreferenz_1 Varchar(200) = NULL,
@Zahlungsart Varchar(200) = NULL,
@RechnungssummeBrutto Varchar(200) = NULL,
@SkontoRabattProzent Varchar(200) = NULL,
@SkontoRabattWert Varchar(200) = NULL,
@RechnungssummeBruttoAbzglSkontoRabatt Varchar(200) = NULL;
----------------------------------------------------------------------------------------------------------------------------------
SELECT @Fremdreferenz_1 = [Ex. Rech-Nr.],
@Zahlungsart = [Payment Method Code], -- ÜBW-K oder ABB-K
@RechnungssummeBrutto = Replace([Gesamtbetrag],'.',','),
@SkontoRabattProzent = Replace([Skonto/Rabatt Prozent],'.',','),
@SkontoRabattWert = Replace([Skonto/Rabatt Wert],'.',','),
@RechnungssummeBruttoAbzglSkontoRabatt = Replace([Gesamtbetrag (brutto) abzgl. Skonto/Rabatt],'.',',')
FROM [VWCUST_NAVISION_PURCHASE_HEADER]
WHERE [Mandant] = @Mandant --SWB-Netz
AND [Belegnummer] = @BelegNr --ER21-1986
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_RESULT ([Control2Set], [Caption], [BackgroundColor], [FontColor])
SELECT @ControlFremdreferenz_1 as Control2Set, @Fremdreferenz_1 as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlZahlungsart as Control2Set, @Zahlungsart as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlRechnungssummeBrutto as Control2Set, @RechnungssummeBrutto as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlSkontoRabattProzent as Control2Set, @SkontoRabattProzent as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlSkontoRabattWert as Control2Set, @SkontoRabattWert as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlRechnungssummeBruttoAbzglSkontoRabatt as Control2Set, @RechnungssummeBruttoAbzglSkontoRabatt as Caption, '' as BackgroundColor, '' as FontColor
RETURN;
END
GO

View File

@@ -0,0 +1,78 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_CONTROL_DATA_PROFILEID_9] Script Date: 21.03.2024 17:27:37 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Setze Werte in anderen Feldern anhand der Auswahl der NAV Nummer
-- Stand: MK // 27.10.2021
-- 27.10.2021 Initial
-- PM Profil: SWB - ER 5.2 - Buchung durch die FiBu und Abbuchung durch den Kreditor
CREATE FUNCTION [dbo].[FNCUST_SET_PM_CONTROL_DATA_PROFILEID_9] (
@Mandant VARCHAR(200), -- = '{#CTRL#CMB_Mandant}'
@BelegNr VARCHAR(200) -- = '{#CTRL#LU_NAV-Nr.}'
)
RETURNS @vTB_RESULT TABLE ([Control2Set] [BIGINT] NOT NULL,
[Caption] [VARCHAR](max) NOT NULL,
[BackgroundColor] [VARCHAR](50) NOT NULL,
[FontColor] [VARCHAR](50) NOT NULL)
AS
BEGIN
DECLARE @ControlFremdreferenz_1 Varchar(10) = '387',
@ControlZahlungsart Varchar(10) = '438',
@ControlRechnungssummeBrutto Varchar(10) = '620',
@ControlSkontoRabattProzent Varchar(10) = '621',
@ControlSkontoRabattWert Varchar(10) = '626',
@ControlRechnungssummeBruttoAbzglSkontoRabatt Varchar(10) = '627';
DECLARE @Fremdreferenz_1 Varchar(200) = NULL,
@Zahlungsart Varchar(200) = NULL,
@RechnungssummeBrutto Varchar(200) = NULL,
@SkontoRabattProzent Varchar(200) = NULL,
@SkontoRabattWert Varchar(200) = NULL,
@RechnungssummeBruttoAbzglSkontoRabatt Varchar(200) = NULL;
----------------------------------------------------------------------------------------------------------------------------------
SELECT @Fremdreferenz_1 = [Ex. Rech-Nr.],
@Zahlungsart = [Payment Method Code], -- ÜBW-K oder ABB-K
@RechnungssummeBrutto = Replace([Gesamtbetrag],'.',','),
@SkontoRabattProzent = Replace([Skonto/Rabatt Prozent],'.',','),
@SkontoRabattWert = Replace([Skonto/Rabatt Wert],'.',','),
@RechnungssummeBruttoAbzglSkontoRabatt = Replace([Gesamtbetrag (brutto) abzgl. Skonto/Rabatt],'.',',')
FROM [VWCUST_NAVISION_PURCHASE_HEADER]
WHERE [Mandant] = @Mandant --SWB-Netz
AND [Belegnummer] = @BelegNr --ER21-1986
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_RESULT ([Control2Set], [Caption], [BackgroundColor], [FontColor])
SELECT @ControlFremdreferenz_1 as Control2Set, @Fremdreferenz_1 as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlZahlungsart as Control2Set, @Zahlungsart as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlRechnungssummeBrutto as Control2Set, @RechnungssummeBrutto as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlSkontoRabattProzent as Control2Set, @SkontoRabattProzent as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlSkontoRabattWert as Control2Set, @SkontoRabattWert as Caption, '' as BackgroundColor, '' as FontColor
UNION
SELECT @ControlRechnungssummeBruttoAbzglSkontoRabatt as Control2Set, @RechnungssummeBruttoAbzglSkontoRabatt as Caption, '' as BackgroundColor, '' as FontColor
RETURN;
END
GO

View File

@@ -0,0 +1,30 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_10] Script Date: 21.03.2024 17:28:44 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Erzeugung der Auswahlliste für die Benutzer Entscheidung (String32 / Status-Detail)
-- Stand: MK // 03.10.2021
create FUNCTION [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_10] (
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT 'Bestätigt' as 'Entscheidung'
--order by 'Entscheidung' desc
----------------------------------------------------------------------------------------------------------------------------------
GO

View File

@@ -0,0 +1,40 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_11] Script Date: 21.03.2024 17:29:14 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Erzeugung der Auswahlliste für die Benutzer Entscheidung (String32 / Status-Detail)
-- Stand: MK // 29.09.2021
CREATE FUNCTION [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_11] (
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT 'Abgelehnt (FINAL)' as 'Entscheidung'
UNION
SELECT 'Abgelehnt - Neue Rechnung angefordert'
--UNION
--SELECT 'Zurück zu: ER 2.0 - Durchsicht der Geschäftsführung'
--UNION
--SELECT 'Zurück zu: ER 3.0 - Zuweisung und Vorprüfung durch die FiBu'
--UNION
--SELECT 'Zurück zu: ER 4.0 - Prüfung durch die Fachabteilung'
--UNION
--SELECT 'Zurück zu: ER 5.0 - Prüfung und Kontierung durch die FiBu'
--order by 'Entscheidung' desc
----------------------------------------------------------------------------------------------------------------------------------
GO

View File

@@ -0,0 +1,35 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_14] Script Date: 21.03.2024 17:29:42 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Erzeugung der Auswahlliste für die Benutzer Entscheidung (String32 / Status-Detail)
-- Stand: MK // 22.09.2021
CREATE FUNCTION [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_14] (
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT 'Bestätigt' as 'Entscheidung'
--UNION
--SELECT 'Angehalten'
--UNION
--SELECT 'Abgelehnt'
--order by 'Entscheidung' desc
----------------------------------------------------------------------------------------------------------------------------------
GO

View File

@@ -0,0 +1,38 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_15] Script Date: 21.03.2024 17:30:10 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Erzeugung der Auswahlliste für die Benutzer Entscheidung (String32 / Status-Detail)
-- Stand: MK // 05.11.2021
CREATE FUNCTION [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_15] (
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT 'Bestätigt' as 'Entscheidung'
--UNION
--SELECT 'Abgelehnt'
--UNION
--SELECT 'Abgelehnt - Neue Rechnung angefordert'
--UNION
--SELECT 'Falscher Prüfer ausgewählt'
--order by 'Entscheidung' desc
----------------------------------------------------------------------------------------------------------------------------------
GO

View File

@@ -0,0 +1,33 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_16] Script Date: 21.03.2024 17:30:35 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Erzeugung der Auswahlliste für die Benutzer Entscheidung (String32 / Status-Detail)
-- Stand: MK // 22.09.2021
create FUNCTION [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_16] (
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT 'Bestätigt' as 'Entscheidung'
--UNION
--SELECT 'Abgelehnt'
--order by 'Entscheidung' desc
----------------------------------------------------------------------------------------------------------------------------------
GO

View File

@@ -0,0 +1,35 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_17] Script Date: 21.03.2024 17:31:07 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Erzeugung der Auswahlliste für die Benutzer Entscheidung (String32 / Status-Detail)
-- Stand: MK // 27.01.2022
create FUNCTION [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_17] (
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT 'Bestätigt' as 'Entscheidung'
--UNION
--SELECT 'Abgelehnt'
--order by 'Entscheidung' desc
----------------------------------------------------------------------------------------------------------------------------------
GO

View File

@@ -0,0 +1,32 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_1] Script Date: 21.03.2024 17:28:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Erzeugung der Auswahlliste für die Benutzer Entscheidung (String32 / Status-Detail)
-- Stand: MK // 22.09.2021
CREATE FUNCTION [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_1] (
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT 'Bestätigt' as 'Entscheidung'
UNION
SELECT 'Abgelehnt'
--order by 'Entscheidung' desc
----------------------------------------------------------------------------------------------------------------------------------
GO

View File

@@ -0,0 +1,32 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_2] Script Date: 21.03.2024 17:31:31 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Erzeugung der Auswahlliste für die Benutzer Entscheidung (String32 / Status-Detail)
-- Stand: MK // 22.09.2021
CREATE FUNCTION [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_2] (
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT 'Bestätigt' as 'Entscheidung'
UNION
SELECT 'Abgelehnt'
--order by 'Entscheidung' desc
----------------------------------------------------------------------------------------------------------------------------------
GO

View File

@@ -0,0 +1,38 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_3] Script Date: 21.03.2024 17:31:58 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Erzeugung der Auswahlliste für die Benutzer Entscheidung (String32 / Status-Detail)
-- Stand: MK // 22.09.2021
CREATE FUNCTION [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_3] (
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT 'Bestätigt' as 'Entscheidung'
UNION
SELECT 'Abgelehnt'
--UNION
--SELECT 'Abgelehnt - falsche Fimierung'
--UNION
--SELECT 'Abgelehnt - falscher MwSt Satz'
--UNION
--SELECT 'Abgelehnt - Neue Rechnung angefordert'
--order by 'Entscheidung' desc
----------------------------------------------------------------------------------------------------------------------------------
GO

View File

@@ -0,0 +1,36 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_4] Script Date: 21.03.2024 17:32:32 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Erzeugung der Auswahlliste für die Benutzer Entscheidung (String32 / Status-Detail)
-- Stand: MK // 22.09.2021
CREATE FUNCTION [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_4] (
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT 'Bestätigt' as 'Entscheidung'
UNION
SELECT 'Abgelehnt'
UNION
--SELECT 'Abgelehnt - Neue Rechnung angefordert'
--UNION
SELECT 'Falscher Prüfer ausgewählt'
--order by 'Entscheidung' desc
----------------------------------------------------------------------------------------------------------------------------------
GO

View File

@@ -0,0 +1,33 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_5] Script Date: 21.03.2024 17:34:03 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Erzeugung der Auswahlliste für die Benutzer Entscheidung (String32 / Status-Detail)
-- Stand: MK // 22.09.2021
CREATE FUNCTION [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_5] (
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT 'Bestätigt' as 'Entscheidung'
UNION
SELECT 'Angehalten'
UNION
SELECT 'Abgelehnt'
--order by 'Entscheidung' desc
----------------------------------------------------------------------------------------------------------------------------------
GO

View File

@@ -0,0 +1,31 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_6] Script Date: 21.03.2024 17:34:31 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Erzeugung der Auswahlliste für die Benutzer Entscheidung (String32 / Status-Detail)
-- Stand: MK // 22.09.2021
create FUNCTION [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_6] (
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT 'Bestätigt' as 'Entscheidung'
UNION
SELECT 'Abgelehnt'
--order by 'Entscheidung' desc
----------------------------------------------------------------------------------------------------------------------------------
GO

View File

@@ -0,0 +1,33 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_9] Script Date: 21.03.2024 17:35:00 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Erzeugung der Auswahlliste für die Benutzer Entscheidung (String32 / Status-Detail)
-- Stand: MK // 22.09.2021
create FUNCTION [dbo].[FNCUST_SET_PM_DECISION_LIST_PROFILEID_9] (
)
RETURNS TABLE
AS
RETURN
----------------------------------------------------------------------------------------------------------------------------------
SELECT 'Bestätigt' as 'Entscheidung'
--UNION
--SELECT 'Angehalten'
--UNION
--SELECT 'Abgelehnt'
--order by 'Entscheidung' desc
----------------------------------------------------------------------------------------------------------------------------------
GO

View File

@@ -0,0 +1,79 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_FINAL_INDEX_PROFILEID_16] Script Date: 21.03.2024 17:35:30 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Prüfung ob die eingetragenen finalen Freigeber auch unterschrieben haben
-- Stand: MK // 10.11.2021
-- PM Profil: SWB - ER 6.0 - Terminüberweisung - Finale Freigabe
CREATE FUNCTION [dbo].[FNCUST_SET_PM_FINAL_INDEX_PROFILEID_16] (
@windreamDocID BIGINT, -- = '{#CTRL#TXT_Entscheidungs-Beschreibung}';
@windreamAttributFinalApprover INT = 10044, -- = Terminzahlung Finale Freigeber
@windreamAttributHistory INT = 10040 -- = Workflow-Historie
)
RETURNS @vTB_RESULT TABLE ([RESULT] [VARCHAR](50) NOT NULL)
AS
BEGIN
DECLARE @Result VARCHAR(50) = 'incomplete',
@ApproverMatch INT = 0,
@ApproverName VARCHAR(50) = NULL;
----------------------------------------------------------------------------------------------------------------------------------
-- Loop for every set approver
-- if approver was not found in history Table, retun 'incomplete'
DECLARE CURSOR_FINAL_APPROVER CURSOR FOR
SELECT [szValue] as 'ApproverName'
FROM [windream60].[dbo].[Vector]
WHERE [szValue] is not null
and [dwAttrID] = @windreamAttributFinalApprover
and [dwDocID] = @windreamDocID
OPEN CURSOR_FINAL_APPROVER
FETCH NEXT FROM CURSOR_FINAL_APPROVER INTO @ApproverName
WHILE @@FETCH_STATUS = 0
BEGIN
SELECT @ApproverMatch = count([szValue])
FROM [windream60].[dbo].[Vector]
WHERE [szValue] like (@ApproverName + '%ER 6.%Terminüberweisung%')
and [dwAttrID] = @windreamAttributHistory
and [dwDocID] = @windreamDocID
IF (@ApproverMatch = 0)
BEGIN
SET @Result = 'incomplete'
BREAK
END
ELSE
BEGIN
SET @Result = 'complete'
END
FETCH NEXT FROM CURSOR_FINAL_APPROVER INTO @ApproverName
END
CLOSE CURSOR_FINAL_APPROVER
DEALLOCATE CURSOR_FINAL_APPROVER
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_RESULT ([RESULT])
VALUES (@Result)
RETURN;
END
GO

View File

@@ -0,0 +1,74 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_PM_VIA_TC_RECURRING_DOCUMENTS] Script Date: 21.03.2024 17:36:12 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Table procedure to set recurring doc active again in workflow
-- Stand: MK // 31.10.2021
-- 31.10.2021 Initial
-- TC Profil: SWB_NI-DB_Eingangsrechnung-Daueranweisung
CREATE function [dbo].[FNCUST_SET_PM_VIA_TC_RECURRING_DOCUMENTS] (
@windreamDocID BIGINT, -- Test mit 730491
@windreamAttrID INT = 10042
)
RETURNS @vTB_RESULT TABLE ([RESULT] [TINYINT] NOT NULL)
AS
BEGIN
DECLARE @CurrentMonthID TINYINT,
@CurrentMonthName VARCHAR(20),
@BookingMonthName VARCHAR(20);
----------------------------------------------------------------------------------------------------------------------------------
-- Get current month name
SELECT @CurrentMonthName = FORMAT(GETDATE(),'MMMM')
-- Check if the real current month is in windream list of the file, if so go on
IF @CurrentMonthName in (SELECT [szValue] FROM [windream60].[dbo].[Vector] where dwAttrID = @windreamAttrID and dwDocId = @windreamDocID)
BEGIN
SELECT @BookingMonthName = FORMAT((SELECT CONVERT(DATETIME, convert(varchar(8),dwDate04)) FROM windream60.dbo.BaseAttributes where dwDocID = @windreamDocID),'MMMM')
-- Check if last export month is the current month, only if NOT go on
IF (@BookingMonthName <> @CurrentMonthName)
BEGIN
INSERT INTO @vTB_RESULT ([RESULT])
VALUES (1)
END
ELSE
BEGIN
INSERT INTO @vTB_RESULT ([RESULT])
VALUES (0)
END
END
ELSE
BEGIN
INSERT INTO @vTB_RESULT ([RESULT])
VALUES (0)
END
----------------------------------------------------------------------------------------------------------------------------------
RETURN;
END
GO

View File

@@ -0,0 +1,154 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_TC_MOVE_AND_RENAME] Script Date: 21.03.2024 17:36:35 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- TSQL Function to build target path and filename, for TC Move and Rename
-- Stand: MK // 05.11.2021
CREATE FUNCTION [dbo].[FNCUST_SET_TC_MOVE_AND_RENAME] (
@pDOCID BIGINT
)
RETURNS @vTB_RESULT TABLE ([PATH] [VARCHAR](max) NOT NULL,
[FILENAME] [VARCHAR](max) NOT NULL)
AS
BEGIN
DECLARE @DOCID BIGINT,
@ObjectTypeID BIGINT,
@ObjectTypeSeparator VARCHAR(1) = '-',
@ObjectTypeName VARCHAR(150),
@ImportTool VARCHAR(150),
@Mandator VARCHAR(150),
@DocumentType VARCHAR(150),
@DocumentTypeShort VARCHAR(150),
@CreditorNr VARCHAR(150),
@CreditorName VARCHAR(150),
@ExternalReference1 VARCHAR(150),
@InternalNr VARCHAR(150),
@CustomerNr VARCHAR(150),
@CustomerName VARCHAR(150),
@Path VARCHAR(MAX),
@Filename VARCHAR(MAX),
@FileExtension VARCHAR(5);
----------------------------------------------------------------------------------------------------------------------------------
-- Get Index data from doc --
SELECT @DOCID = [dwDocID],
@ObjectTypeID = [dwObjectTypeID],
@CreditorName = [szText08],
@CustomerName = IIF([szText09] IS NULL, 'Kein Ergebnis', [szText09]),
@ExternalReference1 = [szText19],
@ImportTool = [szText28],
@Mandator = [szText31],
@InternalNr = [szText36],
@DocumentType = [szText37],
@CreditorNr = [szText38],
@CustomerNr = IIF([szText39] IS NULL, 'Kein Ergebnis', [szText39]),
@FileExtension = [szFile_Ext]
FROM [windream60].[dbo].[BaseAttributes]
WHERE [dwDocID] = @pDOCID
AND [dwCatalogID] = 1 -- Only Files
AND ([szText33] is NULL OR [szText33] = 'erledigt') -- Only Files which are done processing
----------------------------------------------------------------------------------------------------------------------------------
-- Get windream Objecttype name --
SELECT @ObjectTypeName = [szDocTypeName]
FROM [windream60].[dbo].[ObjectType]
WHERE [dwObjectTypeID] = @ObjectTypeID
----------------------------------------------------------------------------------------------------------------------------------
-- Clean windream Objecttype name --
SELECT @ObjectTypeName = RTRIM(LTRIM([Item]))
FROM [FNCUST_SPLIT_STRING_WITH_GUID](@ObjectTypeName,@ObjectTypeSeparator)
WHERE [GUID] = (SELECT max([GUID])
FROM [FNCUST_SPLIT_STRING_WITH_GUID](@ObjectTypeName,@ObjectTypeSeparator))
----------------------------------------------------------------------------------------------------------------------------------
-- Build path --
IF (LEN(@ObjectTypeName) > 1) AND (LEN(@ImportTool) > 1) AND (LEN(@Mandator) > 1) AND (LEN(@DocumentType) > 1)
BEGIN
SET @Path =
CASE
WHEN @ImportTool like '%GLOBIX%'OR @ImportTool like '%GLOBAL%'
THEN @Mandator + @ObjectTypeSeparator + @ObjectTypeName + '\Manually\File'
WHEN @ImportTool like '%Tool%'OR @ImportTool like '%Collection%'
THEN @Mandator + @ObjectTypeSeparator + @ObjectTypeName + '\DocumentProcessing\File'
END
-- Replace invalid chars
SET @Path = Replace(@Path,'/','')
SET @Path = Replace(@Path,':','')
SET @Path = Replace(@Path,'*','')
SET @Path = Replace(@Path,'?','')
SET @Path = Replace(@Path,'"','')
SET @Path = Replace(@Path,'<','')
SET @Path = Replace(@Path,'>','')
SET @Path = Replace(@Path,'|','')
END
----------------------------------------------------------------------------------------------------------------------------------
-- Find short names for Document Types (ONLY FOR FILENAME NOT THE PATH) --
SELECT TOP 1 @DocumentTypeShort = RTRIM(LTRIM([KURZNAME]))
FROM [TBDD_DOKUMENTART]
WHERE [AKTIV] = 1
AND ([BEZEICHNUNG] LIKE ('%' + @DocumentType + '%')
OR [BESCHREIBUNG] LIKE ('%' + @DocumentType + '%'))
IF (LEN(@DocumentTypeShort) < 2) -- Fallback
SET @DocumentTypeShort = @DocumentType
----------------------------------------------------------------------------------------------------------------------------------
-- Build filename --
IF ((LEN(@CreditorNr) > 1) AND (LEN(@CreditorName) > 1)) OR ((LEN(@CustomerNr) > 1) AND (LEN(@CustomerName) > 1)) AND (LEN(@FileExtension) > 1)
BEGIN
SET @Filename =
CASE
WHEN (LEN(@CreditorNr) > 1) AND (LEN(@CreditorName) > 1) AND (LEN(@InternalNr) > 1) AND (LEN(@ExternalReference1) > 1)
THEN @DocumentTypeShort + '_' + @InternalNr + '#' + @CreditorName + '_' + @ExternalReference1 + @FileExtension
WHEN (LEN(@CreditorNr) > 1) AND (LEN(@CreditorName) > 1) AND (LEN(@InternalNr) > 1)
THEN @DocumentTypeShort + '_' + @InternalNr + '#' + @CreditorName + @FileExtension
------------------------------------------------------------------------------------------------------------------
WHEN (LEN(@CustomerNr) > 1) AND (LEN(@CustomerName) > 1) AND (LEN(@InternalNr) > 1)
THEN @DocumentTypeShort + '_' + @InternalNr + '#' + @CustomerName + @FileExtension
END
-- Replace invalid chars
SET @Filename = Replace(@Filename,'\','')
SET @Filename = Replace(@Filename,'/','')
SET @Filename = Replace(@Filename,':','')
SET @Filename = Replace(@Filename,'*','')
SET @Filename = Replace(@Filename,'?','')
SET @Filename = Replace(@Filename,'"','')
SET @Filename = Replace(@Filename,'<','')
SET @Filename = Replace(@Filename,'>','')
SET @Filename = Replace(@Filename,'|','')
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_RESULT ([PATH],[FILENAME])
VALUES (@Path, @Filename)
RETURN;
END
GO

View File

@@ -0,0 +1,154 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SET_TC_MOVE_AND_RENAME_DEBUG] Script Date: 21.03.2024 17:37:02 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- TSQL Function to build target path and filename, for TC Move and Rename
-- Stand: MK // 05.11.2021
CREATE FUNCTION [dbo].[FNCUST_SET_TC_MOVE_AND_RENAME_DEBUG] (
@pDOCID BIGINT
)
RETURNS @vTB_RESULT TABLE ([PATH] [VARCHAR](max) NOT NULL,
[FILENAME] [VARCHAR](max) NOT NULL)
AS
BEGIN
DECLARE @DOCID BIGINT,
@ObjectTypeID BIGINT,
@ObjectTypeSeparator VARCHAR(1) = '-',
@ObjectTypeName VARCHAR(150),
@ImportTool VARCHAR(150),
@Mandator VARCHAR(150),
@DocumentType VARCHAR(150),
@DocumentTypeShort VARCHAR(150),
@CreditorNr VARCHAR(150),
@CreditorName VARCHAR(150),
@ExternalReference1 VARCHAR(150),
@InternalNr VARCHAR(150),
@CustomerNr VARCHAR(150),
@CustomerName VARCHAR(150),
@Path VARCHAR(MAX),
@Filename VARCHAR(MAX),
@FileExtension VARCHAR(5);
----------------------------------------------------------------------------------------------------------------------------------
-- Get Index data from doc --
SELECT @DOCID = [dwDocID],
@ObjectTypeID = [dwObjectTypeID],
@CreditorName = [szText08],
@CustomerName = IIF([szText09] IS NULL, 'Kein Ergebnis', [szText09]),
@ExternalReference1 = [szText19],
@ImportTool = [szText28],
@Mandator = [szText31],
@InternalNr = [szText36],
@DocumentType = [szText37],
@CreditorNr = [szText38],
@CustomerNr = IIF([szText39] IS NULL, 'Kein Ergebnis', [szText39]),
@FileExtension = [szFile_Ext]
FROM [windream60].[dbo].[BaseAttributes]
WHERE [dwDocID] = @pDOCID
AND [dwCatalogID] = 1 -- Only Files
AND ([szText33] is NULL OR [szText33] = 'erledigt') -- Only Files which are done processing
----------------------------------------------------------------------------------------------------------------------------------
-- Get windream Objecttype name --
SELECT @ObjectTypeName = [szDocTypeName]
FROM [windream60].[dbo].[ObjectType]
WHERE [dwObjectTypeID] = @ObjectTypeID
----------------------------------------------------------------------------------------------------------------------------------
-- Clean windream Objecttype name --
SELECT @ObjectTypeName = RTRIM(LTRIM([Item]))
FROM [FNCUST_SPLIT_STRING_WITH_GUID](@ObjectTypeName,@ObjectTypeSeparator)
WHERE [GUID] = (SELECT max([GUID])
FROM [FNCUST_SPLIT_STRING_WITH_GUID](@ObjectTypeName,@ObjectTypeSeparator))
----------------------------------------------------------------------------------------------------------------------------------
-- Build path --
IF (LEN(@ObjectTypeName) > 1) AND (LEN(@ImportTool) > 1) AND (LEN(@Mandator) > 1) AND (LEN(@DocumentType) > 1)
BEGIN
SET @Path =
CASE
WHEN @ImportTool like '%GLOBIX%'OR @ImportTool like '%GLOBAL%'
THEN @Mandator + @ObjectTypeSeparator + @ObjectTypeName + '\Manually\File'
WHEN @ImportTool like '%Tool%'OR @ImportTool like '%Collection%'
THEN @Mandator + @ObjectTypeSeparator + @ObjectTypeName + '\DocumentProcessing\File'
END
-- Replace invalid chars
SET @Path = Replace(@Path,'/','')
SET @Path = Replace(@Path,':','')
SET @Path = Replace(@Path,'*','')
SET @Path = Replace(@Path,'?','')
SET @Path = Replace(@Path,'"','')
SET @Path = Replace(@Path,'<','')
SET @Path = Replace(@Path,'>','')
SET @Path = Replace(@Path,'|','')
END
----------------------------------------------------------------------------------------------------------------------------------
-- Find short names for Document Types (ONLY FOR FILENAME NOT THE PATH) --
SELECT TOP 1 @DocumentTypeShort = RTRIM(LTRIM([KURZNAME]))
FROM [TBDD_DOKUMENTART]
WHERE [AKTIV] = 1
AND ([BEZEICHNUNG] LIKE ('%' + @DocumentType + '%')
OR [BESCHREIBUNG] LIKE ('%' + @DocumentType + '%'))
IF (LEN(@DocumentTypeShort) < 2) -- Fallback
SET @DocumentTypeShort = @DocumentType
----------------------------------------------------------------------------------------------------------------------------------
-- Build filename --
IF ((LEN(@CreditorNr) > 1) AND (LEN(@CreditorName) > 1)) OR ((LEN(@CustomerNr) > 1) AND (LEN(@CustomerName) > 1)) AND (LEN(@FileExtension) > 1)
BEGIN
SET @Filename =
CASE
WHEN (LEN(@CreditorNr) > 1) AND (LEN(@CreditorName) > 1) AND (LEN(@InternalNr) > 1) AND (LEN(@ExternalReference1) > 1)
THEN @DocumentTypeShort + '_' + @InternalNr + '#' + @CreditorName + '_' + @ExternalReference1 + @FileExtension
WHEN (LEN(@CreditorNr) > 1) AND (LEN(@CreditorName) > 1) AND (LEN(@InternalNr) > 1)
THEN @DocumentTypeShort + '_' + @InternalNr + '#' + @CreditorName + @FileExtension
------------------------------------------------------------------------------------------------------------------
WHEN (LEN(@CustomerNr) > 1) AND (LEN(@CustomerName) > 1) AND (LEN(@InternalNr) > 1)
THEN @DocumentTypeShort + '_' + @InternalNr + '#' + @CustomerName + @FileExtension
END
-- Replace invalid chars
SET @Filename = Replace(@Filename,'\','')
SET @Filename = Replace(@Filename,'/','')
SET @Filename = Replace(@Filename,':','')
SET @Filename = Replace(@Filename,'*','')
SET @Filename = Replace(@Filename,'?','')
SET @Filename = Replace(@Filename,'"','')
SET @Filename = Replace(@Filename,'<','')
SET @Filename = Replace(@Filename,'>','')
SET @Filename = Replace(@Filename,'|','')
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_RESULT ([PATH],[FILENAME])
VALUES (@Path, @Filename)
RETURN;
END
GO

View File

@@ -0,0 +1,45 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_SPLIT_STRING_WITH_GUID] Script Date: 21.03.2024 17:37:36 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- Stand: MK // 28.01.2021
-- Verwendet in Schleupen Schnittstelle und PM Monitoring
CREATE FUNCTION [dbo].[FNCUST_SPLIT_STRING_WITH_GUID] (
@Input NVARCHAR(MAX),
@Character CHAR(1)
)
RETURNS @Output TABLE (GUID INTEGER IDENTITY(1,1), Item NVARCHAR(1000))
AS
BEGIN
DECLARE @StartIndex INT, @EndIndex INT
SET @StartIndex = 1
IF SUBSTRING(@Input, LEN(@Input) - 1, LEN(@Input)) <> @Character
BEGIN
SET @Input = @Input + @Character
END
WHILE CHARINDEX(@Character, @Input) > 0
BEGIN
SET @EndIndex = CHARINDEX(@Character, @Input)
INSERT INTO @Output(Item)
SELECT SUBSTRING(@Input, @StartIndex, @EndIndex - 1)
SET @Input = SUBSTRING(@Input, @EndIndex + 1, LEN(@Input))
END
RETURN
END
GO

View File

@@ -0,0 +1,62 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_10] Script Date: 21.03.2024 17:38:32 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Prüfung diverser Werte und Eingaben bei Betätigung das Abschluss Buttons
-- Stand: MK // 29.09.2021
-- PM Profil: SWB - ER 4.1 - Auffangprofil für alle neu angeforderten Dokumente
create FUNCTION [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_10] (
@Status_Detail VARCHAR(150), -- = '{#CTRL#DGV_Status-Detail}',
@Status_Detail_Text VARCHAR(200) -- = '{#CTRL#TXT_Entscheidungs-Beschreibung}';
)
RETURNS @vTB_TEST_RESULT TABLE ([MSGTYPE] [VARCHAR](max) NULL,
[QUESTION] [VARCHAR](max) NULL,
[TITLE] [VARCHAR](max) NULL)
AS
BEGIN
DECLARE @MSGTYPE VARCHAR(100) = 'Continue',
@QUESTION VARCHAR(300) = '',
@TITLE VARCHAR(100) = 'Bitte prüfen Sie Ihre Eingaben!';
----------------------------------------------------------------------------------------------------------------------------------
IF (@Status_Detail LIKE 'Abgelehnt%') and (LEN(@STATUS_DETAIL_TEXT) < 4) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Sie müssen eine Begründung eintragen (mind. 4 Zeichen)!'
END
ELSE IF (@Status_Detail not in (SELECT * from [FNCUST_SET_PM_DECISION_LIST_PROFILEID_10]())) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Bitte wählen Sie eine andere Entscheidung aus!'
END
ELSE
BEGIN
SET @MSGTYPE = 'Continue'
SET @QUESTION = ''
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_TEST_RESULT ([MSGTYPE], [QUESTION], [TITLE])
VALUES (@MsgType, @QUESTION, @TITLE)
RETURN;
END
GO

View File

@@ -0,0 +1,62 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_11] Script Date: 21.03.2024 17:38:57 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Prüfung diverser Werte und Eingaben bei Betätigung das Abschluss Buttons
-- Stand: MK // 29.09.2021
-- PM Profil: SWB - ER 3.1 - Auffangprofil für alle abgelehnten Dokumente
CREATE FUNCTION [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_11] (
@Status_Detail VARCHAR(150), -- = '{#CTRL#DGV_Status-Detail}',
@Status_Detail_Text VARCHAR(200) -- = '{#CTRL#TXT_Entscheidungs-Beschreibung}';
)
RETURNS @vTB_TEST_RESULT TABLE ([MSGTYPE] [VARCHAR](max) NULL,
[QUESTION] [VARCHAR](max) NULL,
[TITLE] [VARCHAR](max) NULL)
AS
BEGIN
DECLARE @MSGTYPE VARCHAR(100) = 'Continue',
@QUESTION VARCHAR(300) = '',
@TITLE VARCHAR(100) = 'Bitte prüfen Sie Ihre Eingaben!';
----------------------------------------------------------------------------------------------------------------------------------
IF (@Status_Detail LIKE 'Abgelehnt%') and (LEN(@STATUS_DETAIL_TEXT) < 4) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Sie müssen eine Begründung eintragen (mind. 4 Zeichen)!'
END
ELSE IF (@Status_Detail not in (SELECT * from [FNCUST_SET_PM_DECISION_LIST_PROFILEID_11]())) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Bitte wählen Sie eine andere Entscheidung aus!'
END
ELSE
BEGIN
SET @MSGTYPE = 'Continue'
SET @QUESTION = ''
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_TEST_RESULT ([MSGTYPE], [QUESTION], [TITLE])
VALUES (@MsgType, @QUESTION, @TITLE)
RETURN;
END
GO

View File

@@ -0,0 +1,64 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_14] Script Date: 21.03.2024 17:39:22 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Prüfung diverser Werte und Eingaben bei Betätigung das Abschluss Buttons
-- Stand: MK // 29.09.2021
-- PM Profil: SWB - ER 5.3 - Buchung und Zahlung durch die FiBu - Daueranweisungen
CREATE FUNCTION [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_14] (
@Status_Detail VARCHAR(150), -- = '{#CTRL#DGV_Status-Detail}',
@Status_Detail_Text VARCHAR(200) -- = '{#CTRL#TXT_Entscheidungs-Beschreibung}';
)
RETURNS @vTB_TEST_RESULT TABLE ([MSGTYPE] [VARCHAR](max) NULL,
[QUESTION] [VARCHAR](max) NULL,
[TITLE] [VARCHAR](max) NULL)
AS
BEGIN
DECLARE @MSGTYPE VARCHAR(100) = 'Continue',
@QUESTION VARCHAR(300) = '',
@TITLE VARCHAR(100) = 'Bitte prüfen Sie Ihre Eingaben!';
----------------------------------------------------------------------------------------------------------------------------------
IF (@Status_Detail LIKE 'Abgelehnt%') and (LEN(@STATUS_DETAIL_TEXT) < 4) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Sie müssen eine Begründung eintragen (mind. 4 Zeichen)!'
END
ELSE IF (@Status_Detail not in (SELECT * from [FNCUST_SET_PM_DECISION_LIST_PROFILEID_14]())) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Bitte wählen Sie eine andere Entscheidung aus!'
END
ELSE
BEGIN
SET @MSGTYPE = 'Continue'
SET @QUESTION = ''
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_TEST_RESULT ([MSGTYPE], [QUESTION], [TITLE])
VALUES (@MsgType, @QUESTION, @TITLE)
RETURN;
END
GO

View File

@@ -0,0 +1,65 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_15] Script Date: 21.03.2024 17:39:48 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Prüfung diverser Werte und Eingaben bei Betätigung das Abschluss Buttons
-- Stand: MK // 05.11.2021
-- PM Profil: SWB - AR 1.0 - Eingangsrechnung zur Weiterbelastung
CREATE FUNCTION [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_15] (
@Status_Detail VARCHAR(150), -- = '{#CTRL#DGV_Status-Detail}',
@Status_Detail_Text VARCHAR(200) -- = '{#CTRL#TXT_Entscheidungs-Beschreibung}';
)
RETURNS @vTB_TEST_RESULT TABLE ([MSGTYPE] [VARCHAR](max) NULL,
[QUESTION] [VARCHAR](max) NULL,
[TITLE] [VARCHAR](max) NULL)
AS
BEGIN
DECLARE @MSGTYPE VARCHAR(100) = 'Continue',
@QUESTION VARCHAR(300) = '',
@TITLE VARCHAR(100) = 'Bitte prüfen Sie Ihre Eingaben!',
@Fremdreferenz1Count INT = 0;
----------------------------------------------------------------------------------------------------------------------------------
IF (@Status_Detail LIKE 'Abgelehnt%') and (LEN(@STATUS_DETAIL_TEXT) < 4) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Sie müssen eine Begründung eintragen (mind. 4 Zeichen)!'
END
ELSE IF (@Status_Detail not in (SELECT * from [FNCUST_SET_PM_DECISION_LIST_PROFILEID_15]())) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Bitte wählen Sie eine andere Entscheidung aus!'
END
ELSE
BEGIN
SET @MSGTYPE = 'Continue'
SET @QUESTION = ''
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_TEST_RESULT ([MSGTYPE], [QUESTION], [TITLE])
VALUES (@MsgType, @QUESTION, @TITLE)
RETURN;
END
GO

View File

@@ -0,0 +1,64 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_16] Script Date: 21.03.2024 17:41:20 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Prüfung diverser Werte und Eingaben bei Betätigung das Abschluss Buttons
-- Stand: MK // 29.09.2021
-- PM Profil: SWB - ER 6.0 - Terminüberweisung - Finale Freigabe
CREATE FUNCTION [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_16] (
@Status_Detail VARCHAR(150), -- = '{#CTRL#DGV_Status-Detail}',
@Status_Detail_Text VARCHAR(200) -- = '{#CTRL#TXT_Entscheidungs-Beschreibung}';
)
RETURNS @vTB_TEST_RESULT TABLE ([MSGTYPE] [VARCHAR](max) NULL,
[QUESTION] [VARCHAR](max) NULL,
[TITLE] [VARCHAR](max) NULL)
AS
BEGIN
DECLARE @MSGTYPE VARCHAR(100) = 'Continue',
@QUESTION VARCHAR(300) = '',
@TITLE VARCHAR(100) = 'Bitte prüfen Sie Ihre Eingaben!';
----------------------------------------------------------------------------------------------------------------------------------
IF (@Status_Detail LIKE 'Abgelehnt%') and (LEN(@STATUS_DETAIL_TEXT) < 4) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Sie müssen eine Begründung eintragen (mind. 4 Zeichen)!'
END
ELSE IF (@Status_Detail not in (SELECT * from [FNCUST_SET_PM_DECISION_LIST_PROFILEID_16]())) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Bitte wählen Sie eine andere Entscheidung aus!'
END
ELSE
BEGIN
SET @MSGTYPE = 'Continue'
SET @QUESTION = ''
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_TEST_RESULT ([MSGTYPE], [QUESTION], [TITLE])
VALUES (@MsgType, @QUESTION, @TITLE)
RETURN;
END
GO

View File

@@ -0,0 +1,66 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_17] Script Date: 21.03.2024 17:41:52 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Prüfung diverser Werte und Eingaben bei Betätigung das Abschluss Buttons
-- Stand: MK // 26.01.2022
-- PM Profil: SWB - ER 99.0 - Nachträgliche Korrektur
CREATE FUNCTION [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_17] (
@Status_Detail VARCHAR(150), -- = '{#CTRL#DGV_Status-Detail}',
@Status_Detail_Text VARCHAR(200) -- = '{#CTRL#TXT_Entscheidungs-Beschreibung}';
)
RETURNS @vTB_TEST_RESULT TABLE ([MSGTYPE] [VARCHAR](max) NULL,
[QUESTION] [VARCHAR](max) NULL,
[TITLE] [VARCHAR](max) NULL)
AS
BEGIN
DECLARE @MSGTYPE VARCHAR(100) = 'Continue',
@QUESTION VARCHAR(300) = '',
@TITLE VARCHAR(100) = 'Bitte prüfen Sie Ihre Eingaben!';
----------------------------------------------------------------------------------------------------------------------------------
IF (LEN(@STATUS_DETAIL_TEXT) < 4) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Sie müssen eine Korrekturangabe tätigen (mind. 4 Zeichen)!'
END
ELSE IF (@Status_Detail not in (SELECT * from [FNCUST_SET_PM_DECISION_LIST_PROFILEID_17]())) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Bitte wählen Sie eine andere Entscheidung aus!'
END
ELSE
BEGIN
SET @MSGTYPE = 'Continue'
SET @QUESTION = ''
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_TEST_RESULT ([MSGTYPE], [QUESTION], [TITLE])
VALUES (@MsgType, @QUESTION, @TITLE)
RETURN;
END
GO

View File

@@ -0,0 +1,74 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_1] Script Date: 21.03.2024 17:38:04 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Prüfung diverser Werte und Eingaben bei Betätigung das Abschluss Buttons
-- Stand: MK // 21.10.2021
-- 21.10.2021 Erweiterung der ungültigen Benutzernamensliste
-- 29.09.2021 Initial
-- PM Profil: SWB - ER 1.0 - Dokumentübernahme durch Erfasser
CREATE FUNCTION [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_1] (
@WindowsUsername VARCHAR(150), -- = '{#INT#USERNAME}', -- Benutzername aus der Anmeldung
@InputBoxUsername VARCHAR(150), -- = '{#CTRL#TXT_Benutzername}' -- Benutzername aus der Eingabe
@Status_Detail VARCHAR(150), -- = '{#CTRL#DGV_Status-Detail}',
@Status_Detail_Text VARCHAR(200) -- = '{#CTRL#TXT_Entscheidungs-Beschreibung}';
)
RETURNS @vTB_TEST_RESULT TABLE ([MSGTYPE] [VARCHAR](max) NULL,
[QUESTION] [VARCHAR](max) NULL,
[TITLE] [VARCHAR](max) NULL)
AS
BEGIN
DECLARE @MSGTYPE VARCHAR(100) = 'Continue',
@QUESTION VARCHAR(300) = '',
@TITLE VARCHAR(100) = 'Bitte prüfen Sie Ihre Eingaben!';
----------------------------------------------------------------------------------------------------------------------------------
IF (@WindowsUsername IN ('IIMAdmin','DigitalData','Praktikant','Praktikanten','FOSPraktikant','Azubi','Azubis','Scanner') and (LEN(@InputBoxUsername) < 3)) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Ihr Name (' + @InputBoxUsername +') ist doch sicher länger, oder!? (mind. 3 Zeichen)'
END
ELSE IF (@Status_Detail LIKE 'Abgelehnt%') and (LEN(@STATUS_DETAIL_TEXT) < 4) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Sie müssen eine Begründung eintragen (mind. 4 Zeichen)!'
END
ELSE IF (@Status_Detail not in (SELECT * from [FNCUST_SET_PM_DECISION_LIST_PROFILEID_1]())) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Bitte wählen Sie eine andere Entscheidung aus!'
END
ELSE
BEGIN
SET @MSGTYPE = 'Continue'
SET @QUESTION = ''
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_TEST_RESULT ([MSGTYPE], [QUESTION], [TITLE])
VALUES (@MsgType, @QUESTION, @TITLE)
RETURN;
END
GO

View File

@@ -0,0 +1,62 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_2] Script Date: 21.03.2024 17:42:56 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Prüfung diverser Werte und Eingaben bei Betätigung das Abschluss Buttons
-- Stand: MK // 29.09.2021
-- PM Profil: SWB - ER 2.0 - Durchsicht der Geschäftsführung
CREATE FUNCTION [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_2] (
@Status_Detail VARCHAR(150), -- = '{#CTRL#DGV_Status-Detail}',
@Status_Detail_Text VARCHAR(200) -- = '{#CTRL#TXT_Entscheidungs-Beschreibung}';
)
RETURNS @vTB_TEST_RESULT TABLE ([MSGTYPE] [VARCHAR](max) NULL,
[QUESTION] [VARCHAR](max) NULL,
[TITLE] [VARCHAR](max) NULL)
AS
BEGIN
DECLARE @MSGTYPE VARCHAR(100) = 'Continue',
@QUESTION VARCHAR(300) = '',
@TITLE VARCHAR(100) = 'Bitte prüfen Sie Ihre Eingaben!';
----------------------------------------------------------------------------------------------------------------------------------
IF (@Status_Detail LIKE 'Abgelehnt%') and (LEN(@STATUS_DETAIL_TEXT) < 4) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Sie müssen eine Begründung eintragen (mind. 4 Zeichen)!'
END
ELSE IF (@Status_Detail not in (SELECT * from [FNCUST_SET_PM_DECISION_LIST_PROFILEID_2]())) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Bitte wählen Sie eine andere Entscheidung aus!'
END
ELSE
BEGIN
SET @MSGTYPE = 'Continue'
SET @QUESTION = ''
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_TEST_RESULT ([MSGTYPE], [QUESTION], [TITLE])
VALUES (@MsgType, @QUESTION, @TITLE)
RETURN;
END
GO

View File

@@ -0,0 +1,89 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_3] Script Date: 21.03.2024 17:43:35 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Prüfung diverser Werte und Eingaben bei Betätigung das Abschluss Buttons
-- Stand: MK // 29.09.2021
-- PM Profil: SWB - ER 3.0 - Zuweisung und Vorprüfung durch die FiBu
CREATE FUNCTION [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_3] (
@BestellSummeNetto VARCHAR(150), -- = 0, -- Ganze oder kommagetrennte Zahl
@RechnungsSummeNetto VARCHAR(150), -- = 0, -- Ganze oder kommagetrennte Zahl
@Dokumentart VARCHAR(150), -- = '{#CTRL#CMB_DOKUMENTART}',
@Fremdreferenz1 VARCHAR(150), -- = '{#CTRL#TXT_Fremdreferenz_1}',
@Prüfer_Person VARCHAR(150), -- = '{#CTRL#DGV_Prüfer_Person}',
@Prüfer_Gruppe VARCHAR(150), -- = '{#CTRL#DGV_Prüfer_Gruppe}',
@Prüfer_Abteilung VARCHAR(150), -- = '{#CTRL#DGV_Prüfer_Abteilung}',
@Status_Detail VARCHAR(150), -- = '{#CTRL#DGV_Status-Detail}',
@Status_Detail_Text VARCHAR(200) -- = '{#CTRL#TXT_Entscheidungs-Beschreibung}';
)
RETURNS @vTB_TEST_RESULT TABLE ([MSGTYPE] [VARCHAR](max) NULL,
[QUESTION] [VARCHAR](max) NULL,
[TITLE] [VARCHAR](max) NULL)
AS
BEGIN
DECLARE @MSGTYPE VARCHAR(100) = 'Continue',
@QUESTION VARCHAR(300) = '',
@TITLE VARCHAR(100) = 'Bitte prüfen Sie Ihre Eingaben!',
@Fremdreferenz1Count INT = 0;
SET @RechnungsSummeNetto = (SELECT [dbo].[FNDD_GET_DECIMAL_FOR_VARCHAR] (@RechnungsSummeNetto));
SET @BestellSummeNetto = (SELECT [dbo].[FNDD_GET_DECIMAL_FOR_VARCHAR] (@BestellSummeNetto));
SET @Fremdreferenz1Count = (SELECT COUNT(szText19)
FROM [windream60].[dbo].[BaseAttributes]
WHERE [szText37] = @Dokumentart
and [szText19] = @Fremdreferenz1)-1;
----------------------------------------------------------------------------------------------------------------------------------
IF (@Prüfer_Person in ('','0') AND @Prüfer_Gruppe in ('','0') AND @Prüfer_Abteilung in ('','0')) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Achtung: Sie haben keinen Prüfer eingetragen!'
END
ELSE IF (@Status_Detail LIKE 'Abgelehnt%') and (LEN(@STATUS_DETAIL_TEXT) < 4) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Sie müssen eine Begründung eintragen (mind. 4 Zeichen)!'
END
ELSE IF (@Status_Detail not in (SELECT * from [FNCUST_SET_PM_DECISION_LIST_PROFILEID_3]())) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Bitte wählen Sie eine andere Entscheidung aus!'
END
ELSE IF (@Fremdreferenz1Count > 0) -- Nachfragen ob ok - sollte weiter unten abgefragt werden da prio gering
BEGIN
SET @MSGTYPE = 'MsgboxResult'
SET @QUESTION = 'Achtung: Die ext. Rechnungs-Nr wurde bereits erfasst (' + CONVERT(VARCHAR(30),@Fremdreferenz1Count) + ' Dokumente) ! Möchten Sie fortfahren?'
END
ELSE
BEGIN
SET @MSGTYPE = 'Continue'
SET @QUESTION = ''
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_TEST_RESULT ([MSGTYPE], [QUESTION], [TITLE])
VALUES (@MsgType, @QUESTION, @TITLE)
RETURN;
END
GO

View File

@@ -0,0 +1,63 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_4] Script Date: 21.03.2024 17:44:00 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Prüfung diverser Werte und Eingaben bei Betätigung das Abschluss Buttons
-- Stand: MK // 29.09.2021
-- PM Profil: SWB - ER 4.0 - Prüfung durch die Fachabteilung
CREATE FUNCTION [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_4] (
@Status_Detail VARCHAR(150), -- = '{#CTRL#DGV_Status-Detail}',
@Status_Detail_Text VARCHAR(200) -- = '{#CTRL#TXT_Entscheidungs-Beschreibung}';
)
RETURNS @vTB_TEST_RESULT TABLE ([MSGTYPE] [VARCHAR](max) NULL,
[QUESTION] [VARCHAR](max) NULL,
[TITLE] [VARCHAR](max) NULL)
AS
BEGIN
DECLARE @MSGTYPE VARCHAR(100) = 'Continue',
@QUESTION VARCHAR(300) = '',
@TITLE VARCHAR(100) = 'Bitte prüfen Sie Ihre Eingaben!',
@Fremdreferenz1Count INT = 0;
----------------------------------------------------------------------------------------------------------------------------------
IF (@Status_Detail LIKE 'Abgelehnt%') and (LEN(@STATUS_DETAIL_TEXT) < 4) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Sie müssen eine Begründung eintragen (mind. 4 Zeichen)!'
END
ELSE IF (@Status_Detail not in (SELECT * from [FNCUST_SET_PM_DECISION_LIST_PROFILEID_4]())) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Bitte wählen Sie eine andere Entscheidung aus!'
END
ELSE
BEGIN
SET @MSGTYPE = 'Continue'
SET @QUESTION = ''
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_TEST_RESULT ([MSGTYPE], [QUESTION], [TITLE])
VALUES (@MsgType, @QUESTION, @TITLE)
RETURN;
END
GO

View File

@@ -0,0 +1,62 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_5] Script Date: 21.03.2024 17:44:35 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Prüfung diverser Werte und Eingaben bei Betätigung das Abschluss Buttons
-- Stand: MK // 29.09.2021
-- PM Profil: SWB - ER 5.0 - Prüfung und Kontierung durch die FiBu
CREATE FUNCTION [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_5] (
@Status_Detail VARCHAR(150), -- = '{#CTRL#DGV_Status-Detail}',
@Status_Detail_Text VARCHAR(200) -- = '{#CTRL#TXT_Entscheidungs-Beschreibung}';
)
RETURNS @vTB_TEST_RESULT TABLE ([MSGTYPE] [VARCHAR](max) NULL,
[QUESTION] [VARCHAR](max) NULL,
[TITLE] [VARCHAR](max) NULL)
AS
BEGIN
DECLARE @MSGTYPE VARCHAR(100) = 'Continue',
@QUESTION VARCHAR(300) = '',
@TITLE VARCHAR(100) = 'Bitte prüfen Sie Ihre Eingaben!';
----------------------------------------------------------------------------------------------------------------------------------
IF (@Status_Detail LIKE 'Abgelehnt%') and (LEN(@STATUS_DETAIL_TEXT) < 4) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Sie müssen eine Begründung eintragen (mind. 4 Zeichen)!'
END
ELSE IF (@Status_Detail not in (SELECT * from [FNCUST_SET_PM_DECISION_LIST_PROFILEID_5]())) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Bitte wählen Sie eine andere Entscheidung aus!'
END
ELSE
BEGIN
SET @MSGTYPE = 'Continue'
SET @QUESTION = ''
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_TEST_RESULT ([MSGTYPE], [QUESTION], [TITLE])
VALUES (@MsgType, @QUESTION, @TITLE)
RETURN;
END
GO

View File

@@ -0,0 +1,70 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_6] Script Date: 21.03.2024 17:45:10 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Prüfung diverser Werte und Eingaben bei Betätigung das Abschluss Buttons
-- Stand: MK // 11.03.2021
-- PM Profil: SWB - ER 5.1 - Buchung und Zahlung durch die FiBu - Angehaltende Dokumente
CREATE FUNCTION [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_6] (
@Status_Detail VARCHAR(150), -- = '{#CTRL#DGV_Status-Detail}',
@Status_Detail_Text VARCHAR(200), -- = '{#CTRL#TXT_Entscheidungs-Beschreibung}'
@Prüfer VARCHAR(150), -- = '{#WMI#String 22}'
@Username VARCHAR(150) -- = '{#INT#USERNAME}'
)
RETURNS @vTB_TEST_RESULT TABLE ([MSGTYPE] [VARCHAR](max) NULL,
[QUESTION] [VARCHAR](max) NULL,
[TITLE] [VARCHAR](max) NULL)
AS
BEGIN
DECLARE @MSGTYPE VARCHAR(100) = 'Continue',
@QUESTION VARCHAR(300) = '',
@TITLE VARCHAR(100) = 'Bitte prüfen Sie Ihre Eingaben!';
----------------------------------------------------------------------------------------------------------------------------------
IF (LTRIM(RTRIM(@Prüfer)) = LTRIM(RTRIM(@Username))) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Als eingetragener Prüfer, dürfen Sie den Beleg nicht freigeben!'
END
ELSE IF (@Status_Detail LIKE 'Abgelehnt%') and (LEN(@STATUS_DETAIL_TEXT) < 4) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Sie müssen eine Begründung eintragen (mind. 4 Zeichen)!'
END
ELSE IF (@Status_Detail not in (SELECT * from [FNCUST_SET_PM_DECISION_LIST_PROFILEID_6]())) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Bitte wählen Sie eine andere Entscheidung aus!'
END
ELSE
BEGIN
SET @MSGTYPE = 'Continue'
SET @QUESTION = ''
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_TEST_RESULT ([MSGTYPE], [QUESTION], [TITLE])
VALUES (@MsgType, @QUESTION, @TITLE)
RETURN;
END
GO

View File

@@ -0,0 +1,62 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_9] Script Date: 21.03.2024 17:45:36 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- T-SQL Tabellenfunktion: Prüfung diverser Werte und Eingaben bei Betätigung das Abschluss Buttons
-- Stand: MK // 29.09.2021
-- PM Profil: SWB - ER 5.2 - Buchung durch die FiBu und Abbuchung durch den Kreditor
CREATE FUNCTION [dbo].[FNCUST_TEST_PM_USER_INPUT_PROFILEID_9] (
@Status_Detail VARCHAR(150), -- = '{#CTRL#DGV_Status-Detail}',
@Status_Detail_Text VARCHAR(200) -- = '{#CTRL#TXT_Entscheidungs-Beschreibung}';
)
RETURNS @vTB_TEST_RESULT TABLE ([MSGTYPE] [VARCHAR](max) NULL,
[QUESTION] [VARCHAR](max) NULL,
[TITLE] [VARCHAR](max) NULL)
AS
BEGIN
DECLARE @MSGTYPE VARCHAR(100) = 'Continue',
@QUESTION VARCHAR(300) = '',
@TITLE VARCHAR(100) = 'Bitte prüfen Sie Ihre Eingaben!';
----------------------------------------------------------------------------------------------------------------------------------
IF (@Status_Detail LIKE 'Abgelehnt%') and (LEN(@STATUS_DETAIL_TEXT) < 4) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Sie müssen eine Begründung eintragen (mind. 4 Zeichen)!'
END
ELSE IF (@Status_Detail not in (SELECT * from [FNCUST_SET_PM_DECISION_LIST_PROFILEID_9]())) -- Stop Grund
BEGIN
SET @MSGTYPE = 'MsgBoxStop'
SET @QUESTION = 'Bitte wählen Sie eine andere Entscheidung aus!'
END
ELSE
BEGIN
SET @MSGTYPE = 'Continue'
SET @QUESTION = ''
END
----------------------------------------------------------------------------------------------------------------------------------
INSERT INTO @vTB_TEST_RESULT ([MSGTYPE], [QUESTION], [TITLE])
VALUES (@MsgType, @QUESTION, @TITLE)
RETURN;
END
GO

View File

@@ -0,0 +1,179 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNDD_CHECK_USER_MODULE] Script Date: 21.03.2024 17:13:27 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE FUNCTION [dbo].[FNDD_CHECK_USER_MODULE] (@pUSERNAME VARCHAR(100), @pMODULE_SHORT_NAME VARCHAR(10),@pCLIENTID INTEGER)
RETURNS @Table TABLE
(SequentialOrder INT IDENTITY(1, 1),
USER_ID INTEGER,
USER_PRENAME VARCHAR(50),
USER_SURNAME VARCHAR(50),
USER_SHORTNAME VARCHAR(50),
USER_EMAIL VARCHAR(100),
USER_LANGUAGE VARCHAR(10),
USER_DATE_FORMAT VARCHAR(10),
USER_RIGHT_FILE_DEL BIT,
MODULE_ACCESS BIT,
IS_ADMIN BIT,
USERCOUNT_LOGGED_IN INTEGER,
COMMENT VARCHAR(500),
USER_RIGHT2 BIT NOT NULL DEFAULT 1,
USER_RIGHT3 BIT NOT NULL DEFAULT 0,
USER_RIGHT4 BIT NOT NULL DEFAULT 0,
USER_RIGHT5 BIT NOT NULL DEFAULT 0,
WORKING_MODE VARCHAR(5000) NOT NULL DEFAULT ''
,ADDITIONAL_TITLE VARCHAR(200))
AS
BEGIN
/*
This function checks all user-relevant relations an
*/
DECLARE
@RESULT VARCHAR(500),
@USER_ID INTEGER,
@USER_PRENAME VARCHAR(50),
@USER_SURNAME VARCHAR(50),
@USER_SHORTNAME VARCHAR(50),
@USER_EMAIL VARCHAR(50),
@USER_LANGUAGE VARCHAR(10),
@USER_DATE_FORMAT VARCHAR(10),
@IS_IN_MODULE BIT,
@IS_ADMIN BIT,
@USER_RIGHT_FILE_DEL BIT,
@USER_RIGHT2 BIT,
@USER_RIGHT3 BIT,
@USER_RIGHT4 BIT,
@USER_RIGHT5 BIT,
@USERCOUNT_LOGGED_IN INTEGER,
@MODULE_NAME VARCHAR(100),
@MODULE_GUID INTEGER,
@USER_GROUPNAME VARCHAR(100),
@ADMIN_GROUPNAME VARCHAR(100),
@WORKING_MODE VARCHAR(1000),
@ADDITIONAL_TITLE VARCHAR(500) = 'Stadtwerke Bebra - Workflows';
--'PM#NO_MASS_VALIDATOR;PM#FORCE_LAYOUT_OVERVIEW;PM#NO_CHARTS;PM#DEBUG_LOG'
SET @USER_RIGHT2 = 0 --0 = Drucken und Vorschau; 1 = DocumentPropertyView only View
SET @USER_RIGHT3 = 0
SET @USER_RIGHT4 = 0
SET @USER_RIGHT5 = 0
DECLARE @CONN_ID_IDB INTEGER
SELECT @CONN_ID_IDB = GUID FROM TBDD_CONNECTION WHERE SYS_CONNECTION = 1 AND BEZEICHNUNG = 'IDB'
SET @WORKING_MODE = ''
IF @pMODULE_SHORT_NAME = 'PM'
BEGIN
SET @WORKING_MODE = 'PM.NO_MASS_VALIDATOR#PM.FORCE_LAYOUT_OVERVIEW#PM.NO_CHARTS#PM.GHOSTMODE'--#PM.IDBWITHWMFS#PM.IDB_CONID!' + CONVERT(VARCHAR(2),@CONN_ID_IDB) #PM.DEBUG_LOG
+'#PM.MONITORING#PM.COLORSCHEME=Blue#PM.COL_LAST_EDITED=[Letzte Bearbeitung]#PM.COL_LAST_ADDED=[Erhalten wann]'
END
SET @USER_ID = 0
SET @IS_ADMIN = 0
SET @IS_IN_MODULE = 0
SET @USERCOUNT_LOGGED_IN = 0
SET @RESULT = ''
IF @pMODULE_SHORT_NAME = 'PM'
BEGIN
SET @USER_GROUPNAME = 'PM_USER'
SET @ADMIN_GROUPNAME = 'PM_ADMINS'
END
ELSE IF @pMODULE_SHORT_NAME = 'CW'
BEGIN
SET @USER_GROUPNAME = 'CW_USER'
SET @ADMIN_GROUPNAME = 'CW_ADMINS'
END
ELSE IF @pMODULE_SHORT_NAME = 'ADDI'
BEGIN
SET @USER_GROUPNAME = 'ADDI_USER'
SET @ADMIN_GROUPNAME = 'ADDI_ADMINS'
END
ELSE IF @pMODULE_SHORT_NAME = 'GLOBIX'
BEGIN
SET @USER_GROUPNAME = 'GLOBIX_USER'
SET @ADMIN_GROUPNAME = 'GLOBIX_ADMINS'
END
ELSE IF @pMODULE_SHORT_NAME = 'UM'
BEGIN
SET @USER_GROUPNAME = 'XXXX'
SET @ADMIN_GROUPNAME = 'UM_ADMINS'
END
SELECT @MODULE_GUID = GUID, @MODULE_NAME = NAME FROM TBDD_MODULES WHERE SHORT_NAME = @pMODULE_SHORT_NAME
IF NOT EXISTS(SELECT GUID FROM TBDD_USER WHERE UPPER(USERNAME) = UPPER(@pUSERNAME))
BEGIN
SET @RESULT = 'USER NOT CONFIGURED OR LISTED'
END
ELSE
BEGIN
SELECT @USER_ID = GUID,@USER_PRENAME = PRENAME,
@USER_SURNAME = NAME, @USER_SHORTNAME = SHORTNAME,@USER_EMAIL = EMAIL,@USER_LANGUAGE = LANGUAGE,@USER_DATE_FORMAT = DATE_FORMAT FROM TBDD_USER WHERE UPPER(USERNAME) = UPPER(@pUSERNAME)
--##### LICENSE COUNT
--SELECT @USERCOUNT_LOGGED_IN = [dbo].[FNDD_GET_LICENSE_COUNT] (@pCLIENTID)
SELECT @USERCOUNT_LOGGED_IN = COUNT(*) FROM TBDD_USER_MODULE_LOG_IN WHERE UPPER(MODULE) = UPPER(@MODULE_NAME) AND CLIENT_ID = @pCLIENTID
--CHECK USER ÍS IN MODULE_USER_GROUP
IF EXISTS(select T1.* from TBDD_GROUPS T, TBDD_GROUPS_USER T1 WHERE T.GUID = T1.GROUP_ID AND T1.USER_ID = @USER_ID AND UPPER(T.NAME) = @USER_GROUPNAME)
BEGIN
SET @IS_IN_MODULE = 1
SET @RESULT = 'User is part of Group (' + @USER_GROUPNAME + ')'
IF EXISTS(select T.* from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID)
BEGIN
SET @RESULT = @RESULT + '| User is also configured in User-Modules'
select @IS_ADMIN = T.IS_ADMIN,@USER_RIGHT_FILE_DEL = T.RIGHT1 from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID
END
END
ELSE
BEGIN
SET @RESULT = 'User not part of group (' + @USER_GROUPNAME + ')'
IF EXISTS(select T.* from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID)
BEGIN
SET @RESULT = @RESULT + '| BUT User configured in User-Modules'
select @IS_ADMIN = T.IS_ADMIN,@USER_RIGHT_FILE_DEL = T.RIGHT1
--,@USER_RIGHT2 = T.RIGHT2
from TBDD_USER_MODULES T WHERE T.USER_ID = @USER_ID AND T.MODULE_ID = @MODULE_GUID
END
END
-- Admin can do all!
IF EXISTS(select T1.* from TBDD_GROUPS T, TBDD_GROUPS_USER T1 WHERE T.GUID = T1.GROUP_ID AND T1.USER_ID = @USER_ID AND UPPER(T.NAME) = @ADMIN_GROUPNAME)
BEGIN
SET @RESULT = @RESULT + '| User is part of group (' + @ADMIN_GROUPNAME + ')'
SET @IS_ADMIN = 1
SET @IS_IN_MODULE = 1
SET @USER_RIGHT_FILE_DEL = 1
END
-- Scan Erfasser dürfen Dateien auch wieder löschen
IF EXISTS(select T1.* from TBDD_GROUPS T, TBDD_GROUPS_USER T1 WHERE T.GUID = T1.GROUP_ID AND T1.USER_ID = @USER_ID AND (UPPER(T.NAME) like '%Scan-Erfasser' ))
BEGIN
SET @USER_RIGHT_FILE_DEL = 1
END
-----------------------------------------------------------------------
-- GF, Admin und Fibu Gruppen sollen das Monitoring sehen, sonst keiner
IF EXISTS(select T1.* from TBDD_GROUPS T, TBDD_GROUPS_USER T1 WHERE T.GUID = T1.GROUP_ID AND T1.USER_ID = @USER_ID AND (UPPER(T.NAME) like '%Geschäftsführung' OR UPPER(T.NAME) like '%FiBu' OR UPPER(T.NAME) like '%Admins'))
BEGIN
SET @WORKING_MODE = @WORKING_MODE + '#PM.MONITORING'
END
-----------------------------------------------------------------------
END
INSERT INTO @Table (USER_ID,USER_PRENAME, USER_SURNAME,USER_SHORTNAME,USER_EMAIL,USER_LANGUAGE,USER_DATE_FORMAT, USER_RIGHT_FILE_DEL,
MODULE_ACCESS,IS_ADMIN,USERCOUNT_LOGGED_IN, COMMENT,WORKING_MODE,USER_RIGHT2,USER_RIGHT3,USER_RIGHT4,USER_RIGHT5
,ADDITIONAL_TITLE)
VALUES (@USER_ID,@USER_PRENAME,@USER_SURNAME,@USER_SHORTNAME,@USER_EMAIL,@USER_LANGUAGE,@USER_DATE_FORMAT,@USER_RIGHT_FILE_DEL,
@IS_IN_MODULE,@IS_ADMIN,@USERCOUNT_LOGGED_IN,@RESULT,@WORKING_MODE,@USER_RIGHT2,@USER_RIGHT3,@USER_RIGHT4,@USER_RIGHT5
,@ADDITIONAL_TITLE)
RETURN
END
GO

View File

@@ -0,0 +1,249 @@
USE [DD_ECM]
GO
/****** Object: UserDefinedFunction [dbo].[FNPM_CUST_GET_DOC_IDS] Script Date: 21.03.2024 17:14:16 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- 29.12.2022 MS Profil 18 - Abbuchung durch KReditor DA integriert
-- 29.12.2022 MS Nadine Metz bei Profil AR_PROFILE1 hinterlegt
-- 27.01.2022 MK Ergänzung um das neue Profil 99
-- 17.01.2022 Unterscheidung in Schritt 2 auf GMBH/GF und Abwasser-Bäder/Betriebsleiter
-- 10.11.2021 Prüfung für Schritt 6 eingebaut
-- 31.10.2021 Mandantenlogik eingebaut
-- 03.10.2021 ER Profile 4.1 hinzugefügt
-- 20.09.2021 Initial
CREATE FUNCTION [dbo].[FNPM_CUST_GET_DOC_IDS] (@USER_ID INTEGER)
RETURNS
@Table TABLE
(SCOPE VARCHAR(50),DOC_GUID BIGINT,DOC_ID BIGINT,PROFIL_ID INT, SequentialOrder INT IDENTITY(1, 1))
AS
BEGIN
DECLARE
@P_ID INTEGER,
@P_NAME VARCHAR(50),
@P_ER_2_0_ID INTEGER = 2, -- Einsicht für GMBH/GF oder Abwasser-Bäder/Betriebsleiter
@P_ER_3_0_ID INTEGER = 3, -- Einsicht für FiBu Mitarbeiter abhängig vom Mandant
@P_ER_3_1_ID INTEGER = 11, -- Einsicht für FiBu Mitarbeiter abhängig vom Mandant
@P_ER_4_0_ID INTEGER = 4, -- Einsicht für ausgesuchten Prüfer
@P_ER_4_1_ID INTEGER = 10, -- Einsicht für ausgesuchten Prüfer
@P_ER_5_0_ID INTEGER = 5, -- Einsicht für FiBu Mitarbeiter abhängig vom Mandant
@P_ER_5_1_ID INTEGER = 6, -- Einsicht für FiBu Mitarbeiter abhängig vom Mandant
@P_ER_5_2_ID INTEGER = 9, -- Einsicht für FiBu Mitarbeiter abhängig vom Mandant
@P_ER_5_3_ID INTEGER = 14, -- Einsicht für FiBu Mitarbeiter abhängig vom Mandant
@P_ABB_KRED_DA INTEGER = 18,
@P_ER_6_0_ID INTEGER = 16, -- Einsicht für ausgesuchte finale Freigeber
@P_ER_94_ID INTEGER = 7, -- Einsicht für FiBu Mitarbeiter abhängig vom Mandant
@P_ER_99_ID INTEGER = 17, -- Einsicht für FiBu Mitarbeiter abhängig vom Mandant
@P_AR_1_0_ID INTEGER = 15, -- Einsicht für FiBu Mitarbeiter abhängig vom Mandant
@PM_ADMIN_GROUP TINYINT = 2, -- = Admingruppen ID aus dem UserManager
@GF TINYINT = 16, -- = Führungsgruppe der GmbH
@Betriebsleiter TINYINT = 45, -- = Führungsgruppe der Abwasser + Bäder
@SBAbwasserbetriebFiBu TINYINT = 19, -- = Fibu Gruppe der Abwasserbetriebe
@SBBäderbetriebFiBu TINYINT = 21, -- = Fibu Gruppe der Bäderbetrieb
@SWBNetzFiBu TINYINT = 35, -- = Fibu Gruppe der GmbH
@SWBVertriebFiBu TINYINT = 41, -- = Fibu Gruppe des Vertriebs
@windreamAttributFinalApprover INTEGER = 10044; -- = Terminzahlung Finale Freigeber
------------------------------------------------------------------------------------------------------------
-- Standard -> Zuordnung erfolgt via PM Benutzer/Gruppenzuordnung
INSERT INTO @Table (SCOPE,DOC_GUID,DOC_ID,PROFIL_ID)
SELECT
'ACTIVE PROFILES',T.GUID, T.DOC_ID,T.PROFIL_ID
FROM
TBPM_PROFILE_FILES T INNER JOIN TBPM_PROFILE T1 on T.PROFIL_ID = T1.GUID
INNER JOIN windream60.dbo.BaseAttributes TWM_BA ON T.DOC_ID = TWM_BA.dwDocID
INNER JOIN [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] (@USER_ID) T2 ON T.PROFIL_ID = T2.PROFILE_ID --INNER JOIN [dbo].[FNPM_GET_ACTIVE_PROFILES_USER] (2)
AND T.EDIT = 0 AND T.IN_WORK = 0 AND T.ACTIVE = 1 AND T1.ACTIVE = 1
AND T2.PROFILE_ID <> @P_ER_2_0_ID
AND T2.PROFILE_ID <> @P_ER_3_0_ID
AND T2.PROFILE_ID <> @P_ER_3_1_ID
AND T2.PROFILE_ID <> @P_ER_4_0_ID
AND T2.PROFILE_ID <> @P_ER_4_1_ID
AND T2.PROFILE_ID <> @P_ER_5_0_ID
AND T2.PROFILE_ID <> @P_ER_5_1_ID
AND T2.PROFILE_ID <> @P_ER_5_2_ID
AND T2.PROFILE_ID <> @P_ER_5_3_ID
AND T2.PROFILE_ID <> @P_ER_6_0_ID
AND T2.PROFILE_ID <> @P_ER_94_ID
AND T2.PROFILE_ID <> @P_ER_99_ID
AND T2.PROFILE_ID <> @P_AR_1_0_ID
AND T2.PROFILE_ID <> @P_ABB_KRED_DA;
----------------------------------------------------------------------------------------------------------------
-- AR Profile 1 für die GmbH
INSERT INTO @Table (SCOPE,DOC_GUID,DOC_ID,PROFIL_ID)
SELECT 'AR_PROFILE1', T.GUID, T.DOC_ID,T.PROFIL_ID
FROM
TBPM_PROFILE_FILES T
INNER JOIN windream60.dbo.BaseAttributes TWMBA ON T.DOC_ID = TWMBA.dwDocID
INNER JOIN TBPM_PROFILE TP ON T.PROFIL_ID = TP.GUID
WHERE
(T.PROFIL_ID = @P_AR_1_0_ID)
AND T.EDIT = 0 AND T.IN_WORK = 0 AND T.ACTIVE = 1
AND TP.ACTIVE = 1
AND ((TWMBA.sztext31 = 'SWB-Netz' and @USER_ID in (SELECT [USER_ID] FROM [TBDD_GROUPS_USER] WHERE [GROUP_ID] = @SWBNetzFiBu))
OR (TWMBA.sztext31 = 'SWB-Vertrieb' and @USER_ID in (SELECT [USER_ID] FROM [TBDD_GROUPS_USER] WHERE [GROUP_ID] = @SWBVertriebFiBu)
OR @USER_ID = 12
))
-- ER Profile 2 für Abwasser + Bäder
INSERT INTO @Table (SCOPE,DOC_GUID,DOC_ID,PROFIL_ID)
SELECT 'AR_PROFILE1', T.GUID, T.DOC_ID,T.PROFIL_ID
FROM
TBPM_PROFILE_FILES T
INNER JOIN windream60.dbo.BaseAttributes TWMBA ON T.DOC_ID = TWMBA.dwDocID
INNER JOIN TBPM_PROFILE TP ON T.PROFIL_ID = TP.GUID
WHERE
(T.PROFIL_ID = @P_AR_1_0_ID)
AND T.EDIT = 0 AND T.IN_WORK = 0 AND T.ACTIVE = 1
AND TP.ACTIVE = 1
AND ((TWMBA.sztext31 = 'SB-Abwasserbetrieb' and @USER_ID in (SELECT [USER_ID] FROM [TBDD_GROUPS_USER] WHERE [GROUP_ID] = @SBAbwasserbetriebFiBu))
OR (TWMBA.sztext31 = 'SB-Bäderbetrieb' and @USER_ID in (SELECT [USER_ID] FROM [TBDD_GROUPS_USER] WHERE [GROUP_ID] = @SBBäderbetriebFiBu)))
----------------------------------------------------------------------------------------------------------------
-- ER Profile 2 für die GmbH
INSERT INTO @Table (SCOPE,DOC_GUID,DOC_ID,PROFIL_ID)
SELECT 'ER_PROFILE2', T.GUID, T.DOC_ID,T.PROFIL_ID
FROM
TBPM_PROFILE_FILES T
INNER JOIN windream60.dbo.BaseAttributes TWMBA ON T.DOC_ID = TWMBA.dwDocID
INNER JOIN TBPM_PROFILE TP ON T.PROFIL_ID = TP.GUID
WHERE
(T.PROFIL_ID = @P_ER_2_0_ID)
AND T.EDIT = 0 AND T.IN_WORK = 0 AND T.ACTIVE = 1
AND TP.ACTIVE = 1
AND ((TWMBA.sztext31 = 'SWB-Netz' and @USER_ID in (SELECT [USER_ID] FROM [TBDD_GROUPS_USER] WHERE [GROUP_ID] = @GF))
OR (TWMBA.sztext31 = 'SWB-Vertrieb' and @USER_ID in (SELECT [USER_ID] FROM [TBDD_GROUPS_USER] WHERE [GROUP_ID] = @GF)))
-- ER Profile 2 für Abwasser + Bäder
INSERT INTO @Table (SCOPE,DOC_GUID,DOC_ID,PROFIL_ID)
SELECT 'ER_PROFILE2', T.GUID, T.DOC_ID,T.PROFIL_ID
FROM
TBPM_PROFILE_FILES T
INNER JOIN windream60.dbo.BaseAttributes TWMBA ON T.DOC_ID = TWMBA.dwDocID
INNER JOIN TBPM_PROFILE TP ON T.PROFIL_ID = TP.GUID
WHERE
(T.PROFIL_ID = @P_ER_2_0_ID)
AND T.EDIT = 0 AND T.IN_WORK = 0 AND T.ACTIVE = 1
AND TP.ACTIVE = 1
AND ((TWMBA.sztext31 = 'SB-Abwasserbetrieb' and @USER_ID in (SELECT [USER_ID] FROM [TBDD_GROUPS_USER] WHERE [GROUP_ID] = @Betriebsleiter))
OR (TWMBA.sztext31 = 'SB-Bäderbetrieb' and @USER_ID in (SELECT [USER_ID] FROM [TBDD_GROUPS_USER] WHERE [GROUP_ID] = @Betriebsleiter)))
------------------------------------------------------------------------------------------------------------
-- ER Profile 3, 3.1, 94 und 99 sollen nur von der entsprechenden FiBu Mitarbeiter einsehbarsein, anhängig vom ausgewählten Mandant
INSERT INTO @Table (SCOPE,DOC_GUID,DOC_ID,PROFIL_ID)
SELECT 'ER_PROFILE3', T.GUID, T.DOC_ID,T.PROFIL_ID
FROM
TBPM_PROFILE_FILES T
INNER JOIN windream60.dbo.BaseAttributes TWMBA ON T.DOC_ID = TWMBA.dwDocID
INNER JOIN TBPM_PROFILE TP ON T.PROFIL_ID = TP.GUID
WHERE
(T.PROFIL_ID in (@P_ER_3_0_ID,@P_ER_3_1_ID,@P_ER_5_0_ID,@P_ER_5_1_ID,@P_ER_5_2_ID,@P_ER_5_3_ID,@P_ER_94_ID,@P_ER_99_ID,@P_ABB_KRED_DA))
AND T.EDIT = 0 AND T.IN_WORK = 0 AND T.ACTIVE = 1
AND TP.ACTIVE = 1
AND ((TWMBA.sztext31 = 'SB-Abwasserbetrieb' and @USER_ID in (42,49))
OR (TWMBA.sztext31 = 'SB-Bäderbetrieb' and @USER_ID in (42,49))
OR (TWMBA.sztext31 = 'SWB-Netz' and @USER_ID in (31,42))
OR (TWMBA.sztext31 = 'SWB-Vertrieb' and @USER_ID in (31,42))
OR @USER_ID in (SELECT [USER_ID] FROM [TBDD_GROUPS_USER] WHERE [GROUP_ID] = @PM_ADMIN_GROUP)) -- <-- Admins dürfen immer mandatenübergreifend sehen
-- Für die GmbH bin ich (Fr. Mohr) und in Vertretung ist Frau Kurz zuständig
-- Für Abwasser und Bäderbetrieb ist Frau Hohmann und in Vertretung auch Frau Kurz zuständig
-- Frau Mohr = 31
-- Frau Kurz = 42
-- Frau Hohmann = 49
----------------------------------------------------------------------------------------------------------------
-- ER Profile 4 und 4.1 sollen nur von der FiBu und des jeweils eingetragenen Prüfer gesichtet werden können
INSERT INTO @Table (SCOPE,DOC_GUID,DOC_ID,PROFIL_ID)
SELECT 'ER_PROFILE4', T.GUID, T.DOC_ID,T.PROFIL_ID
FROM
TBPM_PROFILE_FILES T
INNER JOIN windream60.dbo.BaseAttributes TWMBA ON T.DOC_ID = TWMBA.dwDocID
INNER JOIN TBDD_USER T2 ON UPPER(TWMBA.sztext22) = UPPER(T2.USERNAME)
INNER JOIN TBPM_PROFILE TP ON T.PROFIL_ID = TP.GUID
WHERE
(T.PROFIL_ID = @P_ER_4_0_ID or T.PROFIL_ID = @P_ER_4_1_ID)
AND T2.GUID = @USER_ID
AND T.EDIT = 0 AND T.IN_WORK = 0 AND T.ACTIVE = 1
AND TP.ACTIVE = 1
----------------------------------------------------------------------------------------------------------------
-- ER Profile 6 soll nur von den eingetragenen finalen Freigebern gesehen werden (Vieraugen Prinzip)
INSERT INTO @Table (SCOPE,DOC_GUID,DOC_ID,PROFIL_ID)
SELECT 'ER_PROFILE6', T.GUID, T.DOC_ID,T.PROFIL_ID
FROM
TBPM_PROFILE_FILES as T
INNER JOIN windream60.dbo.BaseAttributes TWMBA ON T.DOC_ID = TWMBA.dwDocID
INNER JOIN TBPM_PROFILE TP ON T.PROFIL_ID = TP.GUID
WHERE
(T.PROFIL_ID = @P_ER_6_0_ID)
AND T.EDIT = 0 AND T.IN_WORK = 0 AND T.ACTIVE = 1
AND TP.ACTIVE = 1
AND (@USER_ID in (SELECT [GUID] FROM [TBDD_USER] WHERE [USERNAME] IN (SELECT [Vector].[szValue]
FROM [windream60].[dbo].[Vector] as [Vector] (NOLOCK)
INNER JOIN [windream60].[dbo].[BaseAttributes] as [BaseAttributes] (NOLOCK) ON [Vector].[dwDocID] = [BaseAttributes].[dwDocID]
WHERE [Vector].[szValue] is not null
and [Vector].[dwAttrID] = @windreamAttributFinalApprover
and [BaseAttributes].[szText33] = 'in Arbeit'))
OR @USER_ID in (SELECT [USER_ID] FROM [TBDD_GROUPS_USER] WHERE [GROUP_ID] = @PM_ADMIN_GROUP)) -- <-- Admins dürfen immer sehen
----------------------------------------------------------------------------------------------------------------
--Wenn User Mitgleid von PM_ADMIN ist...
IF EXISTS(SELECT GUID FROM TBDD_GROUPS_USER WHERE GROUP_ID = @PM_ADMIN_GROUP AND USER_ID = @USER_ID)
--Wenn es Belege zu Profil 4 gibt ist...
IF EXISTS(SELECT
T.DOC_ID
FROM
TBPM_PROFILE_FILES T
INNER JOIN windream60.dbo.BaseAttributes TWMBA ON T.DOC_ID = TWMBA.dwDocID
INNER JOIN TBDD_USER T2 ON UPPER(TWMBA.sztext22) <> UPPER(T2.USERNAME)
INNER JOIN TBPM_PROFILE TP ON T.PROFIL_ID = TP.GUID
WHERE
T2.GUID = @USER_ID
AND TP.ACTIVE = 1
AND T.PROFIL_ID = @P_ER_4_0_ID
OR T.PROFIL_ID = @P_ER_4_1_ID )
INSERT INTO @Table (SCOPE,DOC_GUID,DOC_ID,PROFIL_ID)
SELECT 'ER_PROFILE4_ADMIN',T.GUID,T.DOC_ID,T.PROFIL_ID
FROM
TBPM_PROFILE_FILES T
INNER JOIN windream60.dbo.BaseAttributes TWMBA ON T.DOC_ID = TWMBA.dwDocID
INNER JOIN TBDD_USER T2 ON UPPER(TWMBA.sztext22) <> UPPER(T2.USERNAME)
WHERE
T2.GUID = @USER_ID
AND (T.PROFIL_ID = @P_ER_4_0_ID
OR T.PROFIL_ID = @P_ER_4_1_ID )
RETURN
END
--SELECT * FROM [dbo].[FNPM_CUST_GET_DOC_IDS] (2)
GO