318 lines
12 KiB
Transact-SQL
318 lines
12 KiB
Transact-SQL
INSERT INTO TBDD_MODULES(GUID,NAME,SHORT_NAME,LICENSE,STRING1,ACTIVE) VALUES
|
|
(9,'Mobile Workflow','MWF','kc6j9HSv/UJVAzFjMZv2A3wHZFy+2nNLKP9Qs8g9EVY=','',1)
|
|
GO
|
|
--DROP TABLE TBMWF_CONFIG;
|
|
--DROP TABLE TBMWF_PROF_BUTTONS;
|
|
--DROP TABLE TBMWF_PROF_CONTROLS_TF;
|
|
--DROP TABLE TBMWF_TF_FILES;
|
|
--DROP TABLE TBMWF_PROFILE_OBJ_STATE;
|
|
--DROP TABLE TBMWF_WF_STATE;
|
|
--DROP TABLE TBMWF_PROFILE_USER;
|
|
--DROP TABLE TBMWF_PROFILE
|
|
INSERT INTO [dbo].[TBDD_GROUPS] ([NAME] ,[INTERNAL] ,[ACTIVE] ,[COMMENT])
|
|
VALUES
|
|
('MWF_USERS'
|
|
,1
|
|
,1
|
|
,'User mit Freigabe für Mobile Workflow')
|
|
GO
|
|
INSERT INTO [dbo].[TBDD_GROUPS] ([NAME] ,[INTERNAL] ,[ACTIVE] ,[COMMENT])
|
|
VALUES
|
|
('MFI_USERS'
|
|
,1
|
|
,1
|
|
,'User mit Freigabe für Mobile File Indexer')
|
|
GO
|
|
|
|
CREATE TABLE TBMWF_CONFIG
|
|
(
|
|
GUID INTEGER NOT NULL IDENTITY (1, 1),
|
|
CONF_TITLE NVARCHAR(100) NOT NULL,
|
|
CONF_STRING NVARCHAR(900) NOT NULL,
|
|
ADDED_WHO NVARCHAR(30) NOT NULL DEFAULT 'SYSTEM',
|
|
ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
|
|
CHANGED_WHO NVARCHAR(30),
|
|
CHANGED_WHEN DATETIME,
|
|
CONSTRAINT PK_TBMWF_CONFIG PRIMARY KEY (GUID),
|
|
CONSTRAINT UQ_TBMWF_CONFIG_TITLE UNIQUE (CONF_TITLE)
|
|
)
|
|
GO
|
|
CREATE TRIGGER TBMWF_CONFIG_UPD ON TBMWF_CONFIG
|
|
FOR UPDATE
|
|
AS
|
|
UPDATE TBMWF_CONFIG SET CHANGED_WHEN = GETDATE()
|
|
FROM INSERTED
|
|
WHERE TBMWF_CONFIG.GUID = INSERTED.GUID
|
|
GO
|
|
INSERT INTO TBMWF_CONFIG (CONF_TITLE,CONF_STRING) VALUES
|
|
('WEB_TITLE','KUNDE Mobile-Workflow Portal'),
|
|
('WEB_SUBTITLE','Subtitle 2 Config in TBMWF_CONFIG');
|
|
|
|
|
|
------------------------------------------------------------------------------
|
|
--DROP TABLE TBMWF_PROFILE
|
|
CREATE TABLE TBMWF_PROFILE
|
|
(
|
|
GUID INTEGER IDENTITY(1,1),
|
|
INTL_NAME NVARCHAR(200) NOT NULL DEFAULT 0,
|
|
PM_PROFILE_ID INTEGER NOT NULL,
|
|
[TYPE_ID] TINYINT NOT NULL DEFAULT 1, --1 TaskFlow,2 AblageFlow, 3 SignFlow
|
|
ACTIVE BIT NOT NULL DEFAULT 0,
|
|
FORE_COLOR NVARCHAR(100),
|
|
BACK_COLOR NVARCHAR(100),
|
|
ADDED_WHO NVARCHAR(30) NOT NULL DEFAULT 'SYSTEM',
|
|
ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
|
|
CHANGED_WHO NVARCHAR(30),
|
|
CHANGED_WHEN DATETIME,
|
|
CONSTRAINT PK_TBMWF_PROFILE_GUID PRIMARY KEY(GUID),
|
|
CONSTRAINT UQ_TBMWF_PROFILE UNIQUE (INTL_NAME,PM_PROFILE_ID)
|
|
)
|
|
GO
|
|
CREATE TRIGGER TBMWF_PROFILE_UPD ON TBMWF_PROFILE
|
|
FOR UPDATE
|
|
AS
|
|
UPDATE TBMWF_PROFILE SET CHANGED_WHEN = GETDATE()
|
|
FROM INSERTED
|
|
WHERE TBMWF_PROFILE.GUID = INSERTED.GUID
|
|
GO
|
|
|
|
------------------------------------------------------------------------------
|
|
--DROP TABLE TBMWF_PROFILE_CONTROLS_UPDATE
|
|
CREATE TABLE TBMWF_PROFILE_CONTROLS_UPDATE
|
|
(
|
|
GUID BIGINT NOT NULL IDENTITY (1, 1),
|
|
MWF_PROFILE_ID INTEGER NOT NULL,
|
|
USR_ID INTEGER NOT NULL,
|
|
OBJ_ID BIGINT NOT NULL,
|
|
ATTR_NAME NVARCHAR(100) NOT NULL,
|
|
ATTR_VALUE NVARCHAR(3000) NOT NULL,
|
|
ADDED_WHO NVARCHAR(30) NOT NULL DEFAULT 'SYS',
|
|
ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
|
|
CONSTRAINT PK_TBMWF_PROFILE_CONTROLS_UPDATE PRIMARY KEY (GUID),
|
|
CONSTRAINT FK_TBMWF_PROFILE_CONTROLS_UPDATE_PROFILE FOREIGN KEY (MWF_PROFILE_ID) REFERENCES TBMWF_PROFILE (GUID),
|
|
CONSTRAINT UQ_TBMWF_PROFILE_CONTROLS_UPDATE UNIQUE(MWF_PROFILE_ID,USR_ID,OBJ_ID,ATTR_NAME)
|
|
)
|
|
GO
|
|
------------------------------------------------------------------------------
|
|
CREATE TABLE TBMWF_WF_STATE
|
|
(
|
|
GUID INTEGER NOT NULL IDENTITY (1, 1),
|
|
INTL_STATE NVARCHAR(100) NOT NULL,
|
|
ADDED_WHO NVARCHAR(30) NOT NULL DEFAULT 'SYS',
|
|
ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
|
|
CONSTRAINT PK_TBMWF_WF_STATE PRIMARY KEY (GUID),
|
|
CONSTRAINT UQ_TBMWF_WF_STATE UNIQUE(INTL_STATE)
|
|
)
|
|
GO
|
|
INSERT INTO TBMWF_WF_STATE (INTL_STATE) VALUES ('STARTED'),('WAITING'),('APPROVED'),('REJECTED'),('ADDED')
|
|
------------------------------------------------------------------------------
|
|
--DROP TABLE TBMWF_PROFILE_OBJ_STATE
|
|
CREATE TABLE TBMWF_PROFILE_OBJ_STATE
|
|
(
|
|
GUID BIGINT NOT NULL IDENTITY (1, 1),
|
|
MWF_PROFILE_ID INTEGER NOT NULL,
|
|
USR_ID INTEGER NOT NULL,
|
|
OBJ_ID BIGINT NOT NULL, --9999
|
|
STATE_ID INTEGER NOT NULL,
|
|
STATE2 NVARCHAR(100),
|
|
STATE3 NVARCHAR(100),
|
|
STATE4 NVARCHAR(100),
|
|
ADDED_WHO NVARCHAR(100) NOT NULL DEFAULT 'SYS',
|
|
ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
|
|
CHANGED_WHO NVARCHAR(100),
|
|
CHANGED_WHEN DATETIME,
|
|
CONSTRAINT PK_TBMWF_PROFILE_OBJ_STATE PRIMARY KEY (GUID),
|
|
CONSTRAINT FK_TBMWF_PROFILE_OBJ_STATE_STID FOREIGN KEY (STATE_ID) REFERENCES TBMWF_WF_STATE (GUID),
|
|
CONSTRAINT FK_TBMWF_PROFILE_OBJ_STATE_PID FOREIGN KEY (MWF_PROFILE_ID) REFERENCES TBMWF_PROFILE (GUID)
|
|
)
|
|
GO
|
|
|
|
--DROP TABLE TBMWF_PROFILE_OBJ_STATE_HISTORY
|
|
CREATE TABLE TBMWF_PROFILE_OBJ_STATE_HISTORY
|
|
(
|
|
GUID BIGINT NOT NULL IDENTITY (1, 1),
|
|
MWF_PROFILE_ID INTEGER NOT NULL,
|
|
USR_ID INTEGER NOT NULL,
|
|
OBJ_ID BIGINT NOT NULL,
|
|
STATE_ID INTEGER NOT NULL,
|
|
STATE2 NVARCHAR(100),
|
|
STATE3 NVARCHAR(100),
|
|
STATE4 NVARCHAR(100),
|
|
CHANGED_WHO NVARCHAR(100),
|
|
CHANGED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
|
|
CONSTRAINT PK_TBMWF_PROFILE_OBJ_STATE_HISTORY PRIMARY KEY (GUID),
|
|
CONSTRAINT FK_TBMWF_PROFILE_OBJ_STATE_HISTORY_STID FOREIGN KEY (STATE_ID) REFERENCES TBMWF_WF_STATE (GUID),
|
|
CONSTRAINT FK_TBMWF_PROFILE_OBJ_STATE_HISTORY_PID FOREIGN KEY (MWF_PROFILE_ID) REFERENCES TBMWF_PROFILE (GUID)
|
|
)
|
|
GO
|
|
CREATE TRIGGER [dbo].[TBMWF_PROFILE_OBJ_STATE_AFT_UPD] ON [dbo].[TBMWF_PROFILE_OBJ_STATE]
|
|
FOR UPDATE
|
|
AS
|
|
DECLARE @CHANGED_WHO NVARCHAR(100)
|
|
SELECT @CHANGED_WHO = CHANGED_WHO FROM inserted
|
|
INSERT INTO TBMWF_PROFILE_OBJ_STATE_HISTORY (MWF_PROFILE_ID,USR_ID,OBJ_ID,STATE_ID,STATE2,STATE3,STATE4,CHANGED_WHO)
|
|
SELECT MWF_PROFILE_ID,USR_ID,OBJ_ID,STATE_ID,STATE2,STATE3,STATE4,CHANGED_WHO FROM inserted
|
|
UPDATE TBMWF_PROFILE_OBJ_STATE SET CHANGED_WHEN = GETDATE(),CHANGED_WHO = @CHANGED_WHO
|
|
FROM INSERTED
|
|
WHERE TBMWF_PROFILE_OBJ_STATE.GUID = INSERTED.GUID
|
|
GO
|
|
------------------------------------------------------------------------------
|
|
--DROP TABLE TBMWF_PROF_CONTROLS_TF
|
|
CREATE TABLE TBMWF_PROF_CONTROLS_TF
|
|
(
|
|
GUID BIGINT NOT NULL IDENTITY (1, 1),
|
|
OBJ_STATE_ID BIGINT NOT NULL,
|
|
DIALOG_NO TINYINT NOT NULL DEFAULT 1,
|
|
ATTR_NAME NVARCHAR(100) NOT NULL,
|
|
CTRL_TYPE NVARCHAR(10) NOT NULL, --TXT,CMB,DTP
|
|
CAPTION NVARCHAR(100) NOT NULL,
|
|
[TEXT] NVARCHAR(500) NOT NULL,
|
|
ICON NVARCHAR(100) ,
|
|
MANDATORY BIT NOT NULL DEFAULT 0,
|
|
CHOICE_LIST NVARCHAR(MAX),
|
|
[READ_ONLY] BIT NOT NULL DEFAULT 0,
|
|
SEQU TINYINT DEFAULT 0,
|
|
ADDED_WHO NVARCHAR(100) NOT NULL DEFAULT 'SYS',
|
|
ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
|
|
CONSTRAINT PK_TBMWF_PROF_CONTROLS PRIMARY KEY (GUID),
|
|
CONSTRAINT FK_TBMWF_PROF_CONTROLS_TF_OSID FOREIGN KEY (OBJ_STATE_ID) REFERENCES TBMWF_PROFILE_OBJ_STATE (GUID),
|
|
CONSTRAINT UQ_TBMWF_PROF_CONTROLS UNIQUE(OBJ_STATE_ID,ATTR_NAME)
|
|
)
|
|
GO
|
|
|
|
CREATE TABLE TBMWF_TF_FILES
|
|
(
|
|
GUID BIGINT NOT NULL IDENTITY (1, 1),
|
|
OBJ_STATE_ID BIGINT NOT NULL,
|
|
F_FAPTH NVARCHAR(512) NOT NULL,
|
|
HEADLINE NVARCHAR(100) NOT NULL,
|
|
SUBLINE NVARCHAR(100),
|
|
COMMENT NVARCHAR(250),
|
|
ICON NVARCHAR(100),
|
|
ADDED_WHO NVARCHAR(100) NOT NULL DEFAULT 'SYS',
|
|
ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
|
|
CONSTRAINT PK_TBMWF_TF_FILES PRIMARY KEY (GUID),
|
|
CONSTRAINT FK_TBMWF_TF_FILES_OSID FOREIGN KEY (OBJ_STATE_ID) REFERENCES TBMWF_PROFILE_OBJ_STATE (GUID)
|
|
)
|
|
GO
|
|
|
|
CREATE TABLE TBMWF_PROF_BUTTONS
|
|
(
|
|
GUID INT NOT NULL IDENTITY (1, 1),
|
|
MWF_PROFILE_ID INT NOT NULL,
|
|
DIALOG_NO TINYINT NOT NULL DEFAULT 1,
|
|
BTN_TYPE NVARCHAR(20) NOT NULL, --BUTTON_MAIN, BUTTON_1,BUTTON_2
|
|
[TEXT] NVARCHAR(500) NOT NULL,
|
|
ICON NVARCHAR(100) ,
|
|
FORE_COLOR NVARCHAR(100) NOT NULL DEFAULT 'Black',
|
|
BACK_COLOR NVARCHAR(100) NOT NULL DEFAULT '',
|
|
COMMAND NVARCHAR(MAX) NOT NULL DEFAULT '',
|
|
DIALOG_COMMAND NVARCHAR(MAX) NOT NULL DEFAULT '',
|
|
CONFIRMATION_TEXT NVARCHAR(250) NOT NULL DEFAULT '',
|
|
ADDED_WHO NVARCHAR(100) NOT NULL DEFAULT 'SYS',
|
|
ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
|
|
CHANGED_WHO NVARCHAR(100),
|
|
CHANGED_WHEN DATETIME,
|
|
CONSTRAINT PK_TBMWF_PROF_BUTTONS PRIMARY KEY (GUID),
|
|
CONSTRAINT FK_TBMWF_PROF_BUTTONS_PID FOREIGN KEY (MWF_PROFILE_ID) REFERENCES TBMWF_PROFILE (GUID),
|
|
CONSTRAINT UQ_TBMWF_PROF_BUTTONS UNIQUE(MWF_PROFILE_ID,BTN_TYPE)
|
|
)
|
|
GO
|
|
CREATE TRIGGER TBMWF_PROF_BUTTONS_AFT_UPD ON TBMWF_PROF_BUTTONS
|
|
FOR UPDATE
|
|
AS
|
|
UPDATE TBMWF_PROF_BUTTONS SET CHANGED_WHEN = GETDATE()
|
|
FROM INSERTED
|
|
WHERE TBMWF_PROF_BUTTONS.GUID = INSERTED.GUID
|
|
GO
|
|
|
|
CREATE TABLE TBMWF_PROFILE_USER
|
|
(
|
|
GUID BIGINT NOT NULL IDENTITY (1, 1),
|
|
MWF_PROFILE_ID INTEGER NOT NULL,
|
|
USR_ID INTEGER NOT NULL,
|
|
ADDED_WHO NVARCHAR(100) NOT NULL DEFAULT 'SYS',
|
|
ADDED_WHEN DATETIME NOT NULL DEFAULT (GETDATE()),
|
|
CHANGED_WHO NVARCHAR(100),
|
|
CHANGED_WHEN DATETIME,
|
|
CONSTRAINT PK_TBMWF_PROFILE_USER PRIMARY KEY (GUID),
|
|
CONSTRAINT FK_TBMWF_PROFILE_USER_PID FOREIGN KEY (MWF_PROFILE_ID) REFERENCES TBMWF_PROFILE (GUID),
|
|
CONSTRAINT UQ_TBMWF_PROFILE_USER UNIQUE(MWF_PROFILE_ID,USR_ID)
|
|
)
|
|
GO
|
|
|
|
|
|
INSERT INTO TBDD_GUI_LANGUAGE_PHRASE (
|
|
MODULE, INTERNAL, OBJ_NAME, TITLE, LANGUAGE,CAPT_TYPE, STRING1,String2)
|
|
VALUES
|
|
( 'MFI', 1, '6', 'Title 6', 'de-DE','Title', 'Ablage Reisekosten','subtitle Reisekosten')
|
|
GO
|
|
INSERT INTO TBDD_GUI_LANGUAGE_PHRASE (
|
|
MODULE, INTERNAL, OBJ_NAME, TITLE, LANGUAGE,CAPT_TYPE, STRING1,String2)
|
|
VALUES
|
|
( 'MFI', 1, '9', 'Title 9', 'de-DE','Title', 'Fotodokumentation','subtitle Fotodoku')
|
|
GO
|
|
|
|
CREATE OR ALTER FUNCTION [dbo].[FNMWF_GET_PROFILES] (@pUSR_ID INTEGER)
|
|
RETURNS @TABLE_RETURN TABLE (PROFILE_ID INTEGER,[TYPE_ID] TINYINT, CAPTION NVARCHAR(100),SUBTITLE NVARCHAR(150), COUNTOBJ INT, FORE_COLOR NVARCHAR(100) , BACK_COLOR NVARCHAR(100))
|
|
AS
|
|
BEGIN
|
|
IF @pUSR_ID = 97 SET @pUSR_ID = 1
|
|
INSERT INTO @TABLE_RETURN (PROFILE_ID,[TYPE_ID],CAPTION,SUBTITLE,COUNTOBJ, FORE_COLOR,BACK_COLOR)
|
|
SELECT A.MWF_PROFILE_ID,1,C.STRING1,C.String2,COUNT(A.GUID),B.FORE_COLOR,B.BACK_COLOR FROM TBMWF_PROFILE_OBJ_STATE A INNER JOIN TBMWF_PROFILE B ON A.MWF_PROFILE_ID = B.GUID
|
|
INNER JOIN (SELECT * FROM TBDD_GUI_LANGUAGE_PHRASE WHERE MODULE = 'MWF' AND ISNUMERIC(OBJ_NAME) = 1) C ON A.MWF_PROFILE_ID = C.OBJ_NAME
|
|
INNER JOIN TBDD_USER D ON A.USR_ID = D.GUID
|
|
WHERE D.GUID = 1 AND D.LANGUAGE = C.LANGUAGE AND A.STATE_ID = @pUSR_ID
|
|
GROUP BY A.MWF_PROFILE_ID,C.STRING1,C.String2,B.FORE_COLOR,B.BACK_COLOR
|
|
|
|
|
|
INSERT INTO @TABLE_RETURN (PROFILE_ID,[TYPE_ID],CAPTION,SUBTITLE,COUNTOBJ, FORE_COLOR,BACK_COLOR)
|
|
SELECT A.MWF_PROFILE_ID,2,C.STRING1,C.String2,0, B.FORE_COLOR,B.BACK_COLOR
|
|
FROM TBMWF_PROFILE_USER A INNER JOIN TBMWF_PROFILE B ON A.MWF_PROFILE_ID = B.GUID
|
|
INNER JOIN (SELECT * FROM TBDD_GUI_LANGUAGE_PHRASE WHERE MODULE = 'MFI') C ON A.MWF_PROFILE_ID = C.OBJ_NAME
|
|
INNER JOIN TBDD_USER D ON A.USR_ID = D.GUID
|
|
WHERE D.GUID = @pUSR_ID AND C.LANGUAGE = D.LANGUAGE
|
|
|
|
|
|
RETURN
|
|
END
|
|
GO
|
|
CREATE OR ALTER FUNCTION [dbo].[FNMWF_GET_PROFILE_OBJECTS] (@pUSR_ID INTEGER,@pMWF_PID INTEGER)
|
|
RETURNS @TABLE_RETURN TABLE (ObjStateID BIGINT,ObjectID BIGINT,Headline1 NVARCHAR(100),Headline2 NVARCHAR(150),Subline1 NVARCHAR(100),Subline2 NVARCHAR(100),CMD_CheckIn NVARCHAR(MAX))
|
|
AS
|
|
BEGIN
|
|
IF @pUSR_ID = 97 SET @pUSR_ID = 1
|
|
INSERT INTO @TABLE_RETURN (ObjStateID,ObjectID,Headline1,Headline2,Subline1,Subline2,CMD_CheckIn)
|
|
SELECT
|
|
VA.GUID,
|
|
VA.OBJ_ID
|
|
,OW.[Mandant Name]
|
|
,OW.[KreditorName]
|
|
, OW.[Zahlungsziel]
|
|
, OW.[RechnungNr]
|
|
,''
|
|
FROM
|
|
TBMWF_PROFILE_OBJ_STATE VA INNER JOIN
|
|
TBPM_CUST_WORKFLOW_OVERVIEW OW ON VA.OBJ_ID = OW.DOC_ID
|
|
--INNER JOIN [IDB].[dbo].TBIDB_OBJECT OBJ ON OW.DOC_ID = OBJ.IDB_OBJ_ID
|
|
WHERE
|
|
VA.USR_ID = @pUSR_ID AND
|
|
OW.PROFILE_ID = 6 AND
|
|
--OBJ.DELETED = 0 AND OBJ.ACTIVE = 1 AND
|
|
VA.MWF_PROFILE_ID = @pMWF_PID AND
|
|
VA.STATE_ID = 1 ;
|
|
RETURN
|
|
END
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|