You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1207 lines
45 KiB
1207 lines
45 KiB
USE [BEA]
|
|
GO
|
|
|
|
/****** Object: StoredProcedure [dbo].[sp_rpt_Vergleiche] Script Date: 15.12.2013 09:13:52 ******/
|
|
DROP PROCEDURE [dbo].[sp_rpt_Vergleiche]
|
|
GO
|
|
|
|
/****** Object: StoredProcedure [dbo].[sp_rpt_Vergleiche] Script Date: 15.12.2013 09:13:52 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
-- =============================================
|
|
-- Author: <Author,,Name>
|
|
-- Create date: <Create Date,,>
|
|
-- Description: <Description,,>
|
|
-- =============================================
|
|
CREATE PROCEDURE [dbo].[sp_rpt_Vergleiche] @sqlwhere VARCHAR(255)
|
|
AS
|
|
BEGIN
|
|
DECLARE @t1 TABLE
|
|
(
|
|
funktionsnummer VARCHAR(255) ,
|
|
funktionsbezeichnung VARCHAR(255) ,
|
|
plattform VARCHAR(255) ,
|
|
verwaltungmit VARCHAR(255) ,
|
|
verwaltungdurch VARCHAR(255) ,
|
|
berechtigungIn VARCHAR(255) ,
|
|
berechtigungfuer VARCHAR(255) ,
|
|
eigentuemer VARCHAR(255)
|
|
)
|
|
DECLARE @t2 TABLE
|
|
(
|
|
funktionsnummer VARCHAR(255) ,
|
|
funktionsbezeichnung VARCHAR(255) ,
|
|
plattform VARCHAR(255) ,
|
|
verwaltungmit VARCHAR(255) ,
|
|
verwaltungdurch VARCHAR(255) ,
|
|
berechtigungIn VARCHAR(255) ,
|
|
berechtigungfuer VARCHAR(255) ,
|
|
eigentuemer VARCHAR(255)
|
|
)
|
|
|
|
DECLARE @param1 VARCHAR(255)
|
|
DECLARE @param2 VARCHAR(255)
|
|
DECLARE @paramtyp1 INT
|
|
DECLARE @paramtyp2 INT
|
|
SET @paramtyp1 = 0
|
|
SET @paramtyp2 = 0
|
|
DECLARE @fnr VARCHAR(255)
|
|
|
|
IF CHARINDEX('and', @sqlwhere, 0) > 1
|
|
BEGIN
|
|
DECLARE @tw1 VARCHAR(255)
|
|
DECLARE @tw2 VARCHAR(255)
|
|
SET @tw1 = SUBSTRING(@sqlwhere, 0,
|
|
CHARINDEX('and', @sqlwhere, 0))
|
|
SET @tw2 = SUBSTRING(@sqlwhere, CHARINDEX('and', @sqlwhere, 0),
|
|
LEN(@sqlwhere) - CHARINDEX('and',
|
|
@sqlwhere, 0))
|
|
--param1
|
|
IF CHARINDEX('TGNUMMER', UPPER(@tw1), 0) > 0
|
|
BEGIN
|
|
SET @paramtyp1 = 1
|
|
SELECT @param1 = SUBSTRING(@tw1,
|
|
CHARINDEX('=', @tw1, 0)
|
|
+ 3, 6)
|
|
END
|
|
IF CHARINDEX('FUNKTIONSSTELLE', UPPER(@tw1), 0) > 0
|
|
BEGIN
|
|
SET @paramtyp1 = 2
|
|
SELECT @param1 = SUBSTRING(@tw1,
|
|
CHARINDEX('=', @tw1) + 3,
|
|
8)
|
|
END
|
|
|
|
-- param2
|
|
IF CHARINDEX('TGNUMMER', UPPER(@tw2), 0) > 0
|
|
BEGIN
|
|
SET @paramtyp2 = 1
|
|
SELECT @param2 = SUBSTRING(@tw2,
|
|
CHARINDEX('=', @tw2, 0)
|
|
+ 3, 6)
|
|
END
|
|
IF CHARINDEX('FUNKTIONSSTELLE', UPPER(@tw2), 0) > 0
|
|
BEGIN
|
|
SET @paramtyp2 = 2
|
|
SELECT @param2 = SUBSTRING(@tw2,
|
|
CHARINDEX('=', @tw2) + 3,
|
|
8)
|
|
END
|
|
|
|
|
|
IF @paramtyp1 = 1
|
|
BEGIN
|
|
INSERT @t1
|
|
SELECT *
|
|
FROM [dbo].[fnkt_get_tgdata_Data](@param1)
|
|
END
|
|
IF @paramtyp1 = 2
|
|
BEGIN
|
|
SELECT @fnr = [FunktionstelleNr]
|
|
FROM dbo.Funktionstelle
|
|
WHERE [Funktionsstelle] = @param1 AND Aktiv=1
|
|
INSERT @t1
|
|
SELECT DISTINCT
|
|
*
|
|
FROM dbo.fnkt_get_Report_Data(@fnr)
|
|
END
|
|
|
|
IF @paramtyp2 = 1
|
|
BEGIN
|
|
INSERT @t2
|
|
SELECT *
|
|
FROM [dbo].[fnkt_get_tgdata_Data](@param2)
|
|
END
|
|
IF @paramtyp2 = 2
|
|
BEGIN
|
|
SELECT @fnr = [FunktionstelleNr]
|
|
FROM dbo.Funktionstelle
|
|
WHERE [Funktionsstelle] = @param2 AND aktiv=1
|
|
INSERT @t2
|
|
SELECT DISTINCT
|
|
*
|
|
FROM dbo.fnkt_get_Report_Data(@fnr)
|
|
END
|
|
END
|
|
|
|
IF CHARINDEX('DIFFERENZ', UPPER(@sqlwhere), 0) > 0
|
|
GOTO differenz
|
|
ELSE
|
|
GOTO vollstaendig
|
|
|
|
vollstaendig:
|
|
DECLARE @t3 TABLE
|
|
(
|
|
Zeile INT ,
|
|
Funktionsnummer1 VARCHAR(255) ,
|
|
Funktionsbezeichnung1 VARCHAR(255) ,
|
|
Plattform1 VARCHAR(255) ,
|
|
Verwaltungmit1 VARCHAR(255) ,
|
|
Verwaltungdurch1 VARCHAR(255) ,
|
|
BerechtigungIn1 VARCHAR(255) ,
|
|
Berechtigungfuer1 VARCHAR(255) ,
|
|
Eigentuemer1 VARCHAR(255) ,
|
|
Funktionsnummer2 VARCHAR(255) ,
|
|
Funktionsbezeichnung2 VARCHAR(255) ,
|
|
Plattform2 VARCHAR(255) ,
|
|
Verwaltungmit2 VARCHAR(255) ,
|
|
Verwaltungdurch2 VARCHAR(255) ,
|
|
BerechtigungIn2 VARCHAR(255) ,
|
|
Berechtigungfuer2 VARCHAR(255) ,
|
|
Eigentuemer2 VARCHAR(255)
|
|
)
|
|
|
|
DECLARE @t4 TABLE
|
|
(
|
|
Zeile INT ,
|
|
Funktionsnummer1 VARCHAR(255) ,
|
|
Funktionsbezeichnung1 VARCHAR(255) ,
|
|
Plattform1 VARCHAR(255) ,
|
|
Verwaltungmit1 VARCHAR(255) ,
|
|
Verwaltungdurch1 VARCHAR(255) ,
|
|
BerechtigungIn1 VARCHAR(255) ,
|
|
Berechtigungfuer1 VARCHAR(255) ,
|
|
Eigentuemer1 VARCHAR(255) ,
|
|
Funktionsnummer2 VARCHAR(255) ,
|
|
Funktionsbezeichnung2 VARCHAR(255) ,
|
|
Plattform2 VARCHAR(255) ,
|
|
Verwaltungmit2 VARCHAR(255) ,
|
|
Verwaltungdurch2 VARCHAR(255) ,
|
|
BerechtigungIn2 VARCHAR(255) ,
|
|
Berechtigungfuer2 VARCHAR(255) ,
|
|
Eigentuemer2 VARCHAR(255)
|
|
)
|
|
|
|
SELECT plattform ,
|
|
verwaltungmit ,
|
|
verwaltungdurch ,
|
|
berechtigungIn ,
|
|
berechtigungfuer ,
|
|
eigentuemer ,
|
|
plattform + verwaltungmit + verwaltungdurch + berechtigungin
|
|
+ berechtigungfuer AS sort
|
|
INTO #tmp1
|
|
FROM @t1
|
|
--EXCEPT
|
|
--SELECT plattform ,
|
|
-- verwaltungmit ,
|
|
-- verwaltungdurch ,
|
|
-- berechtigungIn ,
|
|
-- berechtigungfuer ,
|
|
-- eigentuemer
|
|
--FROM @t2
|
|
|
|
SELECT plattform ,
|
|
verwaltungmit ,
|
|
verwaltungdurch ,
|
|
berechtigungIn ,
|
|
berechtigungfuer ,
|
|
eigentuemer ,
|
|
plattform + verwaltungmit + verwaltungdurch + berechtigungin
|
|
+ berechtigungfuer AS sort
|
|
INTO #tmp2
|
|
FROM @t2
|
|
--EXCEPT
|
|
--SELECT plattform ,
|
|
-- verwaltungmit ,
|
|
-- verwaltungdurch ,
|
|
-- berechtigungIn ,
|
|
-- berechtigungfuer ,
|
|
-- eigentuemer
|
|
--FROM @t1
|
|
|
|
|
|
|
|
ALTER TABLE #tmp1 ADD Funktionsnummer VARCHAR(255)
|
|
ALTER TABLE #tmp1 ADD Funktionsbezeichnung VARCHAR(255)
|
|
|
|
ALTER TABLE #tmp2 ADD Funktionsnummer VARCHAR(255)
|
|
ALTER TABLE #tmp2 ADD Funktionsbezeichnung VARCHAR(255)
|
|
|
|
|
|
DECLARE @fbe VARCHAR(255)
|
|
|
|
SELECT @fnr = funktionsnummer
|
|
FROM @t1
|
|
SELECT @fbe = funktionsbezeichnung
|
|
FROM @t1
|
|
|
|
UPDATE #tmp1
|
|
SET Funktionsnummer = @fnr
|
|
UPDATE #tmp1
|
|
SET funktionsbezeichnung = @fbe
|
|
|
|
|
|
SELECT @fnr = funktionsnummer
|
|
FROM @t2
|
|
SELECT @fbe = funktionsbezeichnung
|
|
FROM @t2
|
|
|
|
UPDATE #tmp2
|
|
SET Funktionsnummer = @fnr
|
|
UPDATE #tmp2
|
|
SET funktionsbezeichnung = @fbe
|
|
|
|
|
|
DECLARE @Zeile INT ,
|
|
@Zeile1 INT ,
|
|
@Zeile2 INT ,
|
|
@Funktionsnummer1 VARCHAR(255) ,
|
|
@Funktionsbezeichnung1 VARCHAR(255) ,
|
|
@Plattform1 VARCHAR(255) ,
|
|
@Verwaltungmit1 VARCHAR(255) ,
|
|
@Verwaltungdurch1 VARCHAR(255) ,
|
|
@BerechtigungIn1 VARCHAR(255) ,
|
|
@Berechtigungfuer1 VARCHAR(255) ,
|
|
@Eigentuemer1 VARCHAR(255) ,
|
|
@Funktionsnummer2 VARCHAR(255) ,
|
|
@Funktionsbezeichnung2 VARCHAR(255) ,
|
|
@Plattform2 VARCHAR(255) ,
|
|
@Verwaltungmit2 VARCHAR(255) ,
|
|
@Verwaltungdurch2 VARCHAR(255) ,
|
|
@BerechtigungIn2 VARCHAR(255) ,
|
|
@Berechtigungfuer2 VARCHAR(255) ,
|
|
@Eigentuemer2 VARCHAR(255) ,
|
|
@sort1 VARCHAR(255) ,
|
|
@sort2 VARCHAR(255),
|
|
@inserted INT,
|
|
@ssort varchar(255)
|
|
SET @ssort=''
|
|
|
|
|
|
SET @zeile = 10
|
|
SELECT @fnr = funktionsnummer
|
|
FROM @t2
|
|
SELECT @fbe = funktionsbezeichnung
|
|
FROM @t2
|
|
|
|
DECLARE xc CURSOR
|
|
FOR
|
|
SELECT *
|
|
FROM #tmp1
|
|
ORDER BY sort
|
|
OPEN xc
|
|
FETCH NEXT FROM xc INTO @plattform1, @verwaltungmit1,
|
|
@verwaltungdurch1, @berechtigungin1, @berechtigungfuer1,
|
|
@eigentuemer1, @sort1, @funktionsnummer1, @funktionsbezeichnung1
|
|
WHILE @@FETCH_STATUS = 0
|
|
BEGIN
|
|
DECLARE xx CURSOR
|
|
FOR
|
|
SELECT *
|
|
FROM #tmp2
|
|
WHERE sort < @sort1 AND sort > @ssort
|
|
ORDER BY sort
|
|
OPEN xx
|
|
FETCH NEXT FROM xx INTO @plattform2, @verwaltungmit2,
|
|
@verwaltungdurch2, @berechtigungin2, @berechtigungfuer2,
|
|
@eigentuemer2, @sort2, @funktionsnummer2,
|
|
@funktionsbezeichnung2
|
|
WHILE @@FETCH_STATUS = 0
|
|
BEGIN
|
|
INSERT @t3
|
|
( Zeile ,
|
|
Funktionsnummer1 ,
|
|
Funktionsbezeichnung1 ,
|
|
Plattform1 ,
|
|
Verwaltungmit1 ,
|
|
Verwaltungdurch1 ,
|
|
BerechtigungIn1 ,
|
|
Berechtigungfuer1 ,
|
|
Eigentuemer1 ,
|
|
Funktionsnummer2 ,
|
|
Funktionsbezeichnung2 ,
|
|
Plattform2 ,
|
|
Verwaltungmit2 ,
|
|
Verwaltungdurch2 ,
|
|
BerechtigungIn2 ,
|
|
Berechtigungfuer2 ,
|
|
Eigentuemer2
|
|
)
|
|
VALUES ( @zeile ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
@funktionsnummer2 ,
|
|
@Funktionsbezeichnung2 ,
|
|
@Plattform2 ,
|
|
@Verwaltungmit2 ,
|
|
@Verwaltungdurch2 ,
|
|
@BerechtigungIn2 ,
|
|
@Berechtigungfuer2 ,
|
|
@Eigentuemer2
|
|
)
|
|
SET @ssort=@sort2
|
|
FETCH NEXT FROM xx INTO @plattform2, @verwaltungmit2,
|
|
@verwaltungdurch2, @berechtigungin2,
|
|
@berechtigungfuer2, @eigentuemer2, @sort2,
|
|
@funktionsnummer2, @funktionsbezeichnung2
|
|
END
|
|
CLOSE xx
|
|
DEALLOCATE xx
|
|
SET @inserted=0
|
|
DECLARE xx CURSOR
|
|
FOR
|
|
SELECT *
|
|
FROM #tmp2
|
|
WHERE sort = @sort1
|
|
OPEN xx
|
|
FETCH NEXT FROM xx INTO @plattform2, @verwaltungmit2,
|
|
@verwaltungdurch2, @berechtigungin2, @berechtigungfuer2,
|
|
@eigentuemer2, @sort2, @funktionsnummer2,
|
|
@funktionsbezeichnung2
|
|
WHILE @@FETCH_STATUS = 0
|
|
BEGIN
|
|
SET @inserted=1
|
|
INSERT @t3
|
|
( Zeile ,
|
|
Funktionsnummer1 ,
|
|
Funktionsbezeichnung1 ,
|
|
Plattform1 ,
|
|
Verwaltungmit1 ,
|
|
Verwaltungdurch1 ,
|
|
BerechtigungIn1 ,
|
|
Berechtigungfuer1 ,
|
|
Eigentuemer1 ,
|
|
Funktionsnummer2 ,
|
|
Funktionsbezeichnung2 ,
|
|
Plattform2 ,
|
|
Verwaltungmit2 ,
|
|
Verwaltungdurch2 ,
|
|
BerechtigungIn2 ,
|
|
Berechtigungfuer2 ,
|
|
Eigentuemer2
|
|
)
|
|
VALUES ( @zeile ,
|
|
@funktionsnummer1 ,
|
|
@Funktionsbezeichnung1 ,
|
|
@Plattform1 ,
|
|
@Verwaltungmit1 ,
|
|
@Verwaltungdurch1 ,
|
|
@BerechtigungIn1 ,
|
|
@Berechtigungfuer1 ,
|
|
@Eigentuemer1 ,
|
|
@funktionsnummer2 ,
|
|
@Funktionsbezeichnung2 ,
|
|
@Plattform2 ,
|
|
@Verwaltungmit2 ,
|
|
@Verwaltungdurch2 ,
|
|
@BerechtigungIn2 ,
|
|
@Berechtigungfuer2 ,
|
|
@Eigentuemer2
|
|
)
|
|
SET @ssort=@sort1
|
|
FETCH NEXT FROM xx INTO @plattform2, @verwaltungmit2,
|
|
@verwaltungdurch2, @berechtigungin2,
|
|
@berechtigungfuer2, @eigentuemer2, @sort2,
|
|
@funktionsnummer2, @funktionsbezeichnung2
|
|
END
|
|
CLOSE xx
|
|
DEALLOCATE xx
|
|
IF @inserted=0 begin
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
INSERT @t3
|
|
( Zeile ,
|
|
Funktionsnummer1 ,
|
|
Funktionsbezeichnung1 ,
|
|
Plattform1 ,
|
|
Verwaltungmit1 ,
|
|
Verwaltungdurch1 ,
|
|
BerechtigungIn1 ,
|
|
Berechtigungfuer1 ,
|
|
Eigentuemer1 ,
|
|
Funktionsnummer2 ,
|
|
Funktionsbezeichnung2 ,
|
|
Plattform2 ,
|
|
Verwaltungmit2 ,
|
|
Verwaltungdurch2 ,
|
|
BerechtigungIn2 ,
|
|
Berechtigungfuer2 ,
|
|
Eigentuemer2
|
|
)
|
|
VALUES ( @zeile ,
|
|
@funktionsnummer1 ,
|
|
@Funktionsbezeichnung1 ,
|
|
@Plattform1 ,
|
|
@Verwaltungmit1 ,
|
|
@Verwaltungdurch1 ,
|
|
@BerechtigungIn1 ,
|
|
@Berechtigungfuer1 ,
|
|
@Eigentuemer1 ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
''
|
|
)
|
|
end
|
|
SET @zeile = @zeile + 10
|
|
FETCH NEXT FROM xc INTO @plattform1, @verwaltungmit1,
|
|
@verwaltungdurch1, @berechtigungin1, @berechtigungfuer1,
|
|
@eigentuemer1, @sort1, @funktionsnummer1,
|
|
@funktionsbezeichnung1
|
|
|
|
END
|
|
CLOSE xc
|
|
DEALLOCATE xc
|
|
|
|
SELECT * FROM @t3
|
|
RETURN
|
|
|
|
|
|
|
|
|
|
DECLARE @rc INT
|
|
SELECT @fnr = funktionsnummer
|
|
FROM @t1
|
|
SELECT @fbe = funktionsbezeichnung
|
|
FROM @t1
|
|
|
|
SET @zeile = 10
|
|
DECLARE xc CURSOR
|
|
FOR
|
|
SELECT *
|
|
FROM #tmp2
|
|
OPEN xc
|
|
FETCH NEXT FROM xc INTO @plattform1, @verwaltungmit1,
|
|
@verwaltungdurch1, @berechtigungin1, @berechtigungfuer1,
|
|
@eigentuemer1, @SORT1, @funktionsnummer1, @funktionsbezeichnung1
|
|
WHILE @@FETCH_STATUS = 0
|
|
BEGIN
|
|
SELECT @rc = COUNT(*)
|
|
FROM @t3
|
|
WHERE zeile = @zeile
|
|
IF @rc = 0
|
|
BEGIN
|
|
INSERT @t3
|
|
( Zeile ,
|
|
Funktionsnummer1 ,
|
|
Funktionsbezeichnung1 ,
|
|
Plattform1 ,
|
|
Verwaltungmit1 ,
|
|
Verwaltungdurch1 ,
|
|
BerechtigungIn1 ,
|
|
Berechtigungfuer1 ,
|
|
Eigentuemer1 ,
|
|
Funktionsnummer2 ,
|
|
Funktionsbezeichnung2 ,
|
|
Plattform2 ,
|
|
Verwaltungmit2 ,
|
|
Verwaltungdurch2 ,
|
|
BerechtigungIn2 ,
|
|
Berechtigungfuer2 ,
|
|
Eigentuemer2
|
|
)
|
|
VALUES ( @zeile ,
|
|
@fnr ,
|
|
@fbe ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
@funktionsnummer1 ,
|
|
@Funktionsbezeichnung1 ,
|
|
@Plattform1 ,
|
|
@Verwaltungmit1 ,
|
|
@Verwaltungdurch1 ,
|
|
@BerechtigungIn1 ,
|
|
@Berechtigungfuer1 ,
|
|
@Eigentuemer1
|
|
)
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
UPDATE @t3
|
|
SET Funktionsnummer2 = @funktionsnummer1 ,
|
|
Funktionsbezeichnung2 = @Funktionsbezeichnung1 ,
|
|
Plattform2 = @plattform1 ,
|
|
Verwaltungmit2 = @verwaltungmit1 ,
|
|
Verwaltungdurch2 = @verwaltungdurch1 ,
|
|
BerechtigungIn2 = @berechtigungin1 ,
|
|
Berechtigungfuer2 = @berechtigungfuer1 ,
|
|
Eigentuemer2 = @eigentuemer1
|
|
WHERE zeile = @zeile
|
|
END
|
|
|
|
SET @zeile = @zeile + 10
|
|
FETCH NEXT FROM xc INTO @plattform1, @verwaltungmit1,
|
|
@verwaltungdurch1, @berechtigungin1, @berechtigungfuer1,
|
|
@eigentuemer1, @SORT1, @funktionsnummer1,
|
|
@funktionsbezeichnung1
|
|
|
|
END
|
|
CLOSE xc
|
|
DEALLOCATE xc
|
|
|
|
SELECT *
|
|
FROM @t3
|
|
DROP TABLE #tmp1
|
|
DROP TABLE #tmp2
|
|
|
|
RETURN
|
|
|
|
differenz:
|
|
SELECT plattform ,
|
|
verwaltungmit ,
|
|
verwaltungdurch ,
|
|
berechtigungIn ,
|
|
berechtigungfuer ,
|
|
eigentuemer
|
|
INTO #tmp11
|
|
FROM @t1
|
|
EXCEPT
|
|
SELECT plattform ,
|
|
verwaltungmit ,
|
|
verwaltungdurch ,
|
|
berechtigungIn ,
|
|
berechtigungfuer ,
|
|
eigentuemer
|
|
FROM @t2
|
|
|
|
SELECT plattform ,
|
|
verwaltungmit ,
|
|
verwaltungdurch ,
|
|
berechtigungIn ,
|
|
berechtigungfuer ,
|
|
eigentuemer
|
|
INTO #tmp21
|
|
FROM @t2
|
|
EXCEPT
|
|
SELECT plattform ,
|
|
verwaltungmit ,
|
|
verwaltungdurch ,
|
|
berechtigungIn ,
|
|
berechtigungfuer ,
|
|
eigentuemer
|
|
FROM @t1
|
|
|
|
|
|
|
|
ALTER TABLE #tmp11 ADD Funktionsnummer VARCHAR(255)
|
|
ALTER TABLE #tmp11 ADD Funktionsbezeichnung VARCHAR(255)
|
|
|
|
ALTER TABLE #tmp21 ADD Funktionsnummer VARCHAR(255)
|
|
ALTER TABLE #tmp21 ADD Funktionsbezeichnung VARCHAR(255)
|
|
|
|
|
|
SELECT @fnr = funktionsnummer
|
|
FROM @t1
|
|
SELECT @fbe = funktionsbezeichnung
|
|
FROM @t1
|
|
|
|
UPDATE #tmp11
|
|
SET Funktionsnummer = @fnr
|
|
UPDATE #tmp11
|
|
SET funktionsbezeichnung = @fbe
|
|
|
|
|
|
SELECT @fnr = funktionsnummer
|
|
FROM @t2
|
|
SELECT @fbe = funktionsbezeichnung
|
|
FROM @t2
|
|
|
|
UPDATE #tmp21
|
|
SET Funktionsnummer = @fnr
|
|
UPDATE #tmp21
|
|
SET funktionsbezeichnung = @fbe
|
|
|
|
|
|
|
|
|
|
SET @zeile = 1
|
|
SELECT @fnr = funktionsnummer
|
|
FROM @t2
|
|
SELECT @fbe = funktionsbezeichnung
|
|
FROM @t2
|
|
|
|
DECLARE xc CURSOR
|
|
FOR
|
|
SELECT *
|
|
FROM #tmp11
|
|
OPEN xc
|
|
FETCH NEXT FROM xc INTO @plattform1, @verwaltungmit1,
|
|
@verwaltungdurch1, @berechtigungin1, @berechtigungfuer1,
|
|
@eigentuemer1, @funktionsnummer1, @funktionsbezeichnung1
|
|
WHILE @@FETCH_STATUS = 0
|
|
BEGIN
|
|
INSERT @t3
|
|
( Zeile ,
|
|
Funktionsnummer1 ,
|
|
Funktionsbezeichnung1 ,
|
|
Plattform1 ,
|
|
Verwaltungmit1 ,
|
|
Verwaltungdurch1 ,
|
|
BerechtigungIn1 ,
|
|
Berechtigungfuer1 ,
|
|
Eigentuemer1 ,
|
|
Funktionsnummer2 ,
|
|
Funktionsbezeichnung2 ,
|
|
Plattform2 ,
|
|
Verwaltungmit2 ,
|
|
Verwaltungdurch2 ,
|
|
BerechtigungIn2 ,
|
|
Berechtigungfuer2 ,
|
|
Eigentuemer2
|
|
)
|
|
VALUES ( @zeile ,
|
|
@funktionsnummer1 ,
|
|
@Funktionsbezeichnung1 ,
|
|
@Plattform1 ,
|
|
@Verwaltungmit1 ,
|
|
@Verwaltungdurch1 ,
|
|
@BerechtigungIn1 ,
|
|
@Berechtigungfuer1 ,
|
|
@Eigentuemer1 ,
|
|
@fnr ,
|
|
@fbe ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
''
|
|
)
|
|
SET @zeile = @zeile + 1
|
|
FETCH NEXT FROM xc INTO @plattform1, @verwaltungmit1,
|
|
@verwaltungdurch1, @berechtigungin1, @berechtigungfuer1,
|
|
@eigentuemer1, @funktionsnummer1, @funktionsbezeichnung1
|
|
|
|
END
|
|
CLOSE xc
|
|
DEALLOCATE xc
|
|
|
|
SELECT @fnr = funktionsnummer
|
|
FROM @t1
|
|
SELECT @fbe = funktionsbezeichnung
|
|
FROM @t1
|
|
|
|
DECLARE xc CURSOR
|
|
FOR
|
|
SELECT *
|
|
FROM #tmp21
|
|
OPEN xc
|
|
FETCH NEXT FROM xc INTO @plattform1, @verwaltungmit1,
|
|
@verwaltungdurch1, @berechtigungin1, @berechtigungfuer1,
|
|
@eigentuemer1, @funktionsnummer1, @funktionsbezeichnung1
|
|
WHILE @@FETCH_STATUS = 0
|
|
BEGIN
|
|
INSERT @t3
|
|
( Zeile ,
|
|
Funktionsnummer1 ,
|
|
Funktionsbezeichnung1 ,
|
|
Plattform1 ,
|
|
Verwaltungmit1 ,
|
|
Verwaltungdurch1 ,
|
|
BerechtigungIn1 ,
|
|
Berechtigungfuer1 ,
|
|
Eigentuemer1 ,
|
|
Funktionsnummer2 ,
|
|
Funktionsbezeichnung2 ,
|
|
Plattform2 ,
|
|
Verwaltungmit2 ,
|
|
Verwaltungdurch2 ,
|
|
BerechtigungIn2 ,
|
|
Berechtigungfuer2 ,
|
|
Eigentuemer2
|
|
)
|
|
VALUES ( @zeile ,
|
|
@fnr ,
|
|
@fbe ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
'' ,
|
|
@funktionsnummer1 ,
|
|
@Funktionsbezeichnung1 ,
|
|
@Plattform1 ,
|
|
@Verwaltungmit1 ,
|
|
@Verwaltungdurch1 ,
|
|
@BerechtigungIn1 ,
|
|
@Berechtigungfuer1 ,
|
|
@Eigentuemer1
|
|
)
|
|
SET @zeile = @zeile + 1
|
|
FETCH NEXT FROM xc INTO @plattform1, @verwaltungmit1,
|
|
@verwaltungdurch1, @berechtigungin1, @berechtigungfuer1,
|
|
@eigentuemer1, @funktionsnummer1, @funktionsbezeichnung1
|
|
|
|
END
|
|
CLOSE xc
|
|
DEALLOCATE xc
|
|
|
|
SELECT *
|
|
FROM @t3
|
|
|
|
--INSERT
|
|
--SELECT Funktionsnummer,
|
|
-- Funktionsbezeichnung,
|
|
-- Plattform,
|
|
-- verwaltungmit AS Verwaltung_Mit,
|
|
-- verwaltungdurch AS Verwaltung_Durch,
|
|
-- berechtigungIn AS Berechtigung_in,
|
|
-- berechtigungfuer AS Berechtigung_Fuer,
|
|
-- eigentuemer AS Eigentuemer
|
|
--FROM #tmp1 UNION ALL
|
|
--SELECT
|
|
--Funktionsnummer,
|
|
-- Funktionsbezeichnung,
|
|
-- Plattform,
|
|
-- verwaltungmit AS Verwaltung_Mit,
|
|
-- verwaltungdurch AS Verwaltung_Durch,
|
|
-- berechtigungIn AS Berechtigung_in,
|
|
-- berechtigungfuer AS Berechtigung_Fuer,
|
|
-- eigentuemer AS Eigentuemer
|
|
-- FROM #tmp2
|
|
|
|
DROP TABLE #tmp11
|
|
DROP TABLE #tmp21
|
|
|
|
--DECLARE xc
|
|
END
|
|
|
|
GO
|
|
|
|
|
|
|
|
USE [BEA]
|
|
GO
|
|
|
|
/****** Object: StoredProcedure [dbo].[mig1] Script Date: 15.12.2013 09:13:36 ******/
|
|
DROP PROCEDURE [dbo].[mig1]
|
|
GO
|
|
|
|
/****** Object: StoredProcedure [dbo].[mig1] Script Date: 15.12.2013 09:13:36 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
-- =============================================
|
|
-- Author: <Author,,Name>F
|
|
-- Create date: <Create Date,,>
|
|
-- Description: <Description,,>
|
|
-- =============================================
|
|
CREATE PROCEDURE [dbo].[mig1]
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
UPDATE dbo.BAA_SHU_Extrakt_Beziehungen SET typ='Plattformen' WHERE bezeichnung LIKE 'asc %' AND typnr=-35
|
|
UPDATE dbo.BAA_SHU_Extrakt_Beziehungen SET parent_typ='Plattformen' WHERE parent_bezeichnung LIKE 'asc %' AND typnr=-11
|
|
DELETE FROM dbo.BAA_SHU_Extrakt_Beziehungen WHERE typnr=51
|
|
TRUNCATE TABLE berechtigung
|
|
TRUNCATE TABLE Berechtigung_Plattform
|
|
TRUNCATE TABLE Berechtigung_Server
|
|
TRUNCATE TABLE Funktionstelle_Plattform
|
|
TRUNCATE TABLE Funktionstelle_Server
|
|
TRUNCATE TABLE Personal_Berechtigung
|
|
TRUNCATE TABLE Personal_Server
|
|
TRUNCATE TABLE Plattform_Berechtigung
|
|
TRUNCATE TABLE Plattform_Server
|
|
TRUNCATE TABLE Verwaltung_durch
|
|
TRUNCATE TABLE Verwaltung_durch_Berechtigung
|
|
TRUNCATE TABLE Verwaltung_durch_Plattform
|
|
TRUNCATE TABLE Verwaltung_durch_Server
|
|
TRUNCATE TABLE Server
|
|
TRUNCATE TABLE funktionstelle
|
|
TRUNCATE TABLE personal
|
|
TRUNCATE TABLE personal_FunktionStelle
|
|
TRUNCATE TABLE Plattform
|
|
TRUNCATE TABLE Funktionstelle_Berechtigung
|
|
TRUNCATE TABLE Personal_Plattform
|
|
TRUNCATE TABLE Verwaltung_mit
|
|
TRUNCATE TABLE Verwaltung_mit_Plattform
|
|
TRUNCATE TABLE Verwaltung_mit_Berechtigung
|
|
TRUNCATE TABLE Verwaltung_mit_Server
|
|
TRUNCATE TABLE Verwaltung_mit_FunktionStelle
|
|
|
|
|
|
INSERT Berechtigung ( Berechtigungnr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( -1, 0, 'Berechtigung', '', 0, 1, GETDATE(), GETDATE(), 1 )
|
|
INSERT Funktionstelle ( FunktionstelleNr, ParentID, Bezeichnung, Beschreibung, sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( -2, 0, 'Organisation', '', 0, 1, GETDATE(), GETDATE(), 1 )
|
|
INSERT Personal ( Personalnr, ParentID, Bezeichnung, Beschreibung, tgnummer, name, sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( -4, 0, 'Personal', '', '', '', 0, 1, GETDATE(), GETDATE(), 1 )
|
|
INSERT Plattform ( Plattformnr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( -5, 0, 'Plattform', '', 0, 1, GETDATE(), GETDATE(), 1 )
|
|
INSERT Server ( Servernr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( -6, 0, 'Server', '', 0, 1, GETDATE(), GETDATE(), 1 )
|
|
INSERT Verwaltung_durch ( Verwaltung_durchnr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( -7, 0, 'Verwaltung durch', '', 0, 1, GETDATE(), GETDATE(), 1 )
|
|
|
|
DECLARE @parent INT
|
|
DECLARE @parent_bezeichnung VARCHAR(255)
|
|
DECLARE @parent_typ VARCHAR(255)
|
|
DECLARE @sequenz INT
|
|
DECLARE @id INT
|
|
DECLARE @bezeichnung VARCHAR(255)
|
|
DECLARE @typ VARCHAR(255)
|
|
DECLARE @rc INT
|
|
DECLARE @level INT
|
|
DECLARE @typnr INT
|
|
DECLARE @typbez VARCHAR(255)
|
|
|
|
|
|
|
|
DECLARE xc CURSOR FOR
|
|
SELECT DISTINCT parent, parent_bezeichnung, parent_typ, 0 AS Sequenz FROM dbo.BAA_SHU_Extrakt_Beziehungen
|
|
WHERE TypNr=-1 AND parent NOT IN (SELECT id FROM dbo.BAA_SHU_Extrakt_Beziehungen WHERE typnr=-1)
|
|
OPEN xc
|
|
FETCH NEXT FROM xc INTO @parent, @parent_bezeichnung, @parent_typ,@sequenz
|
|
WHILE @@FETCH_STATUS =0 BEGIN
|
|
IF @parent_typ='Organisation' BEGIN
|
|
INSERT dbo.Funktionstelle
|
|
( FunktionstelleNr, ParentID, Bezeichnung, Beschreibung, Funktionsnummer, Funktionsstelle, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES (@parent, -2, @parent_bezeichnung,'', '','',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Funktionstelle',@parent
|
|
end
|
|
IF @parent_typ='Plattformen' BEGIN
|
|
INSERT dbo.Plattform
|
|
( PlattformNr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( @parent,-5,@parent_bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Plattform',@parent
|
|
end
|
|
IF @parent_typ='Verwaltung `DURCH`' BEGIN
|
|
INSERT dbo.Verwaltung_durch
|
|
( Verwaltung_durchNr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( @parent,-7,@parent_bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Verwaltung_Durch',@parent
|
|
end
|
|
IF @parent_typ='Berechtigungen' begin
|
|
insert dbo.Berechtigung
|
|
( BerechtigungNr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( @parent,-1,@parent_bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Berechtigung',@parent
|
|
end
|
|
IF @parent_typ='Personal' BEGIN
|
|
INSERT dbo.Personal
|
|
( Personalnr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer,tgnummer,name )
|
|
VALUES ( @parent,-4,@parent_bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1,'',@parent_bezeichnung)
|
|
EXEC update_merkmap 'Personal',@parent
|
|
end
|
|
IF @parent_typ='Server' BEGIN
|
|
INSERT dbo.Server
|
|
( Servernr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( @parent,-6,@parent_bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Server',@parent
|
|
|
|
end
|
|
FETCH NEXT FROM xc INTO @parent, @parent_bezeichnung, @parent_typ,@sequenz
|
|
END
|
|
CLOSE xc
|
|
DEALLOCATE xc
|
|
|
|
DECLARE xc CURSOR FOR
|
|
SELECT DISTINCT parent, parent_bezeichnung, parent_typ, 0 AS Sequenz FROM dbo.BAA_SHU_Extrakt_Beziehungen
|
|
WHERE parent NOT IN (SELECT id FROM dbo.BAA_SHU_Extrakt_Beziehungen)
|
|
OPEN xc
|
|
FETCH NEXT FROM xc INTO @parent, @parent_bezeichnung, @parent_typ,@sequenz
|
|
WHILE @@FETCH_STATUS =0 BEGIN
|
|
IF @parent_typ='Organisation' BEGIN
|
|
INSERT dbo.Funktionstelle
|
|
( FunktionstelleNr, ParentID, Bezeichnung, Beschreibung, Funktionsnummer, Funktionsstelle, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES (@parent, -2, @parent_bezeichnung,'', '','',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Funktionstelle',@parent
|
|
end
|
|
IF @parent_typ='Plattformen' BEGIN
|
|
INSERT dbo.Plattform
|
|
( PlattformNr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( @parent,-5,@parent_bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Plattform',@parent
|
|
end
|
|
IF @parent_typ='Verwaltung `DURCH`' BEGIN
|
|
INSERT dbo.Verwaltung_durch
|
|
( Verwaltung_durchNr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( @parent,-7,@parent_bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Verwaltung_Durch',@parent
|
|
end
|
|
IF @parent_typ='Berechtigungen' begin
|
|
insert dbo.Berechtigung
|
|
( BerechtigungNr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( @parent,-1,@parent_bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Berechtigung',@parent
|
|
end
|
|
IF @parent_typ='Personal' BEGIN
|
|
INSERT dbo.Personal
|
|
( Personalnr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer,tgnummer,name )
|
|
VALUES ( @parent,-4,@parent_bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1,'',@parent_bezeichnung)
|
|
EXEC update_merkmap 'Personal',@parent
|
|
end
|
|
IF @parent_typ='Server' BEGIN
|
|
INSERT dbo.Server
|
|
( Servernr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( @parent,-6,@parent_bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Server',@parent
|
|
|
|
end
|
|
|
|
IF @parent_typ='Verwaltung `MIT`' BEGIN
|
|
INSERT dbo.Verwaltung_mit
|
|
( Verwaltung_MitNr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( @parent,-8,@parent_bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Verwaltung_Mit',@parent
|
|
end
|
|
|
|
|
|
FETCH NEXT FROM xc INTO @parent, @parent_bezeichnung, @parent_typ,@sequenz
|
|
END
|
|
CLOSE xc
|
|
DEALLOCATE xc
|
|
|
|
|
|
|
|
|
|
|
|
DECLARE @tmp1 TABLE
|
|
(
|
|
[Parent] [int] NULL,
|
|
[Parent_Bezeichnung] [nvarchar](50) NULL,
|
|
[Parent_Typ] [nvarchar](50) NULL,
|
|
[Sequenz] [int] NULL,
|
|
[ID] [int] NULL,
|
|
[Bezeichnung] [nvarchar](50) NULL,
|
|
[Typ] [nvarchar](50) NULL,
|
|
[TypNr] [int] NULL,
|
|
[Typ_Bezeichung] [nvarchar](50) NULL,
|
|
LEVEL INT
|
|
|
|
)
|
|
DECLARE @tabletyp VARCHAR(255)
|
|
|
|
DECLARE xc cursor FOR
|
|
SELECT DISTINCT id FROM dbo.BAA_SHU_Extrakt_Beziehungen WHERE typnr=-1
|
|
OPEN xc
|
|
FETCH NEXT FROM xc INTO @id
|
|
WHILE @@FETCH_STATUS=0 BEGIN
|
|
IF @id=165 BEGIN
|
|
PRINT 'a'
|
|
end
|
|
DELETE FROM @tmp1
|
|
INSERT @tmp1 SELECT * FROM dbo.fnkt_get_mig_hierarchie(@id)
|
|
SELECT @rc = COUNT(*) FROM @tmp1
|
|
IF @rc>0 BEGIN
|
|
DECLARE @tabletype VARCHAR(255)
|
|
SET @tabletype=''
|
|
SELECT TOP 1 @tabletyp=parent_typ FROM @tmp1 ORDER BY level DESC
|
|
|
|
DECLARE xx CURSOR FOR
|
|
SELECT * FROM @tmp1 ORDER BY level DESC
|
|
OPEN xx
|
|
FETCH NEXT FROM xx INTO @parent, @parent_bezeichnung, @parent_typ, @sequenz, @id, @bezeichnung, @typ, @typnr, @typbez, @level
|
|
WHILE @@FETCH_STATUS = 0 BEGIN
|
|
IF @id=165 BEGIN
|
|
PRINT 'n'
|
|
end
|
|
IF @tabletyp='Organisation' BEGIN
|
|
SELECT @rc=COUNT(*) FROM dbo.Funktionstelle WHERE funktionstellenr=@id
|
|
IF @rc=0 insert dbo.Funktionstelle
|
|
( FunktionstelleNr, ParentID, Bezeichnung, Beschreibung, Funktionsnummer, Funktionsstelle, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES (@id, @parent, @bezeichnung,'', '','',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Funktionstelle',@id
|
|
end
|
|
IF @tabletyp='Plattformen' BEGIN
|
|
SELECT @rc=COUNT(*) FROM dbo.Plattform WHERE plattformnr=@id
|
|
IF @rc=0 INSERT dbo.Plattform
|
|
( PlattformNr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( @id, @parent,@bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Plattform',@id
|
|
end
|
|
IF @tabletyp='Verwaltung `DURCH`' BEGIN
|
|
SELECT @rc=COUNT(*) FROM dbo.Verwaltung_durch WHERE Verwaltung_durchNr=@id
|
|
IF @rc=0 INSERT dbo.Verwaltung_durch
|
|
( Verwaltung_durchNr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( @id, @parent,@bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Verwaltung_Durch',@id
|
|
END
|
|
IF @tabletyp='Berechtigungen' BEGIN
|
|
SELECT @rc=COUNT(*) FROM dbo.Berechtigung WHERE BerechtigungNr=@id
|
|
IF @rc=0 INSERT dbo.Berechtigung
|
|
( BerechtigungNr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( @id, @parent,@bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Berechtigung',@id
|
|
end
|
|
IF @tabletyp='Personal' BEGIN
|
|
SELECT @rc=COUNT(*) FROM dbo.Personal WHERE Personalnr=@id
|
|
IF @rc=0 INSERT dbo.Personal
|
|
( Personalnr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer, TGNummer, name )
|
|
VALUES ( @id, @parent,@bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1,@bezeichnung,'')
|
|
EXEC update_merkmap 'Personal',@id
|
|
end
|
|
IF @tabletyp='Server' BEGIN
|
|
SELECT @rc=COUNT(*) FROM dbo.Server WHERE Servernr=@id
|
|
IF @rc=0 INSERT dbo.Server
|
|
( Servernr, ParentID, Bezeichnung, Beschreibung, Sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( @id, @parent,@bezeichnung,'',@sequenz,1,GETDATE(),GETDATE(),1)
|
|
EXEC update_merkmap 'Server',@id
|
|
end
|
|
FETCH NEXT FROM xx INTO @parent, @parent_bezeichnung, @parent_typ, @sequenz, @id, @bezeichnung, @typ, @typnr, @typbez, @level
|
|
END
|
|
CLOSE xx
|
|
DEALLOCATE xx
|
|
end
|
|
FETCH NEXT FROM xc INTO @id
|
|
END
|
|
CLOSE xc
|
|
DEALLOCATE xc
|
|
|
|
UPDATE verwaltung_mit
|
|
SET bezeichnung = LTRIM(RTRIM(SUBSTRING(bezeichnung, 0, CHARINDEX('verw.', bezeichnung))))
|
|
INSERT Verwaltung_mit ( Verwaltung_mitNr, ParentID, Bezeichnung, Beschreibung, sequenz, Aktiv, Erstellt_am, Mutiert_am, Mutierer )
|
|
VALUES ( -8, 0, 'Verwaltung mit', '', 0, 1, GETDATE(), GETDATE(), 1 )
|
|
|
|
|
|
|
|
EXEC dbo.mig_Berechtigung_Plattform
|
|
EXEC dbo.mig_Berechtigung_Server
|
|
|
|
EXEC dbo.mig_Funktionstelle_Plattform
|
|
EXEC dbo.mig_Funktionstelle_Server
|
|
EXEC dbo.mig_Funktionstelle_Berechtigung
|
|
|
|
EXEC dbo.mig_Personal_Berechtigung
|
|
EXEC dbo.mig_personal_server
|
|
EXEC dbo.mig_plattform_berechtigung
|
|
EXEC dbo.mig_plattform_Server
|
|
|
|
EXEC dbo.mig_verwaltung_durch_berechtigung
|
|
EXEC dbo.mig_verwaltung_durch_Plattform
|
|
EXEC dbo.mig_verwaltung_durch_Server
|
|
|
|
EXEC dbo.mig_Personal_FunktionStelle
|
|
EXEC dbo.mig_Personal_Plattform
|
|
|
|
EXEC dbo.mig_verwaltung_mit_Plattform
|
|
EXEC dbo.mig_verwaltung_mit_Berechtigung
|
|
EXEC dbo.mig_verwaltung_mit_Server
|
|
EXEC dbo.mig_verwaltung_mit_FunktionStelle
|
|
|
|
INSERT berechtigung_plattform
|
|
(berechtigungnr, plattformnr, beschreibung, sequenz,aktiv,erstellt_am,mutiert_am,mutierer,beziehungstypnr)
|
|
SELECT berechtigungnr,plattformnr,beschreibung,Sequenz,aktiv,Erstellt_am,Mutiert_am,mutierer,beziehungstypnr FROM dbo.Plattform_Berechtigung
|
|
DELETE FROM dbo.Plattform_Berechtigung
|
|
|
|
update funktionstelle set bezeichnung=LTRIM(bezeichnung)
|
|
update personal set bezeichnung=LTRIM(bezeichnung)
|
|
update server set bezeichnung=LTRIM(bezeichnung)
|
|
update Verwaltung_durch set bezeichnung=LTRIM(bezeichnung)
|
|
update Verwaltung_mit set bezeichnung=LTRIM(bezeichnung)
|
|
update plattform set bezeichnung=LTRIM(bezeichnung)
|
|
UPDATE bea.dbo.Personal_Plattform SET aktiv=0 WHERE Beziehungstypnr=-30
|
|
END
|
|
|
|
GO
|
|
|
|
|
|
USE [BEA]
|
|
GO
|
|
|
|
/****** Object: Trigger [dbo].[temporaer_Berechtigung_update] Script Date: 15.12.2013 09:13:06 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
-- =============================================
|
|
-- Author: <Author,,Name>
|
|
-- Create date: <Create Date,,>
|
|
-- Description: <Description,,>
|
|
-- =============================================
|
|
CREATE TRIGGER [dbo].[temporaer_Berechtigung_update] ON [dbo].[Temporaer_Berechtigung]
|
|
AFTER update
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
DECLARE @keyvalue VARCHAR(255)
|
|
DECLARE @mutierer int
|
|
DECLARE @aktivneu INT
|
|
DECLARE @aktivalt INT
|
|
DECLARE @bezeichnung VARCHAR(255)
|
|
|
|
SELECT @aktivneu=Aktiv FROM INSERTED
|
|
SELECT @keyvalue = [Personal_FunktionStelleNr] FROM inserted
|
|
SELECT @aktivalt=aktiv FROM DELETED
|
|
SELECT @mutierer=mutierer FROM inserted
|
|
|
|
IF @aktivalt=1 AND @aktivneu=0 BEGIN
|
|
EXEC sp_insert_journal 'Temporär_Berechtigung',@keyvalue, @bezeichnung,'Eintrag gelöscht', @mutierer
|
|
UPDATE dbo.Personal_FunktionStelle SET aktiv=0, mutierer=@mutierer, Mutiert_am=GETDATE() WHERE Personal_FunktionStelleNr=@keyvalue
|
|
END ELSE BEGIN
|
|
EXEC sp_insert_journal 'Temporär_Berechtigung',@keyvalue, @bezeichnung,'Eintrag geändert', @mutierer
|
|
end
|
|
end
|
|
|
|
GO
|
|
|
|
|
|
|
|
USE [BEA]
|
|
GO
|
|
|
|
/****** Object: Trigger [dbo].[Temporaer_Berechgigung_Insert] Script Date: 15.12.2013 09:13:01 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
-- =============================================
|
|
-- Author: <Author,,Name>
|
|
-- Create date: <Create Date,,>
|
|
-- Description: <Description,,>
|
|
-- =============================================
|
|
CREATE TRIGGER [dbo].[Temporaer_Berechgigung_Insert]
|
|
ON [dbo].[Temporaer_Berechtigung]
|
|
AFTER INSERT
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
DECLARE @keyvalue VARCHAR(255)
|
|
DECLARE @mutierer INT
|
|
DECLARE @bezeichnung VARCHAR(255)
|
|
|
|
SELECT @keyvalue=NrTempBerechtigung, @bezeichnung='Neue Temporäre Berechchtigung', @mutierer=mutierer FROM INSERTED
|
|
EXEC sp_insert_journal 'Temporär Berechgigung',@keyvalue, @bezeichnung, 'Neuer Eintrag', @mutierer
|
|
|
|
END
|
|
|
|
GO
|
|
|
|
|
|
|