USE [BEA] GO /****** Object: StoredProcedure [dbo].[update_personal_massenmutation] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[update_personal_massenmutation] GO /****** Object: StoredProcedure [dbo].[update_personal_from_excel] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[update_personal_from_excel] GO /****** Object: StoredProcedure [dbo].[update_merkmap] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[update_merkmap] GO /****** Object: StoredProcedure [dbo].[update_massenmutation] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[update_massenmutation] GO /****** Object: StoredProcedure [dbo].[update_massendaten] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[update_massendaten] GO /****** Object: StoredProcedure [dbo].[sp_update_spalten] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_update_spalten] GO /****** Object: StoredProcedure [dbo].[sp_tooltips] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_tooltips] GO /****** Object: StoredProcedure [dbo].[sp_sysobjects_select] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_sysobjects_select] GO /****** Object: StoredProcedure [dbo].[sp_set_Temporaerberechtigung] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_set_Temporaerberechtigung] GO /****** Object: StoredProcedure [dbo].[sp_search_split] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_search_split] GO /****** Object: StoredProcedure [dbo].[sp_rptparams_get_tgnummer] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rptparams_get_tgnummer] GO /****** Object: StoredProcedure [dbo].[sp_rptparams_get_funktionsnummer] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rptparams_get_funktionsnummer] GO /****** Object: StoredProcedure [dbo].[sp_rpt_Vergleiche_differenz] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_Vergleiche_differenz] GO /****** Object: StoredProcedure [dbo].[sp_rpt_Vergleiche] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_Vergleiche] GO /****** Object: StoredProcedure [dbo].[sp_rpt_user] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_user] GO /****** Object: StoredProcedure [dbo].[sp_rpt_tgnummer_fnktstelle] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_tgnummer_fnktstelle] GO /****** Object: StoredProcedure [dbo].[sp_rpt_tgnummer_data-sik] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_tgnummer_data-sik] GO /****** Object: StoredProcedure [dbo].[sp_rpt_tgnummer] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_tgnummer] GO /****** Object: StoredProcedure [dbo].[sp_rpt_Logfile] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_Logfile] GO /****** Object: StoredProcedure [dbo].[sp_rpt_get_auswertungparameter] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_get_auswertungparameter] GO /****** Object: StoredProcedure [dbo].[sp_rpt_funktionstelle_Vergleich_vollstaendig] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_funktionstelle_Vergleich_vollstaendig] GO /****** Object: StoredProcedure [dbo].[sp_rpt_funktionstelle_Vergleich] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_funktionstelle_Vergleich] GO /****** Object: StoredProcedure [dbo].[sp_rpt_funktionstelle] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_funktionstelle] GO /****** Object: StoredProcedure [dbo].[sp_rpt_funktionsstellen_detail] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_funktionsstellen_detail] GO /****** Object: StoredProcedure [dbo].[sp_rpt_funktionsstellen] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_funktionsstellen] GO /****** Object: StoredProcedure [dbo].[sp_rpt_cid_detail] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_cid_detail] GO /****** Object: StoredProcedure [dbo].[sp_rpt_cid] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_cid] GO /****** Object: StoredProcedure [dbo].[sp_rpt_beziehungstyp] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_rpt_beziehungstyp] GO /****** Object: StoredProcedure [dbo].[sp_mitarbeiter_auswertungparamter_selectall] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_mitarbeiter_auswertungparamter_selectall] GO /****** Object: StoredProcedure [dbo].[sp_insert_journal] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_insert_journal] GO /****** Object: StoredProcedure [dbo].[sp_getset_windowsize] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_getset_windowsize] GO /****** Object: StoredProcedure [dbo].[sp_getSet_Verwaltung_Mit] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_getSet_Verwaltung_Mit] GO /****** Object: StoredProcedure [dbo].[sp_getSet_Verwaltung_durch] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_getSet_Verwaltung_durch] GO /****** Object: StoredProcedure [dbo].[sp_getSet_Dateneigentuemer] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_getSet_Dateneigentuemer] GO /****** Object: StoredProcedure [dbo].[sp_get_Verwaltung_mit_beziehungen] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_Verwaltung_mit_beziehungen] GO /****** Object: StoredProcedure [dbo].[sp_get_Verwaltung_durch_beziehungen] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_Verwaltung_durch_beziehungen] GO /****** Object: StoredProcedure [dbo].[sp_get_temporaetberechtigung] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_temporaetberechtigung] GO /****** Object: StoredProcedure [dbo].[sp_get_temporaerberechtigung] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_temporaerberechtigung] GO /****** Object: StoredProcedure [dbo].[sp_get_tempberechtigung] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_tempberechtigung] GO /****** Object: StoredProcedure [dbo].[sp_get_sysadmin_tree] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_sysadmin_tree] GO /****** Object: StoredProcedure [dbo].[sp_get_sysadmin_hierarchie_data] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_sysadmin_hierarchie_data] GO /****** Object: StoredProcedure [dbo].[sp_get_struktur] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_struktur] GO /****** Object: StoredProcedure [dbo].[sp_get_stammdaten] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_stammdaten] GO /****** Object: StoredProcedure [dbo].[sp_get_Server_beziehungen] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_Server_beziehungen] GO /****** Object: StoredProcedure [dbo].[sp_get_plattform_beziehungen_sik] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_plattform_beziehungen_sik] GO /****** Object: StoredProcedure [dbo].[sp_get_plattform_beziehungen] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_plattform_beziehungen] GO /****** Object: StoredProcedure [dbo].[sp_get_personal_funktionstelle] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_personal_funktionstelle] GO /****** Object: StoredProcedure [dbo].[sp_get_personal_by_tgnummer] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_personal_by_tgnummer] GO /****** Object: StoredProcedure [dbo].[sp_get_personal_beziehungen] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_personal_beziehungen] GO /****** Object: StoredProcedure [dbo].[sp_get_Parentvalues] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_Parentvalues] GO /****** Object: StoredProcedure [dbo].[sp_get_FunktionstelleMitarbeiter] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_FunktionstelleMitarbeiter] GO /****** Object: StoredProcedure [dbo].[sp_get_funktionstelle_by_funktionstelle] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_funktionstelle_by_funktionstelle] GO /****** Object: StoredProcedure [dbo].[sp_get_funktionstelle_beziehungen] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_funktionstelle_beziehungen] GO /****** Object: StoredProcedure [dbo].[sp_get_dbkey] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_dbkey] GO /****** Object: StoredProcedure [dbo].[sp_get_berechtigung_beziehungen] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_get_berechtigung_beziehungen] GO /****** Object: StoredProcedure [dbo].[sp_delete_Tempberechtigung] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_delete_Tempberechtigung] GO /****** Object: StoredProcedure [dbo].[sp_delete_childs] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_delete_childs] GO /****** Object: StoredProcedure [dbo].[sp_Auswertung_Get_Auswertungen] Script Date: 13.12.2014 15:01:05 ******/ DROP PROCEDURE [dbo].[sp_Auswertung_Get_Auswertungen] GO /****** Object: StoredProcedure [dbo].[sp_Auswertung_Get_Auswertungen] Script Date: 13.12.2014 15:01:05 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= Create proc [dbo].[sp_Auswertung_Get_Auswertungen] @mitarbeiternr int as CREATE TABLE #tmpd( [ID] [int] , [bezeichnung] [varchar] (255) null, [parentid] [int] null, [Auswertungnr] [int], [beschreibung] [varchar] (1024) null ) ON [PRIMARY] declare @id int declare @gnr int declare @anr int declare @bez varchar(255) declare @pid int declare @gnr1 int declare @gbez varchar(255) declare @cnt int declare @besch varchar(1024) set @id=1000 declare xc cursor for SELECT DISTINCT dbo.auswertunggruppeauswertung.auswertunggruppenr as auswertunggruppenr, dbo.auswertung.auswertungnr, dbo.auswertung.bezeichnung as auswertung, dbo.auswertung.beschreibung FROM dbo.AuswertungGruppe INNER JOIN dbo.funktionsgruppe_auswertungGruppe ON dbo.AuswertungGruppe.AuswertungGruppeNr = dbo.funktionsgruppe_auswertungGruppe.AuswertungGruppeNr INNER JOIN dbo.funktionsgruppe ON dbo.funktionsgruppe_auswertungGruppe.funktionsgruppenr = dbo.funktionsgruppe.funktionsgruppenr INNER JOIN dbo.mitarbeiter_funktionsgruppe ON dbo.funktionsgruppe.funktionsgruppenr = dbo.mitarbeiter_funktionsgruppe.funktionsgruppenr INNER JOIN dbo.AuswertungGruppeAuswertung ON dbo.AuswertungGruppe.AuswertungGruppeNr = dbo.AuswertungGruppeAuswertung.AuswertungGruppeNr INNER JOIN dbo.Auswertung ON dbo.AuswertungGruppeAuswertung.AuswertungNr = dbo.Auswertung.AuswertungNr WHERE (dbo.AuswertungGruppe.Aktiv = 1) AND (dbo.funktionsgruppe_auswertungGruppe.Aktiv = 1) AND (dbo.funktionsgruppe.aktiv = 1) AND (dbo.mitarbeiter_funktionsgruppe.aktiv = 1) AND (dbo.AuswertungGruppeAuswertung.Aktiv = 1) AND (dbo.Auswertung.Aktiv = 1) AND (dbo.mitarbeiter_funktionsgruppe.mitarbeiternr = @mitarbeiternr) open xc fetch next from xc into @gnr, @anr, @bez, @besch while @@fetch_status=0 begin set @id=@id+1 insert #tmpd(id, bezeichnung, parentid, auswertungnr, beschreibung) values (@id, @bez, @gnr, @anr, @besch) set @pid=@gnr while @pid>0 begin select @gnr1=auswertunggruppenr, @gbez=bezeichnung, @pid=parentid from auswertunggruppe where auswertunggruppenr=@gnr select @cnt=count(*) from #tmpd where id=@gnr1 if @cnt=0 insert #tmpd(id, bezeichnung, parentid, auswertungnr, beschreibung) values (@gnr1,@gbez,@pid,0,'') set @gnr=@pid end fetch next from xc into @gnr, @anr, @bez, @besch end close xc deallocate xc insert #tmpd (id, bezeichnung, parentid, auswertungnr, beschreibung) values (0, 'root',null,null,null) select * from #tmpd order by bezeichnung drop table #tmpd return GO /****** Object: StoredProcedure [dbo].[sp_delete_childs] Script Date: 13.12.2014 15:01:05 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_delete_childs] @keyvalue INT, @mutierer INT, @table VARCHAR(255) AS BEGIN DECLARE @key int IF @table='Berechtigung' BEGIN DECLARE xc CURSOR FOR SELECT berechtigung_plattformnr FROM dbo.Berechtigung_Plattform WHERE berechtigungnr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Berechtigung_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Berechtigung_PlattformNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Berechtigung_Servernr FROM dbo.Berechtigung_Server WHERE berechtigungnr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Berechtigung_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Berechtigung_ServerNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Funktionstelle_Berechtigungnr FROM dbo.Funktionstelle_Berechtigung WHERE berechtigungnr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Funktionstelle_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Funktionstelle_BerechtigungNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Personal_BerechtigungNr FROM dbo.Personal_Berechtigung WHERE berechtigungnr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Personal_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Personal_BerechtigungNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Plattform_BerechtigungNr FROM dbo.Plattform_Berechtigung WHERE berechtigungnr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Plattform_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Plattform_BerechtigungNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Verwaltung_Durch_BerechtigungNr FROM dbo.Verwaltung_Durch_Berechtigung WHERE berechtigungnr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Verwaltung_Durch_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_Durch_BerechtigungNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Verwaltung_mit_BerechtigungNr FROM dbo.Verwaltung_mit_Berechtigung WHERE berechtigungnr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Verwaltung_mit_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_mit_BerechtigungNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc --UPDATE dbo.Berechtigung_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE BerechtigungNr=@keyvalue --UPDATE dbo.Funktionstelle_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE BerechtigungNr=@keyvalue --UPDATE dbo.Personal_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE BerechtigungNr=@keyvalue --UPDATE dbo.Plattform_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE BerechtigungNr=@keyvalue --UPDATE dbo.Verwaltung_Durch_Berechtigung SET Aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE BerechtigungNr=@keyvalue --UPDATE dbo.Verwaltung_mit_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE BerechtigungNr=@keyvalue END IF @table='Funktionstelle' BEGIN DECLARE xc CURSOR FOR SELECT Funktionstelle_BerechtigungNr FROM dbo.Funktionstelle_Berechtigung WHERE FunktionstelleNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Funktionstelle_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Funktionstelle_BerechtigungNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT FunktionStelle_PlattformNr FROM dbo.FunktionStelle_Plattform WHERE FunktionstelleNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.FunktionStelle_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE FunktionStelle_PlattformNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT FunktionStelle_ServerNr FROM dbo.FunktionStelle_Server WHERE FunktionstelleNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.FunktionStelle_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE FunktionStelle_ServerNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Personal_FunktionStelleNr FROM dbo.Personal_FunktionStelle WHERE FunktionstelleNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Personal_FunktionStelle SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Personal_FunktionStelleNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Verwaltung_Mit_FunktionStelleNr FROM dbo.Verwaltung_Mit_FunktionStelle WHERE FunktionstelleNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Verwaltung_Mit_FunktionStelle SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_Mit_FunktionStelleNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc --UPDATE dbo.Funktionstelle_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE FunktionstelleNr=@keyvalue --UPDATE dbo.FunktionStelle_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE FunktionstelleNr=@keyvalue --UPDATE dbo.FunktionStelle_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE FunktionstelleNr=@keyvalue --UPDATE dbo.Personal_FunktionStelle SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE FunktionstelleNr=@keyvalue --UPDATE dbo.Verwaltung_Mit_FunktionStelle SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE FunktionstelleNr=@keyvalue END IF @table='Personal' BEGIN DECLARE xc CURSOR FOR SELECT Personal_BerechtigungNr FROM dbo.Personal_Berechtigung WHERE PersonalNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Personal_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Personal_BerechtigungNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Personal_FunktionStelleNr FROM dbo.Personal_FunktionStelle WHERE PersonalNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Personal_FunktionStelle SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Personal_FunktionStelleNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Personal_PlattformNr FROM dbo.Personal_Plattform WHERE PersonalNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Personal_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Personal_PlattformNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Personal_ServerNr FROM dbo.Personal_Server WHERE PersonalNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Personal_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Personal_ServerNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc --UPDATE dbo.Personal_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PersonalNr=@keyvalue --UPDATE dbo.Personal_FunktionStelle SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PersonalNr=@keyvalue --UPDATE dbo.Personal_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PersonalNr=@keyvalue --UPDATE dbo.Personal_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PersonalNr=@keyvalue END IF @table='Plattform' BEGIN DECLARE xc CURSOR FOR SELECT Plattform_BerechtigungNr FROM dbo.Plattform_Berechtigung WHERE Plattformnr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Plattform_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Plattform_BerechtigungNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Plattform_ServerNr FROM dbo.Plattform_Server WHERE Plattformnr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Plattform_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Plattform_ServerNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT FunktionStelle_PlattformNr FROM dbo.FunktionStelle_Plattform WHERE Plattformnr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.FunktionStelle_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE FunktionStelle_PlattformNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Verwaltung_Durch_PlattformNr FROM dbo.Verwaltung_Durch_Plattform WHERE Plattformnr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Verwaltung_Durch_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_Durch_PlattformNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Verwaltung_Mit_PlattformNr FROM dbo.Verwaltung_Mit_Plattform WHERE Plattformnr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Verwaltung_Mit_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_Mit_PlattformNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc --UPDATE dbo.Plattform_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PlattformNr=@keyvalue -- UPDATE dbo.Plattform_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PlattformNr=@keyvalue -- UPDATE dbo.Berechtigung_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PlattformNr=@keyvalue -- UPDATE dbo.FunktionStelle_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PlattformNr=@keyvalue -- UPDATE dbo.Verwaltung_Durch_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PlattformNr=@keyvalue -- UPDATE dbo.Verwaltung_Mit_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PlattformNr=@keyvalue END IF @table='Verwaltung_durch' BEGIN DECLARE xc CURSOR FOR SELECT Verwaltung_Durch_BerechtigungNr FROM dbo.Verwaltung_Durch_Berechtigung WHERE Verwaltung_DurchNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Verwaltung_Durch_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_Durch_BerechtigungNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Verwaltung_Durch_PlattformNr FROM dbo.Verwaltung_Durch_Plattform WHERE Verwaltung_DurchNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Verwaltung_Durch_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_Durch_PlattformNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Verwaltung_Durch_ServerNr FROM dbo.Verwaltung_Durch_Server WHERE Verwaltung_DurchNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Verwaltung_Durch_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_Durch_ServerNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc --UPDATE dbo.Verwaltung_Durch_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_durchnr=@keyvalue --UPDATE dbo.Verwaltung_Durch_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_durchnr=@keyvalue --UPDATE dbo.Verwaltung_Durch_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_durchnr=@keyvalue END IF @table='Verwaltung_mit' BEGIN DECLARE xc CURSOR FOR SELECT Verwaltung_mit_BerechtigungNr FROM dbo.Verwaltung_mit_Berechtigung WHERE Verwaltung_mitNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Verwaltung_mit_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_mit_BerechtigungNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Verwaltung_Mit_FunktionStelleNr FROM dbo.Verwaltung_Mit_FunktionStelle WHERE Verwaltung_mitNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Verwaltung_Mit_FunktionStelle SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_Mit_FunktionStelleNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Verwaltung_Mit_PlattformNr FROM dbo.Verwaltung_Mit_Plattform WHERE Verwaltung_mitNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Verwaltung_Mit_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_Mit_PlattformNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Verwaltung_Mit_ServerNr FROM dbo.Verwaltung_Mit_Server WHERE Verwaltung_mitNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Verwaltung_Mit_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_Mit_ServerNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc --UPDATE dbo.Verwaltung_mit_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_mitnr=@keyvalue -- UPDATE dbo.Verwaltung_Mit_FunktionStelle SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_mitnr=@keyvalue -- UPDATE dbo.Verwaltung_Mit_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_mitnr=@keyvalue -- UPDATE dbo.Verwaltung_Mit_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_mitnr=@keyvalue END IF @table='Server' BEGIN DECLARE xc CURSOR FOR SELECT Personal_Servernr FROM dbo.Personal_Server WHERE servernr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.personal_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Personal_ServerNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Plattform_ServerNr FROM dbo.Plattform_Server WHERE Servernr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Plattform_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Plattform_ServerNr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Verwaltung_Durch_servernr FROM dbo.Verwaltung_Durch_server WHERE ServerNr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Verwaltung_Durch_server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_Durch_servernr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc DECLARE xc CURSOR FOR SELECT Verwaltung_Mit_servernr FROM dbo.Verwaltung_Mit_server WHERE servernr=@keyvalue AND aktiv=1 OPEN xc FETCH NEXT FROM xc INTO @key WHILE @@FETCH_STATUS=0 BEGIN UPDATE dbo.Verwaltung_Mit_server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE Verwaltung_Mit_servernr=@key FETCH NEXT FROM xc INTO @key END CLOSE xc DEALLOCATE xc --UPDATE dbo.Plattform_Berechtigung SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PlattformNr=@keyvalue -- UPDATE dbo.Plattform_Server SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PlattformNr=@keyvalue -- UPDATE dbo.Berechtigung_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PlattformNr=@keyvalue -- UPDATE dbo.FunktionStelle_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PlattformNr=@keyvalue -- UPDATE dbo.Verwaltung_Durch_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PlattformNr=@keyvalue -- UPDATE dbo.Verwaltung_Mit_Plattform SET aktiv=0, mutierer=@mutierer, mutiert_am = GETDATE() WHERE PlattformNr=@keyvalue END END GO /****** Object: StoredProcedure [dbo].[sp_delete_Tempberechtigung] Script Date: 13.12.2014 15:01:05 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= create PROCEDURE [dbo].[sp_delete_Tempberechtigung] @keyvalue int, @mitarbeiternr int AS BEGIN SET NOCOUNT ON; UPDATE dbo.Temporaer_Berechtigung SET aktiv=0, mutierer=@mitarbeiternr, mutiert_am=GETDATE() WHERE [NrTempBerechtigung] = @keyvalue END GO /****** Object: StoredProcedure [dbo].[sp_get_berechtigung_beziehungen] Script Date: 13.12.2014 15:01:05 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_berechtigung_beziehungen] @keyvalue INT , @typ INT = 0 AS BEGIN DECLARE @tmp1 TABLE ( ID INT , Bezeichnung VARCHAR(255) , Zusatz VARCHAR(255) , Beschreibung VARCHAR(255) , Sequenz INT , aktiv BIT , erstellt_am DATETIME , mutiert_am DATETIME , mutierer INT , typ VARCHAR(255) , MKey INT , Beziehungstyp VARCHAR(255) , CID INT , Temp INT ) SET NOCOUNT ON; INSERT @tmp1 ( ID , Bezeichnung , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp , cid ) SELECT TOP ( 100 ) PERCENT dbo.Berechtigung_Plattform.Berechtigung_PlattformNr , dbo.Plattform.Bezeichnung , dbo.Berechtigung_Plattform.Sequenz , dbo.Berechtigung_Plattform.Beschreibung , dbo.Berechtigung_Plattform.Aktiv , dbo.Berechtigung_Plattform.Erstellt_am , dbo.Berechtigung_Plattform.Mutiert_am , dbo.Berechtigung_Plattform.Mutierer , dbo.fnkt_get_bezeichnung(3) AS Typ , Berechtigung_Plattform.PlattformNr , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp , dbo.Plattform.cid FROM dbo.Berechtigung INNER JOIN dbo.Berechtigung_Plattform ON dbo.Berechtigung.BerechtigungNr = dbo.Berechtigung_Plattform.berechtigungNr INNER JOIN dbo.Plattform ON dbo.Berechtigung_Plattform.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Beziehungstyp ON dbo.Berechtigung_Plattform.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE ( dbo.Berechtigung.BerechtigungNr = @keyvalue ) INSERT @tmp1 ( ID , Bezeichnung , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp , cid ) SELECT dbo.Plattform_Berechtigung.Plattform_BerechtigungNr , dbo.Plattform.Bezeichnung , dbo.Plattform_Berechtigung.Sequenz , dbo.Plattform_Berechtigung.Beschreibung , dbo.Plattform_Berechtigung.Aktiv , dbo.Plattform_Berechtigung.Erstellt_am , dbo.Plattform_Berechtigung.Mutiert_am , dbo.Plattform_Berechtigung.Mutierer , dbo.fnkt_get_bezeichnung(3) AS Typ , dbo.plattform.Plattformnr AS MKEY , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp, plattform.cid FROM dbo.Plattform_Berechtigung INNER JOIN dbo.Plattform ON dbo.Plattform_Berechtigung.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Berechtigung ON dbo.Plattform_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr INNER JOIN dbo.Beziehungstyp ON dbo.Plattform_Berechtigung.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE dbo.Berechtigung.BerechtigungNr = @keyvalue INSERT @tmp1 ( ID , Bezeichnung , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp, cid ) SELECT TOP ( 100 ) PERCENT dbo.Berechtigung_Server.Berechtigung_ServerNr , dbo.Server.Bezeichnung , dbo.Berechtigung_Server.Sequenz , dbo.Berechtigung_Server.Beschreibung , dbo.Berechtigung_Server.Aktiv , dbo.Berechtigung_Server.Erstellt_am , dbo.Berechtigung_Server.Mutiert_am , dbo.Berechtigung_Server.Mutierer , dbo.fnkt_get_bezeichnung(4) AS Typ , Berechtigung_Server.ServerNr , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp, server.cid FROM dbo.Berechtigung INNER JOIN dbo.Berechtigung_Server ON dbo.Berechtigung.BerechtigungNr = dbo.Berechtigung_Server.berechtigungNr INNER JOIN dbo.Server ON dbo.Berechtigung_Server.ServerNr = dbo.Server.ServerNr INNER JOIN dbo.Beziehungstyp ON dbo.Berechtigung_Server.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE ( dbo.Berechtigung.BerechtigungNr = @keyvalue ) INSERT @tmp1 ( ID , Bezeichnung , Zusatz , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp , cid ) SELECT dbo.Funktionstelle_Berechtigung.Funktionstelle_BerechtigungNr , dbo.Funktionstelle.Bezeichnung , ISNULL(dbo.Funktionstelle.Funktionsstelle, '') , dbo.Funktionstelle_Berechtigung.Sequenz , dbo.Funktionstelle_Berechtigung.Beschreibung , dbo.Funktionstelle_Berechtigung.Aktiv , dbo.Funktionstelle_Berechtigung.Erstellt_am , dbo.Funktionstelle_Berechtigung.Mutiert_am , dbo.Funktionstelle_Berechtigung.Mutierer , dbo.fnkt_get_bezeichnung(1) AS Typ , dbo.Funktionstelle_Berechtigung.FunktionstelleNr , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp , dbo.funktionstelle.cid FROM dbo.Funktionstelle INNER JOIN dbo.Funktionstelle_Berechtigung ON dbo.Funktionstelle.FunktionstelleNr = dbo.Funktionstelle_Berechtigung.FunktionstelleNr INNER JOIN dbo.Berechtigung ON dbo.Funktionstelle_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr INNER JOIN dbo.Beziehungstyp ON dbo.Funktionstelle_Berechtigung.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE ( dbo.Funktionstelle_Berechtigung.BerechtigungNr = @keyvalue ) INSERT @tmp1 ( ID , Bezeichnung , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp , temp ) SELECT dbo.Personal_Berechtigung.Personal_BerechtigungNr , dbo.Personal.Bezeichnung + ' ' + dbo.Personal.Name , dbo.Personal_Berechtigung.Sequenz , dbo.Personal_Berechtigung.Beschreibung , dbo.Personal_Berechtigung.Aktiv , dbo.Personal_Berechtigung.Erstellt_am , dbo.Personal_Berechtigung.Mutiert_am , dbo.Personal_Berechtigung.Mutierer , dbo.fnkt_get_bezeichnung(2) AS Typ , dbo.Personal.Personalnr , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp , dbo.fnkt_get_temporaer(dbo.Personal_Berechtigung.Personal_BerechtigungNr) FROM dbo.Berechtigung INNER JOIN dbo.Personal_Berechtigung ON dbo.Berechtigung.BerechtigungNr = dbo.Personal_Berechtigung.BerechtigungNr INNER JOIN dbo.Personal ON dbo.Personal_Berechtigung.PersonalNr = dbo.Personal.Personalnr INNER JOIN dbo.Beziehungstyp ON dbo.Personal_Berechtigung.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE ( dbo.Personal_Berechtigung.BerechtigungNr = @keyvalue ) and dbo.personal_berechtigung.Beziehungstypnr > -25 IF @typ = 1 BEGIN INSERT @tmp1 ( ID , Bezeichnung , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp ) SELECT dbo.Personal_Berechtigung.Personal_BerechtigungNr , dbo.Personal.Bezeichnung + ' ' + dbo.Personal.Name , dbo.Personal_Berechtigung.Sequenz , dbo.Personal_Berechtigung.Beschreibung , dbo.Personal_Berechtigung.Aktiv , dbo.Personal_Berechtigung.Erstellt_am , dbo.Personal_Berechtigung.Mutiert_am , dbo.Personal_Berechtigung.Mutierer , dbo.fnkt_get_bezeichnung(2) AS Typ , dbo.Personal.Personalnr , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp FROM dbo.Berechtigung INNER JOIN dbo.Personal_Berechtigung ON dbo.Berechtigung.BerechtigungNr = dbo.Personal_Berechtigung.BerechtigungNr INNER JOIN dbo.Personal ON dbo.Personal_Berechtigung.PersonalNr = dbo.Personal.Personalnr INNER JOIN dbo.Beziehungstyp ON dbo.Personal_Berechtigung.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE ( dbo.Personal_Berechtigung.BerechtigungNr = @keyvalue ) INSERT @tmp1 ( ID , Bezeichnung , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp ) SELECT dbo.Verwaltung_Durch_Berechtigung.Verwaltung_Durch_BerechtigungNr , dbo.Verwaltung_durch.Bezeichnung , dbo.Verwaltung_Durch_Berechtigung.Sequenz , dbo.Verwaltung_Durch_Berechtigung.Beschreibung , dbo.Verwaltung_Durch_Berechtigung.Aktiv , dbo.Verwaltung_Durch_Berechtigung.Erstellt_am , dbo.Verwaltung_Durch_Berechtigung.Mutiert_am , dbo.Verwaltung_Durch_Berechtigung.Mutierer , dbo.fnkt_get_bezeichnung(5) AS Typ , dbo.Verwaltung_Durch_Berechtigung.Verwaltung_DurchNr AS MKEY , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp FROM dbo.Verwaltung_durch INNER JOIN dbo.Verwaltung_Durch_Berechtigung ON dbo.Verwaltung_durch.Verwaltung_durchNr = dbo.Verwaltung_Durch_Berechtigung.Verwaltung_DurchNr INNER JOIN dbo.Berechtigung ON dbo.Verwaltung_Durch_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr INNER JOIN dbo.Beziehungstyp ON dbo.Verwaltung_Durch_Berechtigung.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Verwaltung_Durch_Berechtigung.BerechtigungNr = @keyvalue INSERT @tmp1 ( ID , Bezeichnung , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp ) SELECT dbo.Verwaltung_mit_Berechtigung.Verwaltung_mit_BerechtigungNr , dbo.Verwaltung_mit.Bezeichnung , dbo.Verwaltung_mit_Berechtigung.Sequenz , dbo.Verwaltung_mit_Berechtigung.Beschreibung , dbo.Verwaltung_mit_Berechtigung.Aktiv , dbo.Verwaltung_mit_Berechtigung.Erstellt_am , dbo.Verwaltung_mit_Berechtigung.Mutiert_am , dbo.Verwaltung_mit_Berechtigung.Mutierer , dbo.fnkt_get_bezeichnung(6) AS Typ , dbo.Verwaltung_mit_Berechtigung.Verwaltung_mitNr AS MKEY , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp FROM dbo.Verwaltung_mit INNER JOIN dbo.Verwaltung_mit_Berechtigung ON dbo.Verwaltung_mit.Verwaltung_mitNr = dbo.Verwaltung_mit_Berechtigung.Verwaltung_mitNr INNER JOIN dbo.Berechtigung ON dbo.Verwaltung_mit_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr INNER JOIN dbo.Beziehungstyp ON dbo.Verwaltung_mit_Berechtigung.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Verwaltung_mit_Berechtigung.BerechtigungNr = @keyvalue END UPDATE @tmp1 SET cid = 0 WHERE cid IS NULL SELECT * FROM @tmp1 ORDER BY typ , Sequenz , Bezeichnung -- DECLARE @sql VARCHAR(1024) -- select @sql = dbo.fnkt_get_beziehung_sql('Berechtigung','Plattform',3,@keyvalue,'dbo.Berechtigung.BerechtigungNr',0,0) -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- PRINT @sql -- select @sql = dbo.fnkt_get_beziehung_sql('Berechtigung','Server',4,@keyvalue,'dbo.Berechtigung.BerechtigungNr',0,0) -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- PRINT @sql -- select @sql = dbo.fnkt_get_beziehung_sql('FunktionStelle','Berechtigung',1,@keyvalue,'dbo.Berechtigung.BerechtigungNr',0,0) -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- PRINT @sql -- select @sql = dbo.fnkt_get_beziehung_sql('Personal','Berechtigung',2,@keyvalue,'dbo.Berechtigung.BerechtigungNr',0,0) -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- PRINT @sql -- select @sql = dbo.fnkt_get_beziehung_sql('Verwaltung_Durch','Berechtigung',5,@keyvalue,'dbo.Berechtigung.BerechtigungNr',0,0) -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- PRINT @sql -- select @sql = dbo.fnkt_get_beziehung_sql('Verwaltung_Mit','Berechtigung',6,@keyvalue,'dbo.Berechtigung.BerechtigungNr',0,0) -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- PRINT @sql --SELECT * -- FROM @tmp1 -- ORDER BY typ, Sequenz, Bezeichnung -- return END GO /****** Object: StoredProcedure [dbo].[sp_get_dbkey] Script Date: 13.12.2014 15:01:05 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_dbkey] @tablename VARCHAR(255) , @dbkey INT OUTPUT , @iErrorcode INT OUTPUT AS BEGIN DECLARE @rc INT SELECT @rc=COUNT(*) FROM dbo.key_tabelle WHERE beschreibung=@tablename IF @rc=0 SET @tablename='Schluessel' declare @zwkey int select @zwkey = key_wert from key_tabelle where beschreibung = @tablename set @zwkey = @zwkey + 1 update key_tabelle set key_wert = @zwkey where beschreibung=@tablename select @dbkey = @zwkey select @iErrorCode=@@Error END GO /****** Object: StoredProcedure [dbo].[sp_get_funktionstelle_beziehungen] Script Date: 13.12.2014 15:01:05 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_funktionstelle_beziehungen] @keyvalue INT, @typ INT = 0 AS BEGIN DECLARE @tmp1 TABLE ( ID INT , Bezeichnung VARCHAR(255) , Zusatz VARCHAR(255), Beschreibung VARCHAR(255) , Sequenz INT , aktiv BIT , erstellt_am DATETIME , mutiert_am DATETIME , mutierer INT , typ VARCHAR(255) , MKey INT, CID INT, Temp int ) SET NOCOUNT ON; SELECT * FROM dbo.fnkt_funktionstelle_beziehung(@keyvalue) ORDER BY typ, Sequenz,Bezeichnung RETURN INSERT @tmp1 ( ID, Bezeichnung, Sequenz, beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,cid ) SELECT dbo.Funktionstelle_Berechtigung.Funktionstelle_BerechtigungNr, dbo.Berechtigung.Bezeichnung, dbo.Funktionstelle_Berechtigung.Sequenz, dbo.Funktionstelle_Berechtigung.Beschreibung, dbo.Funktionstelle_Berechtigung.Aktiv, dbo.Funktionstelle_Berechtigung.Erstellt_am, dbo.Funktionstelle_Berechtigung.Mutiert_am, dbo.Funktionstelle_Berechtigung.Mutierer, dbo.fnkt_get_bezeichnung(0) AS Typ, Funktionstelle_Berechtigung.BerechtigungNr ,dbo.berechtigung.CID FROM dbo.Funktionstelle INNER JOIN dbo.Funktionstelle_Berechtigung ON dbo.Funktionstelle.FunktionstelleNr = dbo.Funktionstelle_Berechtigung.FunktionstelleNr INNER JOIN dbo.Berechtigung ON dbo.Funktionstelle_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr WHERE ( dbo.Funktionstelle.FunktionstelleNr = @keyvalue ) INSERT @tmp1 ( ID, Bezeichnung, Sequenz, beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,cid ) SELECT TOP ( 100 ) PERCENT dbo.FunktionStelle_Plattform.FunktionStelle_PlattformNr, dbo.Plattform.Bezeichnung, dbo.FunktionStelle_Plattform.Sequenz, dbo.FunktionStelle_Plattform.Beschreibung, dbo.FunktionStelle_Plattform.Aktiv, dbo.FunktionStelle_Plattform.Erstellt_am, dbo.FunktionStelle_Plattform.Mutiert_am, dbo.FunktionStelle_Plattform.Mutierer, dbo.fnkt_get_bezeichnung(3) AS Typ, FunktionStelle_Plattform.PlattformNr, dbo.Plattform.cid FROM dbo.Funktionstelle INNER JOIN dbo.FunktionStelle_Plattform ON dbo.Funktionstelle.FunktionstelleNr = dbo.FunktionStelle_Plattform.FunktionStelleNr INNER JOIN dbo.Plattform ON dbo.FunktionStelle_Plattform.PlattformNr = dbo.Plattform.PlattformNr WHERE ( dbo.Funktionstelle.FunktionstelleNr = @keyvalue ) INSERT @tmp1 ( ID, Bezeichnung, Sequenz, beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,cid ) SELECT TOP ( 100 ) PERCENT dbo.FunktionStelle_Server.FunktionStelle_ServerNr, dbo.Server.Bezeichnung, dbo.FunktionStelle_Server.Sequenz, dbo.FunktionStelle_Server.Beschreibung, dbo.FunktionStelle_Server.Aktiv, dbo.FunktionStelle_Server.Erstellt_am, dbo.FunktionStelle_Server.Mutiert_am, dbo.FunktionStelle_Server.Mutierer, dbo.fnkt_get_bezeichnung(4) AS Typ, Funktionstelle_Server.ServerNr, dbo.server.cid FROM dbo.Funktionstelle INNER JOIN dbo.FunktionStelle_Server ON dbo.Funktionstelle.FunktionstelleNr = dbo.FunktionStelle_Server.FunktionStelleNr INNER JOIN dbo.Server ON dbo.FunktionStelle_Server.ServerNr = dbo.Server.ServerNr WHERE ( dbo.Funktionstelle.FunktionstelleNr = @keyvalue ) INSERT @tmp1 ( ID, Bezeichnung, Sequenz, beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,Temp ) SELECT dbo.Personal_FunktionStelle.Personal_FunktionStelleNr, dbo.Personal.TGNummer + ' ' + dbo.Personal.Name AS Bezeichnung, dbo.Personal_FunktionStelle.Sequenz, dbo.Personal_FunktionStelle.Beschreibung, dbo.Personal_FunktionStelle.Aktiv, dbo.Personal_FunktionStelle.Erstellt_am, dbo.Personal_FunktionStelle.Mutiert_am, dbo.Personal_FunktionStelle.Mutierer, dbo.fnkt_get_bezeichnung(2) AS TYP, dbo.Personal.Personalnr AS MKEY,dbo.fnkt_get_temporaer(dbo.Personal_FunktionStelle.Personal_FunktionStelleNr) FROM dbo.Personal_FunktionStelle INNER JOIN dbo.Personal ON dbo.Personal_FunktionStelle.PersonalNr = dbo.Personal.Personalnr INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr WHERE ( dbo.Funktionstelle.FunktionstelleNr = @keyvalue ) UPDATE @tmp1 SET cid=0 WHERE cid IS NULL SELECT * FROM @tmp1 ORDER BY typ, Sequenz, Bezeichnung END GO /****** Object: StoredProcedure [dbo].[sp_get_funktionstelle_by_funktionstelle] Script Date: 13.12.2014 15:01:05 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_funktionstelle_by_funktionstelle] @FunktionStelle VARCHAR(255) , @resultat VARCHAR(1024) OUTPUT AS BEGIN SELECT @resultat = funktionstellenr FROM dbo.Funktionstelle WHERE Funktionsstelle = @FunktionStelle END GO /****** Object: StoredProcedure [dbo].[sp_get_FunktionstelleMitarbeiter] Script Date: 13.12.2014 15:01:05 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_FunktionstelleMitarbeiter] @funktionstellenr INT AS BEGIN SET NOCOUNT ON; SELECT TOP ( 100 ) PERCENT dbo.Personal.Personalnr, dbo.Personal.ParentID, dbo.Personal.Bezeichnung, dbo.Personal.Beschreibung, dbo.personal.name, dbo.Personal.TGNummer, dbo.Personal.Aktiv, dbo.Personal.Erstellt_am, dbo.Personal.Mutiert_am, dbo.Personal.Mutierer FROM dbo.Personal INNER JOIN dbo.Personal_FunktionStelle ON dbo.Personal.Personalnr = dbo.Personal_FunktionStelle.PersonalNr INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr WHERE ( dbo.Funktionstelle.FunktionstelleNr = @funktionstellenr ) ORDER BY dbo.Personal.TGNummer END GO /****** Object: StoredProcedure [dbo].[sp_get_Parentvalues] Script Date: 13.12.2014 15:01:05 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_Parentvalues] @objekt VARCHAR(255), @parentid INT AS BEGIN DECLARE @parent_vm int DECLARE @parent_vd INT DECLARE @parent_DE INT IF @objekt='Berechtigung' BEGIN SELECT @parent_vd=ISNULL(verwaltung_durchnr,0) FROM verwaltung_durch_berechtigung WHERE berechtigungnr=@parentid AND Aktiv=1 IF @@ROWCOUNT=0 SET @parent_vd=0 SELECT @parent_vm=ISNULL(verwaltung_mitnr,0) FROM verwaltung_mit_berechtigung WHERE berechtigungnr=@parentid AND Aktiv=1 IF @@ROWCOUNT=0 SET @parent_vm=0 SELECT @parent_de=ISNULL(PersonalNr,0) FROM dbo.Personal_Berechtigung where berechtigungnr=@parentid AND Aktiv=1 IF @@ROWCOUNT=0 SET @parent_de=0 SELECT @parent_vm, @parent_vd,@parent_DE END IF @objekt='Plattform' BEGIN SELECT @parent_vd=ISNULL(verwaltung_durchnr,0) FROM verwaltung_durch_Plattform WHERE Plattformnr=@parentid AND Aktiv=1 IF @@ROWCOUNT=0 SET @parent_vd=0 SELECT @parent_vm=ISNULL(verwaltung_mitnr,0) FROM verwaltung_mit_Plattform WHERE Plattformnr=@parentid AND Aktiv=1 IF @@ROWCOUNT=0 SET @parent_vm=0 SELECT @parent_de=ISNULL(PersonalNr,0) FROM dbo.Personal_Plattform where Plattformnr=@parentid AND Aktiv=1 IF @@ROWCOUNT=0 SET @parent_de=0 SELECT @parent_vm, @parent_vd,@parent_DE END IF @objekt='Server' BEGIN SELECT @parent_vd=ISNULL(verwaltung_durchnr,0) FROM verwaltung_durch_Server WHERE Servernr=@parentid AND Aktiv=1 IF @@ROWCOUNT=0 SET @parent_vd=0 SELECT @parent_vm=ISNULL(verwaltung_mitnr,0) FROM verwaltung_mit_Server WHERE Servernr=@parentid AND Aktiv=1 IF @@ROWCOUNT=0 SET @parent_vm=0 SELECT @parent_de=ISNULL(PersonalNr,0) FROM dbo.Personal_Server where Servernr=@parentid AND Aktiv=1 IF @@ROWCOUNT=0 SET @parent_de=0 SELECT @parent_vm, @parent_vd,@parent_DE END END GO /****** Object: StoredProcedure [dbo].[sp_get_personal_beziehungen] Script Date: 13.12.2014 15:01:05 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_personal_beziehungen] @keyvalue INT, @typ INT = 0 AS BEGIN DECLARE @tmp1 TABLE ( ID INT , Bezeichnung VARCHAR(255) , Zusatz VARCHAR(255), beschreibung VARCHAR(255) , Sequenz INT , aktiv BIT , erstellt_am DATETIME , mutiert_am DATETIME , mutierer INT , typ VARCHAR(255) , MKey INT, Beziehungstyp varchar(255), cid int, Temp INT ) SET NOCOUNT ON; DECLARE @sql VARCHAR(1024) INSERT @tmp1 ( ID, Bezeichnung, Sequenz, beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp,temp,cid ) SELECT dbo.Personal_Berechtigung.Personal_BerechtigungNr, dbo.Berechtigung.Bezeichnung, dbo.Personal_Berechtigung.Sequenz, dbo.Personal_Berechtigung.Beschreibung, dbo.Personal_Berechtigung.Aktiv, dbo.Personal_Berechtigung.Erstellt_am, dbo.Personal_Berechtigung.Mutiert_am, dbo.Personal_Berechtigung.Mutierer, dbo.fnkt_get_bezeichnung(0) AS Typ, dbo.Berechtigung.BerechtigungNr AS MKEY, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp, dbo.fnkt_get_temporaer(dbo.Personal_Berechtigung.Personal_BerechtigungNr), berechtigung.CID FROM dbo.Berechtigung INNER JOIN dbo.Personal_Berechtigung ON dbo.Berechtigung.BerechtigungNr = dbo.Personal_Berechtigung.BerechtigungNr INNER JOIN dbo.Personal ON dbo.Personal_Berechtigung.PersonalNr = dbo.Personal.Personalnr INNER JOIN dbo.Beziehungstyp ON dbo.Personal_Berechtigung.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Personal.personalnr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Zusatz, Sequenz, beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp, temp, cid ) SELECT dbo.Personal_FunktionStelle.Personal_FunktionStelleNr, dbo.Funktionstelle.Bezeichnung, ISNULL(dbo.Funktionstelle.Funktionsstelle,''), dbo.Personal_FunktionStelle.Sequenz, dbo.Personal_FunktionStelle.Beschreibung, dbo.Personal_FunktionStelle.Aktiv, dbo.Personal_FunktionStelle.Erstellt_am, dbo.Personal_FunktionStelle.Mutiert_am, dbo.Personal_FunktionStelle.Mutierer, dbo.fnkt_get_bezeichnung(1) AS Typ, dbo.Funktionstelle.FunktionstelleNr AS MKEY, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp, dbo.fnkt_get_temporaer(dbo.Personal_FunktionStelle.Personal_FunktionStelleNr) , dbo.fnkt_get_personalcid(dbo.funktionstelle.funktionstellenr) FROM dbo.Personal INNER JOIN dbo.Personal_FunktionStelle ON dbo.Personal.Personalnr = dbo.Personal_FunktionStelle.PersonalNr INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr INNER JOIN dbo.Beziehungstyp ON dbo.Personal_FunktionStelle.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Personal.personalnr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Sequenz, beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp,temp,cid ) SELECT dbo.Personal_Plattform.Personal_PlattformNr, dbo.Plattform.Bezeichnung, dbo.Personal_Plattform.Sequenz, dbo.Personal_Plattform.Beschreibung, dbo.Personal_Plattform.Aktiv, dbo.Personal_Plattform.Erstellt_am, dbo.Personal_Plattform.Mutiert_am, dbo.Personal_Plattform.Mutierer, dbo.fnkt_get_bezeichnung(3) AS Typ, dbo.Plattform.PlattformNr AS MKEY, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp, dbo.fnkt_get_temporaer(dbo.Personal_Plattform.Personal_Plattformnr) ,plattform.cid FROM dbo.Personal INNER JOIN dbo.Personal_Plattform ON dbo.Personal.Personalnr = dbo.Personal_Plattform.PersonalNr INNER JOIN dbo.Plattform ON dbo.Personal_Plattform.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Beziehungstyp ON dbo.Personal_Plattform.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Personal.personalnr = @keyvalue and dbo.Personal_Plattform.Beziehungstypnr > -25 INSERT @tmp1 ( ID, Bezeichnung, Sequenz, beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp,cid ) SELECT dbo.Personal_Server.Personal_ServerNr, dbo.Server.Bezeichnung, dbo.Personal_Server.Sequenz, dbo.Personal_Server.Beschreibung, dbo.Personal_Server.Aktiv, dbo.Personal_Server.Erstellt_am, dbo.Personal_Server.Mutiert_am, dbo.Personal_Server.Mutierer, dbo.fnkt_get_bezeichnung(4) AS Typ, dbo.Server.ServerNr AS MKEY, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp ,server.cid FROM dbo.Personal INNER JOIN dbo.Personal_Server ON dbo.Personal.Personalnr = dbo.Personal_Server.PersonalNr INNER JOIN dbo.Server ON dbo.Personal_Server.ServerNr = dbo.Server.ServerNr INNER JOIN dbo.Beziehungstyp ON dbo.Personal_Server.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Personal.personalnr = @keyvalue UPDATE @tmp1 SET cid=0 WHERE cid IS NULL SELECT * FROM @tmp1 ORDER BY typ, Sequenz, Bezeichnung --select @sql = dbo.fnkt_get_beziehung_sql('Personal','Berechtigung',0,@keyvalue,'dbo.Personal.personalnr') --INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) --EXEC (@sql) --select @sql = dbo.fnkt_get_beziehung_sql('Personal','Funktionstelle',1,@keyvalue,'dbo.Personal.personalnr') --INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) --EXEC (@sql) --select @sql = dbo.fnkt_get_beziehung_sql('Personal','Plattform',3,@keyvalue,'dbo.Personal.personalnr') --INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) --EXEC (@sql) --select @sql = dbo.fnkt_get_beziehung_sql('Personal','Server',4,@keyvalue,'dbo.Personal.personalnr') --INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) --EXEC (@sql) END GO /****** Object: StoredProcedure [dbo].[sp_get_personal_by_tgnummer] Script Date: 13.12.2014 15:01:05 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_personal_by_tgnummer] @tgnummer VARCHAR(255) , @resultat VARCHAR(1024) OUTPUT AS BEGIN SELECT @resultat = ISNULL(personalnr, -1) FROM dbo.Personal WHERE TGNummer = @tgnummer END GO /****** Object: StoredProcedure [dbo].[sp_get_personal_funktionstelle] Script Date: 13.12.2014 15:01:05 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROCEDURE [dbo].[sp_get_personal_funktionstelle] @personalnr INT AS BEGIN SELECT dbo.Personal_FunktionStelle.Personal_FunktionStelleNr, dbo.Funktionstelle.Funktionstellenr, dbo.Funktionstelle.Funktionsstelle, dbo.Funktionstelle.Bezeichnung FROM dbo.Personal_FunktionStelle INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr WHERE ( dbo.Personal_FunktionStelle.Aktiv = 1 ) AND ( dbo.Personal_FunktionStelle.PersonalNr = @personalnr ) END GO /****** Object: StoredProcedure [dbo].[sp_get_plattform_beziehungen] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_plattform_beziehungen] @keyvalue INT , @typ INT = 0 AS BEGIN DECLARE @tmp1 TABLE ( ID INT , Bezeichnung VARCHAR(255) , Zusatz VARCHAR(255) , Beschreibung VARCHAR(255) , Sequenz INT , aktiv BIT , erstellt_am DATETIME , mutiert_am DATETIME , mutierer INT , typ VARCHAR(255) , MKey INT , Beziehungstyp VARCHAR(255) , CID INT , Temp INT ) SET NOCOUNT ON; SET NOCOUNT ON; INSERT @tmp1 ( ID , Bezeichnung , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp , CID ) SELECT dbo.Plattform_Berechtigung.Plattform_BerechtigungNr , dbo.Berechtigung.Bezeichnung , dbo.Plattform_Berechtigung.Sequenz , dbo.Plattform_Berechtigung.Beschreibung , dbo.Plattform_Berechtigung.Aktiv , dbo.Plattform_Berechtigung.Erstellt_am , dbo.Plattform_Berechtigung.Mutiert_am , dbo.Plattform_Berechtigung.Mutierer , dbo.fnkt_get_bezeichnung(0) AS Typ , dbo.Berechtigung.BerechtigungNr AS MKEY , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp , dbo.berechtigung.cid FROM dbo.Plattform_Berechtigung INNER JOIN dbo.Plattform ON dbo.Plattform_Berechtigung.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Berechtigung ON dbo.Plattform_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr INNER JOIN dbo.Beziehungstyp ON dbo.Plattform_Berechtigung.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE plattform.plattformnr = @keyvalue INSERT @tmp1 ( ID , Bezeichnung , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp ,cid ) SELECT dbo.Berechtigung_Plattform.Berechtigung_PlattformNr , dbo.Berechtigung.Bezeichnung , dbo.Berechtigung_Plattform.Sequenz , dbo.Berechtigung_Plattform.Beschreibung , dbo.Berechtigung_Plattform.Aktiv , dbo.Berechtigung_Plattform.Erstellt_am , dbo.Berechtigung_Plattform.Mutiert_am , dbo.Berechtigung_Plattform.Mutierer , dbo.fnkt_get_bezeichnung(0) AS Typ , Berechtigung_Plattform.BerechtigungNr , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp ,dbo.berechtigung.cid FROM dbo.Berechtigung INNER JOIN dbo.Berechtigung_Plattform ON dbo.Berechtigung.BerechtigungNr = dbo.Berechtigung_Plattform.berechtigungNr INNER JOIN dbo.Plattform ON dbo.Berechtigung_Plattform.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Beziehungstyp ON dbo.Berechtigung_Plattform.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE plattform.plattformnr = @keyvalue INSERT @tmp1 ( ID , Bezeichnung , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp ) SELECT dbo.Plattform_Server.Plattform_ServerNr , dbo.Server.Bezeichnung , dbo.Plattform_Server.Sequenz , dbo.Plattform_Server.Beschreibung , dbo.Plattform_Server.Aktiv , dbo.Plattform_Server.Erstellt_am , dbo.Plattform_Server.Mutiert_am , dbo.Plattform_Server.Mutierer , dbo.fnkt_get_bezeichnung(4) AS Typ , dbo.Server.ServerNr AS MKEY , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp FROM dbo.Plattform INNER JOIN dbo.Plattform_Server ON dbo.Plattform.PlattformNr = dbo.Plattform_Server.PlattformNr INNER JOIN dbo.Server ON dbo.Plattform_Server.ServerNr = dbo.Server.ServerNr INNER JOIN dbo.Beziehungstyp ON dbo.Plattform_Server.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE plattform.plattformnr = @keyvalue INSERT @tmp1 ( ID , Bezeichnung , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp , temp , cid ) SELECT dbo.Personal_Plattform.Personal_PlattformNr , dbo.Personal.TGNummer + ' ' + dbo.Personal.Name AS Bezeichnung , dbo.Personal_Plattform.Sequenz , dbo.Personal_Plattform.Beschreibung , dbo.Personal_Plattform.Aktiv , dbo.Personal_Plattform.Erstellt_am , dbo.Personal_Plattform.Mutiert_am , dbo.Personal_Plattform.Mutierer , dbo.fnkt_get_bezeichnung(7) AS Typ , dbo.Personal.Personalnr AS MKEY , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp , dbo.fnkt_get_temporaer(dbo.Personal_Plattform.Personal_Plattformnr), plattform.cid FROM dbo.Personal_Plattform INNER JOIN dbo.Plattform ON dbo.Personal_Plattform.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Personal ON dbo.Personal_Plattform.PersonalNr = dbo.Personal.Personalnr INNER JOIN dbo.Beziehungstyp ON dbo.Personal_Plattform.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE ( dbo.Plattform.PlattformNr = @keyvalue ) and dbo.Personal_Plattform.Beziehungstypnr>-25 IF @typ = 1 BEGIN INSERT @tmp1 ( ID , Bezeichnung , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp ) SELECT dbo.Verwaltung_Durch_Plattform.Verwaltung_Durch_PlattformNr , dbo.Verwaltung_Durch.Bezeichnung , dbo.Verwaltung_Durch_Plattform.Sequenz , dbo.Verwaltung_Durch_Plattform.Beschreibung , dbo.Verwaltung_Durch_Plattform.Aktiv , dbo.Verwaltung_Durch_Plattform.Erstellt_am , dbo.Verwaltung_Durch_Plattform.Mutiert_am , dbo.Verwaltung_Durch_Plattform.Mutierer , dbo.fnkt_get_bezeichnung(5) AS Typ , dbo.Verwaltung_Durch.Verwaltung_DurchNr AS MKEY , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp FROM dbo.Verwaltung_Durch_Plattform INNER JOIN dbo.Plattform ON dbo.Verwaltung_Durch_Plattform.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Verwaltung_Durch ON dbo.Verwaltung_Durch_Plattform.Verwaltung_DurchNr = dbo.Verwaltung_Durch.Verwaltung_DurchNr INNER JOIN dbo.Beziehungstyp ON dbo.Verwaltung_Durch_Plattform.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE plattform.plattformnr = @keyvalue INSERT @tmp1 ( ID , Bezeichnung , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp ) SELECT dbo.Verwaltung_mit_Plattform.Verwaltung_mit_PlattformNr , dbo.Verwaltung_mit.Bezeichnung , dbo.Verwaltung_mit_Plattform.Sequenz , dbo.Verwaltung_mit_Plattform.Beschreibung , dbo.Verwaltung_mit_Plattform.Aktiv , dbo.Verwaltung_mit_Plattform.Erstellt_am , dbo.Verwaltung_mit_Plattform.Mutiert_am , dbo.Verwaltung_mit_Plattform.Mutierer , dbo.fnkt_get_bezeichnung(6) AS Typ , dbo.Verwaltung_mit.Verwaltung_mitNr AS MKEY , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp FROM dbo.Verwaltung_mit_Plattform INNER JOIN dbo.Plattform ON dbo.Verwaltung_mit_Plattform.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Verwaltung_mit ON dbo.Verwaltung_mit_Plattform.Verwaltung_mitNr = dbo.Verwaltung_mit.Verwaltung_mitNr INNER JOIN dbo.Beziehungstyp ON dbo.Verwaltung_mit_Plattform.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE plattform.plattformnr = @keyvalue INSERT @tmp1 ( ID , Bezeichnung , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp , temp , cid ) SELECT dbo.Personal_Plattform.Personal_PlattformNr , dbo.Personal.TGNummer + ' ' + dbo.Personal.Name AS Bezeichnung , dbo.Personal_Plattform.Sequenz , dbo.Personal_Plattform.Beschreibung , dbo.Personal_Plattform.Aktiv , dbo.Personal_Plattform.Erstellt_am , dbo.Personal_Plattform.Mutiert_am , dbo.Personal_Plattform.Mutierer , dbo.fnkt_get_bezeichnung(7) AS Typ , dbo.Personal.Personalnr AS MKEY , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp , dbo.fnkt_get_temporaer(dbo.Personal_Plattform.Personal_Plattformnr) ,plattform.cid FROM dbo.Personal_Plattform INNER JOIN dbo.Plattform ON dbo.Personal_Plattform.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Personal ON dbo.Personal_Plattform.PersonalNr = dbo.Personal.Personalnr INNER JOIN dbo.Beziehungstyp ON dbo.Personal_Plattform.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE ( dbo.Plattform.PlattformNr = @keyvalue ) END INSERT @tmp1 ( ID , Bezeichnung , Zusatz , Sequenz , Beschreibung , aktiv , erstellt_am , mutiert_am , mutierer , typ , mkey , beziehungstyp , cid ) SELECT dbo.Funktionstelle_Plattform.Funktionstelle_PlattformNr , dbo.Funktionstelle.Bezeichnung , ISNULL(dbo.Funktionstelle.Funktionsstelle, '') , dbo.Funktionstelle_Plattform.Sequenz , dbo.Funktionstelle_Plattform.Beschreibung , dbo.Funktionstelle_Plattform.Aktiv , dbo.Funktionstelle_Plattform.Erstellt_am , dbo.Funktionstelle_Plattform.Mutiert_am , dbo.Funktionstelle_Plattform.Mutierer , dbo.fnkt_get_bezeichnung(1) AS Typ , dbo.Funktionstelle.FunktionstelleNr AS MKEY , dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp , plattform.cid FROM dbo.Funktionstelle_Plattform INNER JOIN dbo.Plattform ON dbo.Funktionstelle_Plattform.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Funktionstelle ON dbo.Funktionstelle_Plattform.FunktionstelleNr = dbo.Funktionstelle.FunktionstelleNr INNER JOIN dbo.Beziehungstyp ON dbo.Funktionstelle_Plattform.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE plattform.plattformnr = @keyvalue UPDATE @tmp1 SET cid = 0 WHERE cid IS NULL SELECT * FROM @tmp1 ORDER BY typ , Sequenz , Bezeichnung -- DECLARE @sql VARCHAR(1024) -- select @sql = dbo.fnkt_get_beziehung_sql('Plattform','Berechtigung',0,@keyvalue,'dbo.plattform.plattformnr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- select @sql = dbo.fnkt_get_beziehung_sql('Berechtigung','Plattform',0,@keyvalue,'dbo.plattform.plattformnr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- select @sql = dbo.fnkt_get_beziehung_sql('Plattform','Server',4,@keyvalue,'dbo.plattform.plattformnr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- select @sql = dbo.fnkt_get_beziehung_sql('Verwaltung_Durch','Plattform',5,@keyvalue,'dbo.plattform.plattformnr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- select @sql = dbo.fnkt_get_beziehung_sql('Verwaltung_mit','Plattform',6,@keyvalue,'dbo.plattform.plattformnr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- select @sql = dbo.fnkt_get_beziehung_sql('Funktionstelle','Plattform',1,@keyvalue,'dbo.plattform.plattformnr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) --PRINT @sql -- select @sql = dbo.fnkt_get_beziehung_sql('Personal','Plattform',7,@keyvalue,'dbo.plattform.plattformnr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) --PRINT @sql -- SELECT * -- FROM @tmp1 -- ORDER BY typ, Sequenz, Bezeichnung END GO /****** Object: StoredProcedure [dbo].[sp_get_plattform_beziehungen_sik] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_plattform_beziehungen_sik] @keyvalue INT AS BEGIN DECLARE @tmp1 TABLE ( ID INT , Bezeichnung VARCHAR(255) , Beschreibung VARCHAR(255) , Sequenz INT , aktiv BIT , erstellt_am DATETIME , mutiert_am DATETIME , mutierer INT , typ VARCHAR(255) , MKey INT ) SET NOCOUNT ON; INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey ) SELECT dbo.Plattform_Berechtigung.Plattform_BerechtigungNr, dbo.Berechtigung.Bezeichnung, dbo.Plattform_Berechtigung.Sequenz, dbo.Plattform_Berechtigung.Beschreibung, dbo.Plattform_Berechtigung.Aktiv, dbo.Plattform_Berechtigung.Erstellt_am, dbo.Plattform_Berechtigung.Mutiert_am, dbo.Plattform_Berechtigung.Mutierer, dbo.fnkt_get_bezeichnung(0) AS Typ, dbo.Berechtigung.BerechtigungNr AS MKEY FROM dbo.Plattform_Berechtigung INNER JOIN dbo.Plattform ON dbo.Plattform_Berechtigung.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Berechtigung ON dbo.Plattform_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr WHERE plattform.plattformnr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey ) SELECT dbo.Berechtigung_Plattform.Berechtigung_PlattformNr, dbo.Berechtigung.Bezeichnung, dbo.Berechtigung_Plattform.Sequenz, dbo.Berechtigung_Plattform.Beschreibung, dbo.Berechtigung_Plattform.Aktiv, dbo.Berechtigung_Plattform.Erstellt_am, dbo.Berechtigung_Plattform.Mutiert_am, dbo.Berechtigung_Plattform.Mutierer, dbo.fnkt_get_bezeichnung(0) AS Typ, Berechtigung_Plattform.BerechtigungNr FROM dbo.Berechtigung INNER JOIN dbo.Berechtigung_Plattform ON dbo.Berechtigung.BerechtigungNr = dbo.Berechtigung_Plattform.berechtigungNr INNER JOIN dbo.Plattform ON dbo.Berechtigung_Plattform.PlattformNr = dbo.Plattform.PlattformNr WHERE plattform.plattformnr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey ) SELECT dbo.Plattform_Server.Plattform_ServerNr, dbo.Server.Bezeichnung, dbo.Plattform_Server.Sequenz, dbo.Plattform_Server.Beschreibung, dbo.Plattform_Server.Aktiv, dbo.Plattform_Server.Erstellt_am, dbo.Plattform_Server.Mutiert_am, dbo.Plattform_Server.Mutierer, dbo.fnkt_get_bezeichnung(4) AS Typ, dbo.Server.ServerNr AS MKEY FROM dbo.Plattform INNER JOIN dbo.Plattform_Server ON dbo.Plattform.PlattformNr = dbo.Plattform_Server.PlattformNr INNER JOIN dbo.Server ON dbo.Plattform_Server.ServerNr = dbo.Server.ServerNr WHERE plattform.plattformnr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey ) SELECT dbo.Verwaltung_Durch_Plattform.Verwaltung_Durch_PlattformNr, dbo.Verwaltung_Durch.Bezeichnung, dbo.Verwaltung_Durch_Plattform.Sequenz, dbo.Verwaltung_Durch_Plattform.Beschreibung, dbo.Verwaltung_Durch_Plattform.Aktiv, dbo.Verwaltung_Durch_Plattform.Erstellt_am, dbo.Verwaltung_Durch_Plattform.Mutiert_am, dbo.Verwaltung_Durch_Plattform.Mutierer, dbo.fnkt_get_bezeichnung(5) AS Typ, dbo.Verwaltung_Durch.Verwaltung_DurchNr AS MKEY FROM dbo.Verwaltung_Durch_Plattform INNER JOIN dbo.Plattform ON dbo.Verwaltung_Durch_Plattform.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Verwaltung_Durch ON dbo.Verwaltung_Durch_Plattform.Verwaltung_DurchNr = dbo.Verwaltung_Durch.Verwaltung_DurchNr WHERE plattform.plattformnr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey ) SELECT dbo.Verwaltung_mit_Plattform.Verwaltung_mit_PlattformNr, dbo.Verwaltung_mit.Bezeichnung, dbo.Verwaltung_mit_Plattform.Sequenz, dbo.Verwaltung_mit_Plattform.Beschreibung, dbo.Verwaltung_mit_Plattform.Aktiv, dbo.Verwaltung_mit_Plattform.Erstellt_am, dbo.Verwaltung_mit_Plattform.Mutiert_am, dbo.Verwaltung_mit_Plattform.Mutierer, dbo.fnkt_get_bezeichnung(6) AS Typ, dbo.Verwaltung_mit.Verwaltung_mitNr AS MKEY FROM dbo.Verwaltung_mit_Plattform INNER JOIN dbo.Plattform ON dbo.Verwaltung_mit_Plattform.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Verwaltung_mit ON dbo.Verwaltung_mit_Plattform.Verwaltung_mitNr = dbo.Verwaltung_mit.Verwaltung_mitNr WHERE plattform.plattformnr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey ) SELECT dbo.Funktionstelle_Plattform.Funktionstelle_PlattformNr, dbo.Funktionstelle.Bezeichnung, dbo.Funktionstelle_Plattform.Sequenz, dbo.Funktionstelle_Plattform.Beschreibung, dbo.Funktionstelle_Plattform.Aktiv, dbo.Funktionstelle_Plattform.Erstellt_am, dbo.Funktionstelle_Plattform.Mutiert_am, dbo.Funktionstelle_Plattform.Mutierer, dbo.fnkt_get_bezeichnung(1) AS Typ, dbo.Funktionstelle.FunktionstelleNr AS MKEY FROM dbo.Funktionstelle_Plattform INNER JOIN dbo.Plattform ON dbo.Funktionstelle_Plattform.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Funktionstelle ON dbo.Funktionstelle_Plattform.FunktionstelleNr = dbo.Funktionstelle.FunktionstelleNr WHERE plattform.plattformnr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey ) SELECT dbo.Personal_Plattform.Personal_PlattformNr, dbo.Personal.TGNummer + ' ' + dbo.Personal.Name AS Bezeichnung, dbo.Personal_Plattform.Sequenz, dbo.Personal_Plattform.Beschreibung, dbo.Personal_Plattform.Aktiv, dbo.Personal_Plattform.Erstellt_am, dbo.Personal_Plattform.Mutiert_am, dbo.Personal_Plattform.Mutierer, dbo.fnkt_get_bezeichnung(7) AS Typ, dbo.Personal.Personalnr AS MKEY FROM dbo.Personal_Plattform INNER JOIN dbo.Plattform ON dbo.Personal_Plattform.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Personal ON dbo.Personal_Plattform.PersonalNr = dbo.Personal.Personalnr WHERE ( dbo.Plattform.PlattformNr = @keyvalue ) SELECT * FROM @tmp1 ORDER BY typ, Sequenz, Bezeichnung END GO /****** Object: StoredProcedure [dbo].[sp_get_Server_beziehungen] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_Server_beziehungen] @keyvalue INT, @typ INT=0 AS BEGIN DECLARE @tmp1 TABLE ( ID INT , Bezeichnung VARCHAR(255) , Zusatz VARCHAR(255), Beschreibung VARCHAR(255) , Sequenz INT , aktiv BIT , erstellt_am DATETIME , mutiert_am DATETIME , mutierer INT , typ VARCHAR(255) , MKey INT, Beziehungstyp VARCHAR(255), cid INT, Temp int ) SET NOCOUNT ON; INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp ) SELECT dbo.Plattform_Server.Plattform_ServerNr, dbo.Plattform.Bezeichnung, dbo.Plattform_Server.Sequenz, dbo.Plattform_Server.Beschreibung, dbo.Plattform_Server.Aktiv, dbo.Plattform_Server.Erstellt_am, dbo.Plattform_Server.Mutiert_am, dbo.Plattform_Server.Mutierer, dbo.fnkt_get_bezeichnung(3) AS Typ, dbo.Plattform.PlattformNr, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp FROM dbo.Plattform INNER JOIN dbo.Plattform_Server ON dbo.Plattform.PlattformNr = dbo.Plattform_Server.PlattformNr INNER JOIN dbo.Server ON dbo.Plattform_Server.ServerNr = dbo.Server.ServerNr INNER JOIN dbo.Beziehungstyp ON dbo.Plattform_Server.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Server.servernr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp ) SELECT dbo.Berechtigung_Server.Berechtigung_ServerNr, dbo.Berechtigung.Bezeichnung, dbo.Berechtigung_Server.Sequenz, dbo.Berechtigung_Server.Beschreibung, dbo.Berechtigung_Server.Aktiv, dbo.Berechtigung_Server.Erstellt_am, dbo.Berechtigung_Server.Mutiert_am, dbo.Berechtigung_Server.Mutierer, dbo.fnkt_get_bezeichnung(0) AS Typ, dbo.Berechtigung.BerechtigungNr, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp FROM dbo.Berechtigung INNER JOIN dbo.Berechtigung_Server ON dbo.Berechtigung.BerechtigungNr = dbo.Berechtigung_Server.BerechtigungNr INNER JOIN dbo.Server ON dbo.Berechtigung_Server.ServerNr = dbo.Server.ServerNr INNER JOIN dbo.Beziehungstyp ON dbo.Berechtigung_Server.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Server.servernr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Zusatz, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp,cid) SELECT dbo.Funktionstelle_Server.Funktionstelle_ServerNr, dbo.Funktionstelle.Bezeichnung, ISNULL(dbo.Funktionstelle.Funktionsstelle,''),dbo.Funktionstelle_Server.Sequenz, dbo.Funktionstelle_Server.Beschreibung, dbo.Funktionstelle_Server.Aktiv, dbo.Funktionstelle_Server.Erstellt_am, dbo.Funktionstelle_Server.Mutiert_am, dbo.Funktionstelle_Server.Mutierer, dbo.fnkt_get_bezeichnung(1) AS Typ, dbo.Funktionstelle.FunktionstelleNr, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp ,server.cid FROM dbo.Funktionstelle INNER JOIN dbo.Funktionstelle_Server ON dbo.Funktionstelle.FunktionstelleNr = dbo.Funktionstelle_Server.FunktionStelleNr INNER JOIN dbo.Server ON dbo.Funktionstelle_Server.ServerNr = dbo.Server.ServerNr INNER JOIN dbo.Beziehungstyp ON dbo.Funktionstelle_Server.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Server.servernr = @keyvalue IF @typ=1 begin INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp,cid ) SELECT dbo.Personal_Server.Personal_ServerNr, dbo.Personal.TGNummer + ' ' + dbo.Personal.Name, dbo.Personal_Server.Sequenz, dbo.Personal_Server.Beschreibung, dbo.Personal_Server.Aktiv, dbo.Personal_Server.Erstellt_am, dbo.Personal_Server.Mutiert_am, dbo.Personal_Server.Mutierer, dbo.fnkt_get_bezeichnung(2) AS Typ, dbo.Personal.PersonalNr, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp ,server.cid FROM dbo.Personal INNER JOIN dbo.Personal_Server ON dbo.Personal.PersonalNr = dbo.Personal_Server.PersonalNr INNER JOIN dbo.Server ON dbo.Personal_Server.ServerNr = dbo.Server.ServerNr INNER JOIN dbo.Beziehungstyp ON dbo.Personal_Server.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Server.servernr = @keyvalue and personal_server.Beziehungstypnr>-25 INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp ) SELECT dbo.Verwaltung_Durch_Server.Verwaltung_Durch_ServerNr, dbo.Verwaltung_Durch.Bezeichnung, dbo.Verwaltung_Durch_Server.Sequenz, dbo.Verwaltung_Durch_Server.Beschreibung, dbo.Verwaltung_Durch_Server.Aktiv, dbo.Verwaltung_Durch_Server.Erstellt_am, dbo.Verwaltung_Durch_Server.Mutiert_am, dbo.Verwaltung_Durch_Server.Mutierer, dbo.fnkt_get_bezeichnung(5) AS Typ, dbo.Verwaltung_Durch.Verwaltung_DurchNr, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp FROM dbo.Verwaltung_Durch INNER JOIN dbo.Verwaltung_Durch_Server ON dbo.Verwaltung_Durch.Verwaltung_DurchNr = dbo.Verwaltung_Durch_Server.Verwaltung_DurchNr INNER JOIN dbo.Server ON dbo.Verwaltung_Durch_Server.ServerNr = dbo.Server.ServerNr INNER JOIN dbo.Beziehungstyp ON dbo.Verwaltung_Durch_Server.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Server.servernr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp ) SELECT dbo.Verwaltung_Mit_Server.Verwaltung_Mit_ServerNr, dbo.Verwaltung_Mit.Bezeichnung, dbo.Verwaltung_Mit_Server.Sequenz, dbo.Verwaltung_Mit_Server.Beschreibung, dbo.Verwaltung_Mit_Server.Aktiv, dbo.Verwaltung_Mit_Server.Erstellt_am, dbo.Verwaltung_Mit_Server.Mutiert_am, dbo.Verwaltung_Mit_Server.Mutierer, dbo.fnkt_get_bezeichnung(6) AS Typ, dbo.Verwaltung_Mit.Verwaltung_MitNr, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp FROM dbo.Verwaltung_Mit INNER JOIN dbo.Verwaltung_Mit_Server ON dbo.Verwaltung_Mit.Verwaltung_MitNr = dbo.Verwaltung_Mit_Server.Verwaltung_MitNr INNER JOIN dbo.Server ON dbo.Verwaltung_Mit_Server.ServerNr = dbo.Server.ServerNr INNER JOIN dbo.Beziehungstyp ON dbo.Verwaltung_Mit_Server.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Server.servernr = @keyvalue end UPDATE @tmp1 SET cid=0 WHERE cid IS NULL SELECT * FROM @tmp1 ORDER BY typ, Sequenz, Bezeichnung -- DECLARE @sql VARCHAR(1024) -- select @sql = dbo.fnkt_get_beziehung_sql('Plattform','Server',3,@keyvalue,'dbo.Server.servernr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- select @sql = dbo.fnkt_get_beziehung_sql('Berechtigung','Server',0,@keyvalue,'dbo.Server.servernr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- select @sql = dbo.fnkt_get_beziehung_sql('Funktionstelle','Server',1,@keyvalue,'dbo.Server.servernr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- select @sql = dbo.fnkt_get_beziehung_sql('Personal','Server',2,@keyvalue,'dbo.Server.servernr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- select @sql = dbo.fnkt_get_beziehung_sql('Verwaltung_Durch','Server',5,@keyvalue,'dbo.Server.servernr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- select @sql = dbo.fnkt_get_beziehung_sql('Verwaltung_Mit','Server',6,@keyvalue,'dbo.Server.servernr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) --SELECT * -- FROM @tmp1 -- ORDER BY typ, Sequenz, Bezeichnung -- return END GO /****** Object: StoredProcedure [dbo].[sp_get_stammdaten] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER OFF GO -- ============================================= -- Author: Stefan Hutter -- Create date: 14.4.2009 -- Description: Liest die Stammdatentabellen -- Changelog: -- 15.4.09 Anpassung, dass nur die aktiven Datenelemente ausgelesen werden -- ============================================= CREATE PROCEDURE [dbo].[sp_get_stammdaten] @mitarbeiternr INT , @tabelle VARCHAR(255) , @orderby VARCHAR(255) AS BEGIN DECLARE @xsql VARCHAR(255) IF UPPER(@tabelle) = "BEZIEHUNGSTYP" BEGIN SELECT beziehungstypnr AS KEYValue , bezeichnung FROM dbo.beziehungstyp WHERE aktiv = 1 ORDER BY Bezeichnung RETURN END IF UPPER(@tabelle) = 'KOSTENART' BEGIN SELECT kostenartnr , bezeichnung + ' - ' + beschreibung AS Bezeichnung FROM kostenart WHERE aktiv = 1 ORDER BY bezeichnung RETURN END IF UPPER(@tabelle) = 'KONTAKTTYP_GREMIUM' BEGIN SELECT kontakttypnr , bezeichnung , applikationsbereichnr FROM kontakttyp WHERE applikationsbereichnr = 3 AND aktiv = 1 ORDER BY bezeichnung RETURN END IF UPPER(@tabelle) = 'RELEASEART' BEGIN SELECT Releaseartnr , bezeichnung AS Bezeichnung FROM Releaseart WHERE aktiv = 1 ORDER BY bezeichnung RETURN END IF UPPER(@tabelle) = 'PERSON' BEGIN SELECT personnr , Name + ' ' + Vorname AS Bezeichnung FROM Person WHERE Vertragspartnernr = 1 AND Aktiv = 1 ORDER BY Name , Vorname RETURN END IF UPPER(@tabelle) = 'PERSON1' BEGIN SELECT personnr , Name + ' ' + Vorname AS Bezeichnung FROM Person WHERE Vertragspartnernr = 1 AND Aktiv = 1 ORDER BY Name , Vorname RETURN END IF UPPER(@tabelle) = 'PERSON2' BEGIN SELECT personnr , Name + ' ' + Vorname AS Bezeichnung FROM Person WHERE Vertragspartnernr = 1 AND Aktiv = 1 ORDER BY Name , Vorname RETURN END IF UPPER(@tabelle) = 'VERWALTUNG_DURCH' BEGIN SELECT verwaltung_durchnr AS keyvalue , bezeichnung AS Bezeichnung FROM Verwaltung_Durch WHERE Aktiv = 1 ORDER BY bezeichnung RETURN END IF UPPER(@tabelle) = 'VERWALTUNG_MIT' BEGIN SELECT verwaltung_mitnr AS keyvalue , bezeichnung AS Bezeichnung FROM Verwaltung_mit WHERE Aktiv = 1 ORDER BY Bezeichnung RETURN END IF UPPER(@tabelle) = 'PERSONAL' BEGIN SELECT PERSONALNR AS keyvalue , name+', '+tgnummer as bezeichnung FROM personal WHERE Aktiv = 1 and LTRIM(rtrim(tgnummer+' ' +name))<>'' ORDER BY name+', '+tgnummer RETURN END SET @xsql = 'Select * from ' + @tabelle + ' where aktiv=1 order by ' + @orderby EXEC(@xsql) END GO /****** Object: StoredProcedure [dbo].[sp_get_struktur] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_struktur] @root VARCHAR(255) AS BEGIN IF @root = 'Organisation' BEGIN SELECT FunktionStelleNr AS id, parentid AS parentid, bezeichnung, 0 AS imageindex, ISNULL(Funktionsstelle, '') AS ErweiterteSuche INTO #tmp1 FROM FunktionStelle WHERE Aktiv = 1 INSERT #tmp1 ( id, parentid, bezeichnung, imageindex, ErweiterteSuche ) VALUES ( 0, NULL, 'Root', 1, ' ' ) UPDATE #tmp1 SET imageindex = 0 UPDATE #tmp1 SET imageindex = 1 WHERE id IN ( SELECT parentid FROM FunktionStelle WHERE aktiv=1 ) SELECT * FROM #tmp1 ORDER BY bezeichnung END IF @root = 'Personal' BEGIN SELECT personalnr AS id, parentid AS parentid, bezeichnung + ' ' + name AS Bezeichnung, 0 AS imageindex, '' AS ErweiterteSuche INTO #tmp2 FROM Personal WHERE Aktiv = 1 INSERT #tmp2 ( id, parentid, bezeichnung, imageindex, ErweiterteSuche ) VALUES ( 0, NULL, 'Root', 3, ' ' ) UPDATE #tmp2 SET imageindex = 2 UPDATE #tmp2 SET imageindex = 3 WHERE id IN ( SELECT parentid FROM Personal WHERE aktiv=1 ) UPDATE #tmp2 SET id = ID, parentid = parentid SELECT * FROM #tmp2 ORDER BY bezeichnung END IF @root = 'Berechtigung' BEGIN SELECT Berechtigungnr AS id, parentid AS parentid, bezeichnung, 0 AS imageindex, '' AS ErweiterteSuche INTO #tmp3 FROM Berechtigung WHERE Aktiv = 1 INSERT #tmp3 ( id, parentid, bezeichnung, imageindex, ErweiterteSuche ) VALUES ( 0, NULL, 'Root', 5, ' ' ) UPDATE #tmp3 SET imageindex = 4 UPDATE #tmp3 SET imageindex = 5 WHERE id IN ( SELECT parentid FROM Berechtigung WHERE aktiv=1 ) UPDATE #tmp3 SET id = ID, parentid = parentid SELECT * FROM #tmp3 ORDER BY bezeichnung END IF @root = 'Plattform' BEGIN SELECT PlattformNr AS id, parentid AS parentid, bezeichnung, 0 AS imageindex, '' AS ErweiterteSuche INTO #tmp4 FROM Plattform WHERE Aktiv = 1 INSERT #tmp4 ( id, parentid, bezeichnung, imageindex, ErweiterteSuche ) VALUES ( 0, NULL, 'Root', 1, ' ' ) UPDATE #tmp4 SET imageindex = 6 UPDATE #tmp4 SET imageindex = 7 WHERE id IN ( SELECT parentid FROM Plattform WHERE Aktiv=1 ) SELECT * FROM #tmp4 ORDER BY bezeichnung END IF @root = 'Server' BEGIN SELECT ServerNr AS id, parentid AS parentid, bezeichnung, 0 AS imageindex, '' AS ErweiterteSuche INTO #tmp5 FROM Server WHERE Aktiv = 1 INSERT #tmp5 ( id, parentid, bezeichnung, imageindex, ErweiterteSuche ) VALUES ( 0, NULL, 'Root', 1, ' ' ) UPDATE #tmp5 SET imageindex = 8 UPDATE #tmp5 SET imageindex = 9 WHERE id IN ( SELECT parentid FROM Server WHERE aktiv=1) SELECT * FROM #tmp5 ORDER BY bezeichnung END IF @root = 'VerwaltungDurch' BEGIN SELECT Verwaltung_durchnr AS id, parentid AS parentid, bezeichnung, 0 AS imageindex, '' AS ErweiterteSuche INTO #tmp6 FROM Verwaltung_durch WHERE Aktiv = 1 INSERT #tmp6 ( id, parentid, bezeichnung, imageindex, ErweiterteSuche ) VALUES ( 0, NULL, 'Root', 1, ' ' ) UPDATE #tmp6 SET imageindex = 10 UPDATE #tmp6 SET imageindex = 11 WHERE id IN ( SELECT parentid FROM Verwaltung_durch WHERE aktiv=1 ) SELECT * FROM #tmp6 ORDER BY bezeichnung END IF @root = 'VerwaltungMit' BEGIN SELECT Verwaltung_mitnr AS id, parentid AS parentid, bezeichnung, 0 AS imageindex, '' AS ErweiterteSuche INTO #tmp7 FROM Verwaltung_mit WHERE Aktiv = 1 INSERT #tmp7 ( id, parentid, bezeichnung, imageindex, ErweiterteSuche ) VALUES ( 0, NULL, 'Root', 1, ' ' ) UPDATE #tmp7 SET imageindex = 12 UPDATE #tmp7 SET imageindex = 13 WHERE id IN ( SELECT parentid FROM Verwaltung_mit WHERE aktiv=1 ) SELECT * FROM #tmp7 ORDER BY bezeichnung END END GO /****** Object: StoredProcedure [dbo].[sp_get_sysadmin_hierarchie_data] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS OFF GO SET QUOTED_IDENTIFIER OFF GO CREATE PROC [dbo].[sp_get_sysadmin_hierarchie_data] @Root INT , @isprache INT , @imandant INT AS BEGIN SET NOCOUNT ON DECLARE @DokID INT , @Dokname VARCHAR(30) , @nr INT , @pa INT , @sort INT , @i1 INT , @i2 INT SET @DokName = ( SELECT Bezeichnung FROM dbo.sysadminfunktion WHERE sysadminfnktnr = @Root AND sprache = @isprache AND mandantnr = @imandant ) SET @nr = ( SELECT sysadminfnktnr FROM dbo.sysadminfunktion WHERE sysadminfnktnr = @Root AND sprache = @isprache AND mandantnr = @imandant ) SET @pa = ( SELECT parentid FROM dbo.sysadminfunktion WHERE sysadminfnktnr = @Root AND sprache = @isprache AND mandantnr = @imandant ) SET @sort = ( SELECT ISNULL(sort, 0) FROM dbo.sysadminfunktion WHERE sysadminfnktnr = @Root AND sprache = @isprache AND mandantnr = @imandant ) SET @i1 = ( SELECT imageindex FROM dbo.sysadminfunktion WHERE sysadminfnktnr = @Root AND sprache = @isprache AND mandantnr = @imandant ) SET @i2 = ( SELECT imageindexopen FROM dbo.sysadminfunktion WHERE sysadminfnktnr = @Root AND sprache = @isprache AND mandantnr = @imandant ) PRINT STR(@nr) + ' ' + @Dokname INSERT INTO #tmph ( sysadminfnktnr, Bezeichnung, imageindex, imageindexopen, parentid, sort ) VALUES ( @nr, @dokname, @i1, @i2, @pa, @sort ) SET @DokID = ( SELECT ( parentid ) FROM dbo.sysadminfunktion WHERE sysadminfnktnr = @nr ) WHILE ( @dokid IS NOT NULL ) AND ( @dokid <> 0 ) BEGIN EXEC sp_get_sysadmin_hierarchie_data @DOkid, @isprache, @imandant SET @DokID = ( SELECT ( parentid ) FROM dbo.sysadminfunktion WHERE sysadminfnktnr = @nr AND parentid > @dokID ) END END GO /****** Object: StoredProcedure [dbo].[sp_get_sysadmin_tree] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROC [dbo].[sp_get_sysadmin_tree] -------------------------------------------------------------------------------------------------------------- -- Liest die Dokumentart-Hierarchie, Knoten Root in der entsprechenden Sprache, für den entsprechenden Mandanten -- -- Autor: Stefan Hutter -------------------------------------------------------------- @imitarbeiternr INT , @iSprache INT , @iMandant INT , @iRoot INT , @iErrorcode INT OUTPUT AS CREATE TABLE #tmph ( [sysadminfnktnr] [int] NULL , [bezeichnung] [varchar](255) NULL , [imageindex] [int] NULL , [imageindexopen] [int] NULL , [parentid] [int] NULL , [sort] [int] NULL ) ON [PRIMARY] DECLARE @sfnkt INT DECLARE xcursor CURSOR FOR SELECT dbo.rolle_sysadminfunktion.sysadminfnktnr FROM dbo.mitarbeiter_funktionsgruppe INNER JOIN dbo.funktionsgruppe_rolle ON dbo.mitarbeiter_funktionsgruppe.funktionsgruppenr = dbo.funktionsgruppe_rolle.funktionsgruppenr INNER JOIN dbo.rolle_sysadminfunktion ON dbo.funktionsgruppe_rolle.rollenr = dbo.rolle_sysadminfunktion.rollenr INNER JOIN dbo.funktionsgruppe ON dbo.mitarbeiter_funktionsgruppe.funktionsgruppenr = dbo.funktionsgruppe.funktionsgruppenr WHERE ( dbo.rolle_sysadminfunktion.aktiv = 1 ) AND ( dbo.funktionsgruppe_rolle.aktiv = 1 ) AND ( dbo.mitarbeiter_funktionsgruppe.aktiv = 1 ) AND ( dbo.funktionsgruppe.aktiv = 1 ) AND ( dbo.mitarbeiter_funktionsgruppe.mitarbeiternr = @imitarbeiternr ) /* SELECT dbo.rolle_sysadminfunktion.sysadminfnktnr FROM dbo.rolle INNER JOIN dbo.mitarbeiterrolle ON dbo.rolle.rollenr = dbo.mitarbeiterrolle.rollenr INNER JOIN dbo.rolle_sysadminfunktion ON dbo.rolle.rollenr = dbo.rolle_sysadminfunktion.rollenr WHERE dbo.mitarbeiterrolle.mitarbeiternr = @imitarbeiternr and rolle_sysadminfunktion.aktiv=1 and dbo.rolle.aktiv=1 and dbo.mitarbeiterrolle.aktiv=1 */ OPEN xcursor FETCH NEXT FROM xcursor INTO @sfnkt WHILE @@FETCH_STATUS = 0 BEGIN EXECUTE sp_get_sysadmin_hierarchie_data @sfnkt, @isprache, @imandant FETCH NEXT FROM xcursor INTO @sfnkt END CLOSE xcursor DEALLOCATE xcursor DELETE #tmph WHERE parentid IS NULL UPDATE #tmph SET parentid = 0, imageindex = 2, imageindexopen = 2 WHERE sysadminfnktnr = @iroot SELECT DISTINCT * FROM #tmph ORDER BY sort DROP TABLE #tmph SELECT @iErrorcode = @@error GO /****** Object: StoredProcedure [dbo].[sp_get_tempberechtigung] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_tempberechtigung] AS BEGIN SET NOCOUNT ON; SELECT 'Funktionstelle' AS Datatype , dbo.Personal.Personalnr , dbo.Personal.Bezeichnung , dbo.Personal.Name , dbo.Funktionstelle.FunktionstelleNr , dbo.Funktionstelle.Bezeichnung AS Expr1 , dbo.Temporaer_Berechtigung.Beschreibung , dbo.Temporaer_Berechtigung.Unterlagen , dbo.Temporaer_Berechtigung.Bearbeiter_ISI , dbo.Temporaer_Berechtigung.Kontaktperson_FB , dbo.Temporaer_Berechtigung.Termin , dbo.Temporaer_Berechtigung.aktiv , dbo.Temporaer_Berechtigung.erstellt_am , dbo.Temporaer_Berechtigung.mutiert_am , dbo.Temporaer_Berechtigung.mutierer , dbo.Funktionstelle.Funktionsstelle , dbo.Temporaer_Berechtigung.NrTempBerechtigung INTO #tmp1 FROM dbo.Temporaer_Berechtigung INNER JOIN dbo.Personal_FunktionStelle ON dbo.Temporaer_Berechtigung.Personal_FunktionStelleNr = dbo.Personal_FunktionStelle.Personal_FunktionStelleNr INNER JOIN dbo.Personal ON dbo.Personal_FunktionStelle.PersonalNr = dbo.Personal.Personalnr INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr WHERE datatype = 0 ORDER BY dbo.Temporaer_Berechtigung.Termin INSERT #tmp1 SELECT 'Berechtigung' AS Datatype , dbo.Personal.Personalnr , dbo.Personal.Bezeichnung , dbo.Personal.Name , dbo.Berechtigung.BerechtigungNr , dbo.Berechtigung.Bezeichnung AS Expr1 , dbo.Temporaer_Berechtigung.Beschreibung , dbo.Temporaer_Berechtigung.Unterlagen , dbo.Temporaer_Berechtigung.Bearbeiter_ISI , dbo.Temporaer_Berechtigung.Kontaktperson_FB , dbo.Temporaer_Berechtigung.Termin , dbo.Temporaer_Berechtigung.aktiv , dbo.Temporaer_Berechtigung.erstellt_am , dbo.Temporaer_Berechtigung.mutiert_am , dbo.Temporaer_Berechtigung.mutierer , '' , dbo.Temporaer_Berechtigung.NrTempBerechtigung FROM dbo.Temporaer_Berechtigung INNER JOIN dbo.Personal_Berechtigung ON dbo.Temporaer_Berechtigung.Personal_FunktionStelleNr = dbo.Personal_Berechtigung.Personal_BerechtigungNr INNER JOIN dbo.Personal ON dbo.Personal_Berechtigung.PersonalNr = dbo.Personal.Personalnr INNER JOIN dbo.Berechtigung ON dbo.Personal_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr WHERE datatype = 1 ORDER BY dbo.Temporaer_Berechtigung.Termin INSERT #tmp1 SELECT 'Plattform' AS Datatype , dbo.Personal.Personalnr , dbo.Personal.Bezeichnung , dbo.Personal.Name , dbo.Plattform.PlattformNr , dbo.Plattform.Bezeichnung AS Expr1 , dbo.Temporaer_Berechtigung.Beschreibung , dbo.Temporaer_Berechtigung.Unterlagen , dbo.Temporaer_Berechtigung.Bearbeiter_ISI , dbo.Temporaer_Berechtigung.Kontaktperson_FB , dbo.Temporaer_Berechtigung.Termin , dbo.Temporaer_Berechtigung.aktiv , dbo.Temporaer_Berechtigung.erstellt_am , dbo.Temporaer_Berechtigung.mutiert_am , dbo.Temporaer_Berechtigung.mutierer , '' , dbo.Temporaer_Berechtigung.NrTempBerechtigung FROM dbo.Temporaer_Berechtigung INNER JOIN dbo.Personal_Plattform ON dbo.Temporaer_Berechtigung.Personal_FunktionStelleNr = dbo.Personal_Plattform.Personal_PlattformNr INNER JOIN dbo.Personal ON dbo.Personal_Plattform.PersonalNr = dbo.Personal.Personalnr INNER JOIN dbo.Plattform ON dbo.Personal_Plattform.PlattformNr = dbo.Plattform.PlattformNr WHERE datatype = 2 ORDER BY dbo.Temporaer_Berechtigung.Termin SELECT * FROM #tmp1 ORDER BY Termin END GO /****** Object: StoredProcedure [dbo].[sp_get_temporaerberechtigung] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_temporaerberechtigung] @keyvalue int AS BEGIN SELECT * FROM dbo.Temporaer_Berechtigung WHERE Personal_FunktionStelleNr=@keyvalue AND aktiv=1 END GO /****** Object: StoredProcedure [dbo].[sp_get_temporaetberechtigung] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_temporaetberechtigung] @keyvalue int AS BEGIN SELECT * FROM dbo.Temporaer_Berechtigung WHERE Personal_FunktionStelleNr=@keyvalue AND aktiv=1 END GO /****** Object: StoredProcedure [dbo].[sp_get_Verwaltung_durch_beziehungen] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_Verwaltung_durch_beziehungen] @keyvalue INT, @typ INT = 0 AS BEGIN DECLARE @tmp1 TABLE ( ID INT , Bezeichnung VARCHAR(255) , Beschreibung VARCHAR(255) , Sequenz INT , aktiv BIT , erstellt_am DATETIME , mutiert_am DATETIME , mutierer INT , typ VARCHAR(255) , MKey INT, Beziehungstyp VARCHAR(255), bcid INT, fcid int ) SET NOCOUNT ON; INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp,bcid ) SELECT dbo.Verwaltung_Durch_Berechtigung.Verwaltung_Durch_BerechtigungNr, dbo.Berechtigung.Bezeichnung, dbo.Verwaltung_Durch_Berechtigung.Sequenz, dbo.Verwaltung_Durch_Berechtigung.Beschreibung, dbo.Verwaltung_Durch_Berechtigung.Aktiv, dbo.Verwaltung_Durch_Berechtigung.Erstellt_am, dbo.Verwaltung_Durch_Berechtigung.Mutiert_am, dbo.Verwaltung_Durch_Berechtigung.Mutierer, dbo.fnkt_get_bezeichnung(0) AS Typ, dbo.Berechtigung.BerechtigungNr AS MKEY, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp ,dbo.berechtigung.cid AS bcid FROM dbo.Verwaltung_Durch_Berechtigung INNER JOIN dbo.Verwaltung_Durch ON dbo.Verwaltung_Durch_Berechtigung.Verwaltung_DurchNr = dbo.Verwaltung_Durch.Verwaltung_DurchNr INNER JOIN dbo.Berechtigung ON dbo.Verwaltung_Durch_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr INNER JOIN dbo.Beziehungstyp ON dbo.Verwaltung_Durch_Berechtigung.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Verwaltung_Durch.Verwaltung_Durchnr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp ) SELECT dbo.Verwaltung_Durch_Server.Verwaltung_Durch_ServerNr, dbo.Server.Bezeichnung, dbo.Verwaltung_Durch_Server.Sequenz, dbo.Verwaltung_Durch_Server.Beschreibung, dbo.Verwaltung_Durch_Server.Aktiv, dbo.Verwaltung_Durch_Server.Erstellt_am, dbo.Verwaltung_Durch_Server.Mutiert_am, dbo.Verwaltung_Durch_Server.Mutierer, dbo.fnkt_get_bezeichnung(4) AS Typ, dbo.Server.ServerNr AS MKEY, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp FROM dbo.Verwaltung_Durch INNER JOIN dbo.Verwaltung_Durch_Server ON dbo.Verwaltung_Durch.Verwaltung_DurchNr = dbo.Verwaltung_Durch_Server.Verwaltung_DurchNr INNER JOIN dbo.Server ON dbo.Verwaltung_Durch_Server.ServerNr = dbo.Server.ServerNr INNER JOIN dbo.Beziehungstyp ON dbo.Verwaltung_Durch_Server.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Verwaltung_Durch.Verwaltung_Durchnr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp ) SELECT dbo.Verwaltung_Durch_Plattform.Verwaltung_Durch_PlattformNr, dbo.Plattform.Bezeichnung, dbo.Verwaltung_Durch_Plattform.Sequenz, dbo.Verwaltung_Durch_Plattform.Beschreibung, dbo.Verwaltung_Durch_Plattform.Aktiv, dbo.Verwaltung_Durch_Plattform.Erstellt_am, dbo.Verwaltung_Durch_Plattform.Mutiert_am, dbo.Verwaltung_Durch_Plattform.Mutierer, dbo.fnkt_get_bezeichnung(3) AS Typ, dbo.Plattform.PlattformNr AS MKEY, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp FROM dbo.Verwaltung_Durch_Plattform INNER JOIN dbo.Plattform ON dbo.Verwaltung_Durch_Plattform.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Verwaltung_Durch ON dbo.Verwaltung_Durch_Plattform.Verwaltung_DurchNr = dbo.Verwaltung_Durch.Verwaltung_DurchNr INNER JOIN dbo.Beziehungstyp ON dbo.Verwaltung_Durch_Plattform.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Verwaltung_Durch.Verwaltung_Durchnr = @keyvalue UPDATE @tmp1 SET fcid=0 WHERE fcid IS NULL UPDATE @tmp1 SET bcid=0 WHERE bcid IS null SELECT * FROM @tmp1 ORDER BY typ, Sequenz, Bezeichnung END GO /****** Object: StoredProcedure [dbo].[sp_get_Verwaltung_mit_beziehungen] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_get_Verwaltung_mit_beziehungen] @keyvalue INT, @typ INT = 0 AS BEGIN DECLARE @tmp1 TABLE ( ID INT , Bezeichnung VARCHAR(255) , Zusatz VARCHAR(255), Beschreibung VARCHAR(255) , Sequenz INT , aktiv BIT , erstellt_am DATETIME , mutiert_am DATETIME , mutierer INT , typ VARCHAR(255) , MKey INT, Beziehungstyp VARCHAR(255), fcid int, bcid int ) SET NOCOUNT ON; INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp,bcid ) SELECT dbo.Verwaltung_Mit_Berechtigung.Verwaltung_Mit_BerechtigungNr, dbo.Berechtigung.Bezeichnung, dbo.Verwaltung_Mit_Berechtigung.Sequenz, dbo.Verwaltung_Mit_Berechtigung.Beschreibung, dbo.Verwaltung_Mit_Berechtigung.Aktiv, dbo.Verwaltung_Mit_Berechtigung.Erstellt_am, dbo.Verwaltung_Mit_Berechtigung.Mutiert_am, dbo.Verwaltung_Mit_Berechtigung.Mutierer, dbo.fnkt_get_bezeichnung(0) AS Typ, dbo.Berechtigung.BerechtigungNr AS MKEY, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp ,dbo.Berechtigung.cid AS bcid FROM dbo.Verwaltung_Mit_Berechtigung INNER JOIN dbo.Verwaltung_Mit ON dbo.Verwaltung_Mit_Berechtigung.Verwaltung_MitNr = dbo.Verwaltung_Mit.Verwaltung_MitNr INNER JOIN dbo.Berechtigung ON dbo.Verwaltung_Mit_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr INNER JOIN dbo.Beziehungstyp ON dbo.Verwaltung_Mit_Berechtigung.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Verwaltung_Mit.Verwaltung_Mitnr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Zusatz, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp,fcid ) SELECT dbo.Verwaltung_Mit_FunktionStelle.Verwaltung_Mit_FunktionStelleNr, dbo.FunktionStelle.Bezeichnung, ISNULL(dbo.Funktionstelle.Funktionsstelle,''), dbo.Verwaltung_Mit_FunktionStelle.Sequenz, dbo.Verwaltung_Mit_FunktionStelle.Beschreibung, dbo.Verwaltung_Mit_FunktionStelle.Aktiv, dbo.Verwaltung_Mit_FunktionStelle.Erstellt_am, dbo.Verwaltung_Mit_FunktionStelle.Mutiert_am, dbo.Verwaltung_Mit_FunktionStelle.Mutierer, dbo.fnkt_get_bezeichnung(1) AS Typ, dbo.FunktionStelle.FunktionStelleNr AS MKEY, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp ,dbo.funktionstelle.cid AS fcid FROM dbo.Verwaltung_Mit_FunktionStelle INNER JOIN dbo.Verwaltung_Mit ON dbo.Verwaltung_Mit_FunktionStelle.Verwaltung_MitNr = dbo.Verwaltung_Mit.Verwaltung_MitNr INNER JOIN dbo.FunktionStelle ON dbo.Verwaltung_Mit_FunktionStelle.FunktionStelleNr = dbo.FunktionStelle.FunktionStelleNr INNER JOIN dbo.Beziehungstyp ON dbo.Verwaltung_Mit_FunktionStelle.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Verwaltung_Mit.Verwaltung_Mitnr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp ) SELECT dbo.Verwaltung_Mit_Server.Verwaltung_Mit_ServerNr, dbo.Server.Bezeichnung, dbo.Verwaltung_Mit_Server.Sequenz, dbo.Verwaltung_Mit_Server.Beschreibung, dbo.Verwaltung_Mit_Server.Aktiv, dbo.Verwaltung_Mit_Server.Erstellt_am, dbo.Verwaltung_Mit_Server.Mutiert_am, dbo.Verwaltung_Mit_Server.Mutierer, dbo.fnkt_get_bezeichnung(4) AS Typ, dbo.Server.ServerNr AS MKEY, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp FROM dbo.Verwaltung_Mit INNER JOIN dbo.Verwaltung_Mit_Server ON dbo.Verwaltung_Mit.Verwaltung_MitNr = dbo.Verwaltung_Mit_Server.Verwaltung_MitNr INNER JOIN dbo.Server ON dbo.Verwaltung_Mit_Server.ServerNr = dbo.Server.ServerNr INNER JOIN dbo.Beziehungstyp ON dbo.Verwaltung_Mit_Server.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Verwaltung_Mit.Verwaltung_Mitnr = @keyvalue INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey,beziehungstyp ) SELECT dbo.Verwaltung_Mit_Plattform.Verwaltung_Mit_PlattformNr, dbo.Plattform.Bezeichnung, dbo.Verwaltung_Mit_Plattform.Sequenz, dbo.Verwaltung_Mit_Plattform.Beschreibung, dbo.Verwaltung_Mit_Plattform.Aktiv, dbo.Verwaltung_Mit_Plattform.Erstellt_am, dbo.Verwaltung_Mit_Plattform.Mutiert_am, dbo.Verwaltung_Mit_Plattform.Mutierer, dbo.fnkt_get_bezeichnung(3) AS Typ, dbo.Plattform.PlattformNr AS MKEY, dbo.Beziehungstyp.Bezeichnung AS Beziehungstyp FROM dbo.Verwaltung_Mit_Plattform INNER JOIN dbo.Plattform ON dbo.Verwaltung_Mit_Plattform.PlattformNr = dbo.Plattform.PlattformNr INNER JOIN dbo.Verwaltung_Mit ON dbo.Verwaltung_Mit_Plattform.Verwaltung_MitNr = dbo.Verwaltung_Mit.Verwaltung_MitNr INNER JOIN dbo.Beziehungstyp ON dbo.Verwaltung_Mit_Plattform.Beziehungstypnr = dbo.Beziehungstyp.BeziehungstypNr WHERE Verwaltung_Mit.Verwaltung_Mitnr = @keyvalue UPDATE @tmp1 SET fcid=0 WHERE fcid IS NULL UPDATE @tmp1 SET bcid=0 WHERE bcid IS null SELECT * FROM @tmp1 ORDER BY typ, Sequenz, Bezeichnung --DECLARE @sql VARCHAR(1024) -- select @sql = dbo.fnkt_get_beziehung_sql('Verwaltung_Mit','Berechtigung',0,@keyvalue,'dbo.Verwaltung_Mit.Verwaltung_Mitnr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- select @sql = dbo.fnkt_get_beziehung_sql('Verwaltung_Mit','Funktionstelle',1,@keyvalue,'dbo.Verwaltung_Mit.Verwaltung_Mitnr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- select @sql = dbo.fnkt_get_beziehung_sql('Verwaltung_Mit','Server',4,@keyvalue,'dbo.Verwaltung_Mit.Verwaltung_Mitnr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- select @sql = dbo.fnkt_get_beziehung_sql('Verwaltung_Mit','Plattform',3,@keyvalue,'dbo.Verwaltung_Mit.Verwaltung_Mitnr') -- INSERT @tmp1 ( ID, Bezeichnung, Sequenz, Beschreibung, aktiv, erstellt_am, mutiert_am, mutierer, typ, mkey, Beziehungstyp ) -- EXEC (@sql) -- SELECT * -- FROM @tmp1 -- ORDER BY typ, Sequenz, Bezeichnung -- return END GO /****** Object: StoredProcedure [dbo].[sp_getSet_Dateneigentuemer] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_getSet_Dateneigentuemer] @objekt VARCHAR(255) , @objektnr INT , @objektnr2 INT , @objektnr3 INT , @fnkt INT , @mitarbeiternr INT AS DECLARE @rc INT BEGIN IF @objekt = 'Berechtigung' BEGIN IF @fnkt = 1 BEGIN SELECT dbo.Personal_Berechtigung.PersonalNr AS KeyValue , dbo.Personal.Bezeichnung , dbo.Personal_Berechtigung.BerechtigungNr FROM dbo.Personal INNER JOIN dbo.Personal_Berechtigung ON dbo.Personal.PersonalNr = dbo.Personal_Berechtigung.PersonalNr WHERE ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Personal_Berechtigung.Aktiv = 1 ) AND ( dbo.Personal_Berechtigung.BerechtigungNr = @objektnr ) END ELSE BEGIN SELECT @rc = COUNT(*) FROM dbo.Personal_Berechtigung WHERE BerechtigungNr = @objektnr AND PersonalNr = @objektnr3 AND aktiv = 1 IF @rc = 0 AND @objektnr2 > 0 BEGIN INSERT dbo.Personal_Berechtigung ( PersonalNr , BerechtigungNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @objektnr2 , @objektnr , '' , 0 , 1 , GETDATE() , GETDATE() , @mitarbeiternr , -31 -- Beziehungstypnr - int ) END ELSE BEGIN SELECT @rc = Personal_berechtigung.Personal_BerechtigungNr FROM dbo.Personal_Berechtigung WHERE BerechtigungNr = @objektnr AND PersonalNr = @objektnr3 AND Aktiv = 1 IF @objektnr2 = 0 BEGIN UPDATE dbo.Personal_Berechtigung SET Aktiv = 0 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Personal_BerechtigungNr = @rc END ELSE BEGIN UPDATE dbo.Personal_Berechtigung SET PersonalNr = @objektnr2 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Personal_BerechtigungNr = @rc END END END END IF @objekt = 'Plattform' BEGIN IF @fnkt = 1 BEGIN SELECT dbo.Personal_Plattform.PersonalNr AS KeyValue , dbo.Personal.Bezeichnung , dbo.Personal_Plattform.PlattformNr FROM dbo.Personal INNER JOIN dbo.Personal_Plattform ON dbo.Personal.PersonalNr = dbo.Personal_Plattform.PersonalNr WHERE ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Personal_Plattform.Aktiv = 1 ) AND ( dbo.Personal_Plattform.PlattformNr = @objektnr ) END ELSE BEGIN SELECT @rc = COUNT(*) FROM dbo.Personal_Plattform WHERE PlattformNr = @objektnr AND PersonalNr = @objektnr3 AND aktiv = 1 IF @rc = 0 AND @objektnr2 > 0 BEGIN INSERT dbo.Personal_Plattform ( PersonalNr , PlattformNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @objektnr2 , @objektnr , '' , 0 , 1 , GETDATE() , GETDATE() , @mitarbeiternr , -31 -- Beziehungstypnr - int ) END ELSE BEGIN SELECT @rc = Personal_Plattform.Personal_PlattformNr FROM dbo.Personal_Plattform WHERE PlattformNr = @objektnr AND PersonalNr = @objektnr3 AND Aktiv = 1 IF @objektnr2 = 0 BEGIN UPDATE dbo.Personal_Plattform SET Aktiv = 0 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Personal_PlattformNr = @rc END ELSE BEGIN UPDATE dbo.Personal_Plattform SET PersonalNr = @objektnr2 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Personal_PlattformNr = @rc END END END END IF @objekt = 'Server' BEGIN IF @fnkt = 1 BEGIN SELECT dbo.Personal_Server.PersonalNr AS KeyValue , dbo.Personal.Bezeichnung , dbo.Personal_Server.ServerNr FROM dbo.Personal INNER JOIN dbo.Personal_Server ON dbo.Personal.PersonalNr = dbo.Personal_Server.PersonalNr WHERE ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Personal_Server.Aktiv = 1 ) AND ( dbo.Personal_Server.ServerNr = @objektnr ) END ELSE BEGIN SELECT @rc = COUNT(*) FROM dbo.Personal_Server WHERE ServerNr = @objektnr AND PersonalNr = @objektnr3 AND aktiv = 1 IF @rc = 0 AND @objektnr2 > 0 BEGIN INSERT dbo.Personal_Server ( PersonalNr , ServerNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @objektnr2 , @objektnr , '' , 0 , 1 , GETDATE() , GETDATE() , @mitarbeiternr , -31 -- Beziehungstypnr - int ) END ELSE BEGIN IF @objektnr3 > 0 begin SELECT @rc = Personal_Server.Personal_ServerNr FROM dbo.Personal_Server WHERE ServerNr = @objektnr AND PersonalNr = @objektnr3 AND Aktiv = 1 IF @objektnr2 = 0 BEGIN UPDATE dbo.Personal_Server SET Aktiv = 0 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Personal_ServerNr = @rc END ELSE BEGIN UPDATE dbo.Personal_Server SET PersonalNr = @objektnr2 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Personal_ServerNr = @rc END end END END END END GO /****** Object: StoredProcedure [dbo].[sp_getSet_Verwaltung_durch] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_getSet_Verwaltung_durch] @objekt VARCHAR(255) , @objektnr INT , @objektnr2 INT , @objektnr3 INT , @fnkt INT , @mitarbeiternr INT AS DECLARE @rc INT BEGIN IF @objekt = 'Berechtigung' BEGIN IF @fnkt = 1 BEGIN SELECT dbo.Verwaltung_Durch_Berechtigung.Verwaltung_DurchNr AS KeyValue , dbo.Verwaltung_durch.Bezeichnung , dbo.Verwaltung_Durch_Berechtigung.BerechtigungNr FROM dbo.Verwaltung_durch INNER JOIN dbo.Verwaltung_Durch_Berechtigung ON dbo.Verwaltung_durch.Verwaltung_durchNr = dbo.Verwaltung_Durch_Berechtigung.Verwaltung_DurchNr WHERE ( dbo.Verwaltung_durch.Aktiv = 1 ) AND ( dbo.Verwaltung_Durch_Berechtigung.Aktiv = 1 ) AND ( dbo.Verwaltung_Durch_Berechtigung.BerechtigungNr = @objektnr ) END ELSE BEGIN SELECT @rc = COUNT(*) FROM dbo.Verwaltung_Durch_Berechtigung WHERE BerechtigungNr = @objektnr AND Verwaltung_DurchNr = @objektnr3 AND aktiv = 1 IF @rc = 0 AND @objektnr2 > 0 BEGIN INSERT dbo.Verwaltung_Durch_Berechtigung ( Verwaltung_DurchNr , BerechtigungNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @objektnr2 , @objektnr , '' , 0 , 1 , GETDATE() , GETDATE() , @mitarbeiternr , -26 -- Beziehungstypnr - int ) END ELSE BEGIN SELECT @rc = verwaltung_durch_berechtigung.Verwaltung_Durch_BerechtigungNr FROM dbo.Verwaltung_Durch_Berechtigung WHERE BerechtigungNr = @objektnr AND Verwaltung_DurchNr = @objektnr3 AND Aktiv = 1 IF @objektnr2 = 0 BEGIN UPDATE dbo.Verwaltung_Durch_Berechtigung SET Aktiv = 0 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Verwaltung_Durch_BerechtigungNr = @rc END ELSE BEGIN UPDATE dbo.Verwaltung_Durch_Berechtigung SET Verwaltung_DurchNr = @objektnr2 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Verwaltung_Durch_BerechtigungNr = @rc END END END END IF @objekt = 'Plattform' BEGIN IF @fnkt = 1 BEGIN SELECT dbo.Verwaltung_Durch_Plattform.Verwaltung_DurchNr AS KeyValue , dbo.Verwaltung_durch.Bezeichnung , dbo.Verwaltung_Durch_Plattform.PlattformNr FROM dbo.Verwaltung_durch INNER JOIN dbo.Verwaltung_Durch_Plattform ON dbo.Verwaltung_durch.Verwaltung_durchNr = dbo.Verwaltung_Durch_Plattform.Verwaltung_DurchNr WHERE ( dbo.Verwaltung_durch.Aktiv = 1 ) AND ( dbo.Verwaltung_Durch_Plattform.Aktiv = 1 ) AND ( dbo.Verwaltung_Durch_Plattform.PlattformNr = @objektnr ) END ELSE BEGIN SELECT @rc = COUNT(*) FROM dbo.Verwaltung_Durch_Plattform WHERE PlattformNr = @objektnr AND Verwaltung_DurchNr = @objektnr3 AND aktiv = 1 IF @rc = 0 AND @objektnr2 > 0 BEGIN INSERT dbo.Verwaltung_Durch_Plattform ( Verwaltung_DurchNr , PlattformNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @objektnr2 , @objektnr , '' , 0 , 1 , GETDATE() , GETDATE() , @mitarbeiternr , -26 -- Beziehungstypnr - int ) END ELSE BEGIN SELECT @rc = verwaltung_durch_Plattform.Verwaltung_Durch_PlattformNr FROM dbo.Verwaltung_Durch_Plattform WHERE PlattformNr = @objektnr AND Verwaltung_DurchNr = @objektnr3 AND Aktiv = 1 IF @objektnr2 = 0 BEGIN UPDATE dbo.Verwaltung_Durch_Plattform SET Aktiv = 0 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Verwaltung_Durch_PlattformNr = @rc END ELSE BEGIN UPDATE dbo.Verwaltung_Durch_Plattform SET Verwaltung_DurchNr = @objektnr2 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Verwaltung_Durch_PlattformNr = @rc END END END END IF @objekt = 'Server' BEGIN IF @fnkt = 1 BEGIN SELECT dbo.Verwaltung_Durch_Server.Verwaltung_DurchNr AS KeyValue , dbo.Verwaltung_durch.Bezeichnung , dbo.Verwaltung_Durch_Server.ServerNr FROM dbo.Verwaltung_durch INNER JOIN dbo.Verwaltung_Durch_Server ON dbo.Verwaltung_durch.Verwaltung_durchNr = dbo.Verwaltung_Durch_Server.Verwaltung_DurchNr WHERE ( dbo.Verwaltung_durch.Aktiv = 1 ) AND ( dbo.Verwaltung_Durch_Server.Aktiv = 1 ) AND ( dbo.Verwaltung_Durch_Server.ServerNr = @objektnr ) END ELSE BEGIN SELECT @rc = COUNT(*) FROM dbo.Verwaltung_Durch_Server WHERE ServerNr = @objektnr AND Verwaltung_DurchNr = @objektnr3 AND aktiv = 1 IF @rc = 0 AND @objektnr2 > 0 BEGIN INSERT dbo.Verwaltung_Durch_Server ( Verwaltung_DurchNr , ServerNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @objektnr2 , @objektnr , '' , 0 , 1 , GETDATE() , GETDATE() , @mitarbeiternr , -26 -- Beziehungstypnr - int ) END ELSE BEGIN SELECT @rc = verwaltung_durch_Server.Verwaltung_Durch_ServerNr FROM dbo.Verwaltung_Durch_Server WHERE ServerNr = @objektnr AND Verwaltung_DurchNr = @objektnr3 AND Aktiv = 1 IF @objektnr2 = 0 BEGIN UPDATE dbo.Verwaltung_Durch_Server SET Aktiv = 0 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Verwaltung_Durch_ServerNr = @rc END ELSE BEGIN UPDATE dbo.Verwaltung_Durch_Server SET Verwaltung_DurchNr = @objektnr2 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Verwaltung_Durch_ServerNr = @rc END END END END END GO /****** Object: StoredProcedure [dbo].[sp_getSet_Verwaltung_Mit] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_getSet_Verwaltung_Mit] @objekt VARCHAR(255) , @objektnr INT , @objektnr2 INT , @objektnr3 INT , @fnkt INT , @mitarbeiternr INT AS DECLARE @rc INT BEGIN IF @objekt = 'Berechtigung' BEGIN IF @fnkt = 1 BEGIN SELECT dbo.Verwaltung_Mit_Berechtigung.Verwaltung_MitNr AS KeyValue , dbo.Verwaltung_Mit.Bezeichnung , dbo.Verwaltung_Mit_Berechtigung.BerechtigungNr FROM dbo.Verwaltung_Mit INNER JOIN dbo.Verwaltung_Mit_Berechtigung ON dbo.Verwaltung_Mit.Verwaltung_MitNr = dbo.Verwaltung_Mit_Berechtigung.Verwaltung_MitNr WHERE ( dbo.Verwaltung_Mit.Aktiv = 1 ) AND ( dbo.Verwaltung_Mit_Berechtigung.Aktiv = 1 ) AND ( dbo.Verwaltung_Mit_Berechtigung.BerechtigungNr = @objektnr ) END ELSE BEGIN SELECT @rc = COUNT(*) FROM dbo.Verwaltung_Mit_Berechtigung WHERE BerechtigungNr = @objektnr AND Verwaltung_MitNr = @objektnr3 AND aktiv = 1 IF @rc = 0 AND @objektnr2 > 0 BEGIN INSERT dbo.Verwaltung_Mit_Berechtigung ( Verwaltung_MitNr , BerechtigungNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @objektnr2 , @objektnr , '' , 0 , 1 , GETDATE() , GETDATE() , @mitarbeiternr , -29 -- Beziehungstypnr - int ) END ELSE BEGIN SELECT @rc = verwaltung_Mit_berechtigung.Verwaltung_Mit_BerechtigungNr FROM dbo.Verwaltung_Mit_Berechtigung WHERE BerechtigungNr = @objektnr AND Verwaltung_MitNr = @objektnr3 AND aktiv = 1 IF @objektnr2 = 0 BEGIN UPDATE dbo.Verwaltung_Mit_Berechtigung SET Aktiv = 0 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Verwaltung_Mit_BerechtigungNr = @rc END ELSE BEGIN UPDATE dbo.Verwaltung_Mit_Berechtigung SET Verwaltung_MitNr = @objektnr2 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Verwaltung_Mit_BerechtigungNr = @rc END END END END IF @objekt = 'Plattform' BEGIN IF @fnkt = 1 BEGIN SELECT dbo.Verwaltung_Mit_Plattform.Verwaltung_MitNr AS KeyValue , dbo.Verwaltung_Mit.Bezeichnung , dbo.Verwaltung_Mit_Plattform.PlattformNr FROM dbo.Verwaltung_Mit INNER JOIN dbo.Verwaltung_Mit_Plattform ON dbo.Verwaltung_Mit.Verwaltung_MitNr = dbo.Verwaltung_Mit_Plattform.Verwaltung_MitNr WHERE ( dbo.Verwaltung_Mit.Aktiv = 1 ) AND ( dbo.Verwaltung_Mit_Plattform.Aktiv = 1 ) AND ( dbo.Verwaltung_Mit_Plattform.PlattformNr = @objektnr ) END ELSE BEGIN SELECT @rc = COUNT(*) FROM dbo.Verwaltung_Mit_Plattform WHERE PlattformNr = @objektnr AND Verwaltung_MitNr = @objektnr3 AND aktiv = 1 IF @rc = 0 AND @objektnr2 > 0 BEGIN INSERT dbo.Verwaltung_Mit_Plattform ( Verwaltung_MitNr , PlattformNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @objektnr2 , @objektnr , '' , 0 , 1 , GETDATE() , GETDATE() , @mitarbeiternr , -29 -- Beziehungstypnr - int ) END ELSE BEGIN SELECT @rc = verwaltung_Mit_Plattform.Verwaltung_Mit_PlattformNr FROM dbo.Verwaltung_Mit_Plattform WHERE PlattformNr = @objektnr AND Verwaltung_MitNr = @objektnr3 AND aktiv = 1 IF @objektnr2 = 0 BEGIN UPDATE dbo.Verwaltung_Mit_Plattform SET Aktiv = 0 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Verwaltung_Mit_PlattformNr = @rc END ELSE BEGIN UPDATE dbo.Verwaltung_Mit_Plattform SET Verwaltung_MitNr = @objektnr2 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Verwaltung_Mit_PlattformNr = @rc END END END END IF @objekt = 'Server' BEGIN IF @fnkt = 1 BEGIN SELECT dbo.Verwaltung_Mit_Server.Verwaltung_MitNr AS KeyValue , dbo.Verwaltung_Mit.Bezeichnung , dbo.Verwaltung_Mit_Server.ServerNr FROM dbo.Verwaltung_Mit INNER JOIN dbo.Verwaltung_Mit_Server ON dbo.Verwaltung_Mit.Verwaltung_MitNr = dbo.Verwaltung_Mit_Server.Verwaltung_MitNr WHERE ( dbo.Verwaltung_Mit.Aktiv = 1 ) AND ( dbo.Verwaltung_Mit_Server.Aktiv = 1 ) AND ( dbo.Verwaltung_Mit_Server.ServerNr = @objektnr ) END ELSE BEGIN SELECT @rc = COUNT(*) FROM dbo.Verwaltung_Mit_Server WHERE ServerNr = @objektnr AND Verwaltung_MitNr = @objektnr3 AND aktiv = 1 IF @rc = 0 AND @objektnr2 > 0 BEGIN INSERT dbo.Verwaltung_Mit_Server ( Verwaltung_MitNr , ServerNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @objektnr2 , @objektnr , '' , 0 , 1 , GETDATE() , GETDATE() , @mitarbeiternr , -29 -- Beziehungstypnr - int ) END ELSE BEGIN SELECT @rc = verwaltung_Mit_Server.Verwaltung_Mit_ServerNr FROM dbo.Verwaltung_Mit_Server WHERE ServerNr = @objektnr AND Verwaltung_MitNr = @objektnr3 AND aktiv = 1 IF @objektnr2 = 0 BEGIN UPDATE dbo.Verwaltung_Mit_Server SET Aktiv = 0 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Verwaltung_Mit_ServerNr = @rc END ELSE BEGIN UPDATE dbo.Verwaltung_Mit_Server SET Verwaltung_MitNr = @objektnr2 , Mutiert_am = GETDATE() , mutierer = @mitarbeiternr WHERE Verwaltung_Mit_ServerNr = @rc END END END END END GO /****** Object: StoredProcedure [dbo].[sp_getset_windowsize] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_getset_windowsize] @windowsnr INT, @mitarbeiternr INT, @fnkt INT, @width INT, @height int AS BEGIN IF @fnkt=1 BEGIN SELECT * FROM windowsize WHERE mitarbeiternr=@mitarbeiternr AND window=@windowsnr IF @@ROWCOUNT=0 BEGIN SELECT 0 AS width, 0 AS height END END ELSE BEGIN DELETE FROM windowsize WHERE mitarbeiternr=@mitarbeiternr AND window=@windowsnr INSERT INTO [dbo].[WindowSize] ([Mitarbeiternr] ,[window] ,[width] ,[height] ,[erstellt_am] ,[mutiert_am] ,[mutierer]) VALUES (@mitarbeiternr ,@windowsnr ,@width ,@height ,GETDATE() ,GETDATE() ,@mitarbeiternr) end END GO /****** Object: StoredProcedure [dbo].[sp_insert_journal] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROCEDURE [dbo].[sp_insert_journal] @DBObject VARCHAR(255), @Keyvalue VARCHAR(255), @bezeichnung VARCHAR(255), @beschreibung VARCHAR(1024), @mitarbeiternr INT AS BEGIN IF @bezeichnung='0 - 0' SET @bezeichnung='Neu' IF @beschreibung='Neuer Eintrag' AND @bezeichnung='' SET @bezeichnung='Neu' IF @keyvalue IS NULL return DECLARE @ma VARCHAR(255) SELECT @ma = tgnummer+': ' + name +' '+vorname FROM dbo.mitarbeiter WHERE mitarbeiternr=@mitarbeiternr INSERT INTO dbo.journal (dbobjekt, keyvalue,beschreibung,bezeichnung ,[Mutierer] ,[Erstellt_am]) VALUES (@dbobject,@keyvalue, @beschreibung, @bezeichnung, @ma, GETDATE()) END GO /****** Object: StoredProcedure [dbo].[sp_mitarbeiter_auswertungparamter_selectall] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= Create PROCEDURE [dbo].[sp_mitarbeiter_auswertungparamter_selectall] @mitarbeiternr int, @Auswertungnr int AS BEGIN SET NOCOUNT ON; select * from Mitarbeiter_Auswertungsparameter where mitarbeiternr=@mitarbeiternr and auswertungnr=@auswertungnr order by Beschreibung END GO /****** Object: StoredProcedure [dbo].[sp_rpt_beziehungstyp] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_rpt_beziehungstyp] @sqlwhere varchar(255) AS BEGIN SET NOCOUNT ON; select * from beziehungstyp where aktiv=1 END GO /****** Object: StoredProcedure [dbo].[sp_rpt_cid] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_rpt_cid] @sqlwhere varchar(255) AS BEGIN DECLARE @T1 TABLE ( tgnummer VARCHAR(255) , NAME VARCHAR(255) , TYP VARCHAR(255) , Bezeichnung VARCHAR(255) , Bezeichnung1 VARCHAR(255) , Bezeichnung2 VARCHAR(255) , Bezeichnung3 VARCHAR(255) , CID INT ) SET NOCOUNT ON; -- ============================================= -- Personal-Funktionstelle (direkt) -- ============================================= INSERT @T1 ( tgnummer , NAME , TYP , Bezeichnung , Bezeichnung1 , Bezeichnung2 , Bezeichnung3 , CID ) SELECT dbo.Personal.TGNummer , dbo.Personal.Name , 'Funktionstelle' , '' , '' , '' , '' , funktionstelle.cid FROM dbo.Personal INNER JOIN dbo.Personal_FunktionStelle ON dbo.Personal.Personalnr = dbo.Personal_FunktionStelle.PersonalNr INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr WHERE dbo.Funktionstelle.CID = 1 AND dbo.personal.aktiv = 1 AND dbo.Personal_FunktionStelle.Aktiv = 1 AND dbo.Funktionstelle.Aktiv = 1 -- ============================================= -- Personal-Server -- ============================================= INSERT @T1 ( tgnummer , NAME , TYP , Bezeichnung , Bezeichnung1 , Bezeichnung2 , Bezeichnung3 , CID ) SELECT dbo.Personal.TGNummer , dbo.Personal.Name , 'Server' AS Type , dbo.Server.Bezeichnung , '' , '' , '' , dbo.Server.cid FROM dbo.Personal INNER JOIN dbo.Personal_Server ON dbo.Personal.Personalnr = dbo.Personal_Server.PersonalNr INNER JOIN dbo.Server ON dbo.Personal_Server.ServerNr = dbo.Server.ServerNr WHERE ( dbo.Personal_Server.Aktiv = 1 ) AND ( dbo.Server.Aktiv = 1 ) AND ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Server.CID = 1 ) -- ============================================= -- Personal-Plattform -- ============================================= INSERT @T1 ( tgnummer , NAME , TYP , Bezeichnung , Bezeichnung1 , Bezeichnung2 , bezeichnung3 , CID ) SELECT dbo.Personal.TGNummer , dbo.Personal.Name , 'Plattform' AS Type , dbo.Plattform.Bezeichnung , '' , '' , '' , dbo.Plattform.cid FROM dbo.Personal INNER JOIN dbo.Personal_Plattform ON dbo.Personal.Personalnr = dbo.Personal_Plattform.PersonalNr INNER JOIN dbo.Plattform ON dbo.Personal_Plattform.PlattformNr = dbo.Plattform.PlattformNr WHERE ( dbo.Personal_Plattform.Aktiv = 1 ) AND ( dbo.Plattform.Aktiv = 1 ) AND ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Plattform.CID = 1 ) -- ============================================= -- Personal-Berechtigung-Funktionstelle -- ============================================= INSERT @T1 ( tgnummer , NAME , TYP , Bezeichnung , Bezeichnung1 , Bezeichnung2 , bezeichnung3 , CID ) SELECT dbo.Personal.TGNummer , dbo.Personal.Name , 'Berechtigung' AS Type , dbo.Funktionstelle.Funktionsstelle , dbo.Funktionstelle.Bezeichnung , dbo.Berechtigung.Bezeichnung , '' , dbo.berechtigung.cid FROM dbo.Personal INNER JOIN dbo.Personal_FunktionStelle ON dbo.Personal.Personalnr = dbo.Personal_FunktionStelle.PersonalNr INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr INNER JOIN dbo.Funktionstelle_Berechtigung ON dbo.Funktionstelle.FunktionstelleNr = dbo.Funktionstelle_Berechtigung.FunktionstelleNr INNER JOIN dbo.Berechtigung ON dbo.Funktionstelle_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr WHERE ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Berechtigung.CID = 1 ) AND ( dbo.Personal_FunktionStelle.Aktiv = 1 ) AND ( dbo.Funktionstelle.Aktiv = 1 ) AND ( dbo.Funktionstelle_Berechtigung.Aktiv = 1 ) AND ( dbo.Berechtigung.Aktiv = 1 ) -- ============================================= -- Personal-Berechtigung-Plattfrom -- ============================================= INSERT @T1 ( tgnummer , NAME , TYP , Bezeichnung , Bezeichnung1 , Bezeichnung2 , bezeichnung3 , CID ) SELECT dbo.Personal.TGNummer , dbo.Personal.Name , 'Berechtigung-Plattform' AS Type , dbo.Funktionstelle.Funktionsstelle , dbo.Funktionstelle.Bezeichnung , dbo.Berechtigung.Bezeichnung AS Expr1 , dbo.Plattform.Bezeichnung AS Expr3 , dbo.Plattform.CID AS Expr2 FROM dbo.Personal INNER JOIN dbo.Personal_FunktionStelle ON dbo.Personal.Personalnr = dbo.Personal_FunktionStelle.PersonalNr INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr INNER JOIN dbo.Funktionstelle_Berechtigung ON dbo.Funktionstelle.FunktionstelleNr = dbo.Funktionstelle_Berechtigung.FunktionstelleNr INNER JOIN dbo.Berechtigung ON dbo.Funktionstelle_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr INNER JOIN dbo.Berechtigung_Plattform ON dbo.Berechtigung.BerechtigungNr = dbo.Berechtigung_Plattform.BerechtigungNr INNER JOIN dbo.Plattform ON dbo.Berechtigung_Plattform.PlattformNr = dbo.Plattform.PlattformNr WHERE ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Personal_FunktionStelle.Aktiv = 1 ) AND ( dbo.Funktionstelle.Aktiv = 1 ) AND ( dbo.Funktionstelle_Berechtigung.Aktiv = 1 ) AND ( dbo.Berechtigung.Aktiv = 1 ) AND ( dbo.Berechtigung_Plattform.Aktiv = 1 ) AND ( dbo.Plattform.Aktiv = 1 ) AND ( dbo.Plattform.CID = 1 ) -- ============================================= -- Personal-Berechtigung-Server -- ============================================= INSERT @T1 ( tgnummer , NAME , TYP , Bezeichnung , Bezeichnung1 , Bezeichnung2 , bezeichnung3 , CID ) SELECT dbo.Personal.TGNummer , dbo.Personal.Name , 'Berechtigung-Server' AS Type , dbo.Funktionstelle.Funktionsstelle , dbo.Funktionstelle.Bezeichnung , dbo.Berechtigung.Bezeichnung AS Expr1 , dbo.Server.Bezeichnung AS Expr3 , dbo.Server.CID AS Expr2 FROM dbo.Personal INNER JOIN dbo.Personal_FunktionStelle ON dbo.Personal.Personalnr = dbo.Personal_FunktionStelle.PersonalNr INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr INNER JOIN dbo.Funktionstelle_Berechtigung ON dbo.Funktionstelle.FunktionstelleNr = dbo.Funktionstelle_Berechtigung.FunktionstelleNr INNER JOIN dbo.Berechtigung ON dbo.Funktionstelle_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr INNER JOIN dbo.Berechtigung_Server ON dbo.Berechtigung.BerechtigungNr = dbo.Berechtigung_Server.BerechtigungNr INNER JOIN dbo.Server ON dbo.Berechtigung_Server.ServerNr = dbo.Server.ServerNr WHERE ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Personal_FunktionStelle.Aktiv = 1 ) AND ( dbo.Funktionstelle.Aktiv = 1 ) AND ( dbo.Funktionstelle_Berechtigung.Aktiv = 1 ) AND ( dbo.Berechtigung.Aktiv = 1 ) AND ( dbo.Berechtigung_Server.Aktiv = 1 ) AND ( dbo.Server.Aktiv = 1 ) AND ( dbo.Server.CID = 1 ) SELECT DISTINCT tgnummer , NAME FROM @t1 ORDER BY tgnummer END GO /****** Object: StoredProcedure [dbo].[sp_rpt_cid_detail] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_rpt_cid_detail] @sqlwhere varchar(255) AS BEGIN DECLARE @T1 TABLE ( tgnummer VARCHAR(255) , NAME VARCHAR(255) , TYP VARCHAR(255) , Bezeichnung VARCHAR(255) , Bezeichnung1 VARCHAR(255) , Bezeichnung2 VARCHAR(255) , Bezeichnung3 VARCHAR(255) , CID INT ) SET NOCOUNT ON; -- ============================================= -- Personal-Funktionstelle (direkt) -- ============================================= INSERT @T1 ( tgnummer , NAME , TYP , Bezeichnung , Bezeichnung1 , Bezeichnung2 , Bezeichnung3 , CID ) SELECT dbo.Personal.TGNummer , dbo.Personal.Name , 'Funktionstelle' , '' , '' , '' , '' , funktionstelle.cid FROM dbo.Personal INNER JOIN dbo.Personal_FunktionStelle ON dbo.Personal.Personalnr = dbo.Personal_FunktionStelle.PersonalNr INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr WHERE dbo.Funktionstelle.CID = 1 AND dbo.personal.aktiv = 1 AND dbo.Personal_FunktionStelle.Aktiv = 1 AND dbo.Funktionstelle.Aktiv = 1 -- ============================================= -- Personal-Server -- ============================================= INSERT @T1 ( tgnummer , NAME , TYP , Bezeichnung , Bezeichnung1 , Bezeichnung2 , Bezeichnung3 , CID ) SELECT dbo.Personal.TGNummer , dbo.Personal.Name , 'Server' AS Type , dbo.Server.Bezeichnung , '' , '' , '' , dbo.Server.cid FROM dbo.Personal INNER JOIN dbo.Personal_Server ON dbo.Personal.Personalnr = dbo.Personal_Server.PersonalNr INNER JOIN dbo.Server ON dbo.Personal_Server.ServerNr = dbo.Server.ServerNr WHERE ( dbo.Personal_Server.Aktiv = 1 ) AND ( dbo.Server.Aktiv = 1 ) AND ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Server.CID = 1 ) -- ============================================= -- Personal-Plattform -- ============================================= INSERT @T1 ( tgnummer , NAME , TYP , Bezeichnung , Bezeichnung1 , Bezeichnung2 , bezeichnung3 , CID ) SELECT dbo.Personal.TGNummer , dbo.Personal.Name , 'Plattform' AS Type , dbo.Plattform.Bezeichnung , '' , '' , '' , dbo.Plattform.cid FROM dbo.Personal INNER JOIN dbo.Personal_Plattform ON dbo.Personal.Personalnr = dbo.Personal_Plattform.PersonalNr INNER JOIN dbo.Plattform ON dbo.Personal_Plattform.PlattformNr = dbo.Plattform.PlattformNr WHERE ( dbo.Personal_Plattform.Aktiv = 1 ) AND ( dbo.Plattform.Aktiv = 1 ) AND ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Plattform.CID = 1 ) -- ============================================= -- Personal-Berechtigung-Funktionstelle -- ============================================= INSERT @T1 ( tgnummer , NAME , TYP , Bezeichnung , Bezeichnung1 , Bezeichnung2 , bezeichnung3 , CID ) SELECT dbo.Personal.TGNummer , dbo.Personal.Name , 'Berechtigung' AS Type , dbo.Funktionstelle.Funktionsstelle , dbo.Funktionstelle.Bezeichnung , dbo.Berechtigung.Bezeichnung , '' , dbo.berechtigung.cid FROM dbo.Personal INNER JOIN dbo.Personal_FunktionStelle ON dbo.Personal.Personalnr = dbo.Personal_FunktionStelle.PersonalNr INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr INNER JOIN dbo.Funktionstelle_Berechtigung ON dbo.Funktionstelle.FunktionstelleNr = dbo.Funktionstelle_Berechtigung.FunktionstelleNr INNER JOIN dbo.Berechtigung ON dbo.Funktionstelle_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr WHERE ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Berechtigung.CID = 1 ) AND ( dbo.Personal_FunktionStelle.Aktiv = 1 ) AND ( dbo.Funktionstelle.Aktiv = 1 ) AND ( dbo.Funktionstelle_Berechtigung.Aktiv = 1 ) AND ( dbo.Berechtigung.Aktiv = 1 ) -- ============================================= -- Personal-Berechtigung-Plattfrom -- ============================================= INSERT @T1 ( tgnummer , NAME , TYP , Bezeichnung , Bezeichnung1 , Bezeichnung2 , bezeichnung3 , CID ) SELECT dbo.Personal.TGNummer , dbo.Personal.Name , 'Berechtigung-Plattform' AS Type , dbo.Funktionstelle.Funktionsstelle , dbo.Funktionstelle.Bezeichnung , dbo.Berechtigung.Bezeichnung AS Expr1 , dbo.Plattform.Bezeichnung AS Expr3 , dbo.Plattform.CID AS Expr2 FROM dbo.Personal INNER JOIN dbo.Personal_FunktionStelle ON dbo.Personal.Personalnr = dbo.Personal_FunktionStelle.PersonalNr INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr INNER JOIN dbo.Funktionstelle_Berechtigung ON dbo.Funktionstelle.FunktionstelleNr = dbo.Funktionstelle_Berechtigung.FunktionstelleNr INNER JOIN dbo.Berechtigung ON dbo.Funktionstelle_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr INNER JOIN dbo.Berechtigung_Plattform ON dbo.Berechtigung.BerechtigungNr = dbo.Berechtigung_Plattform.BerechtigungNr INNER JOIN dbo.Plattform ON dbo.Berechtigung_Plattform.PlattformNr = dbo.Plattform.PlattformNr WHERE ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Personal_FunktionStelle.Aktiv = 1 ) AND ( dbo.Funktionstelle.Aktiv = 1 ) AND ( dbo.Funktionstelle_Berechtigung.Aktiv = 1 ) AND ( dbo.Berechtigung.Aktiv = 1 ) AND ( dbo.Berechtigung_Plattform.Aktiv = 1 ) AND ( dbo.Plattform.Aktiv = 1 ) AND ( dbo.Plattform.CID = 1 ) -- ============================================= -- Personal-Berechtigung-Server -- ============================================= INSERT @T1 ( tgnummer , NAME , TYP , Bezeichnung , Bezeichnung1 , Bezeichnung2 , bezeichnung3 , CID ) SELECT dbo.Personal.TGNummer , dbo.Personal.Name , 'Berechtigung-Server' AS Type , dbo.Funktionstelle.Funktionsstelle , dbo.Funktionstelle.Bezeichnung , dbo.Berechtigung.Bezeichnung AS Expr1 , dbo.Server.Bezeichnung AS Expr3 , dbo.Server.CID AS Expr2 FROM dbo.Personal INNER JOIN dbo.Personal_FunktionStelle ON dbo.Personal.Personalnr = dbo.Personal_FunktionStelle.PersonalNr INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr INNER JOIN dbo.Funktionstelle_Berechtigung ON dbo.Funktionstelle.FunktionstelleNr = dbo.Funktionstelle_Berechtigung.FunktionstelleNr INNER JOIN dbo.Berechtigung ON dbo.Funktionstelle_Berechtigung.BerechtigungNr = dbo.Berechtigung.BerechtigungNr INNER JOIN dbo.Berechtigung_Server ON dbo.Berechtigung.BerechtigungNr = dbo.Berechtigung_Server.BerechtigungNr INNER JOIN dbo.Server ON dbo.Berechtigung_Server.ServerNr = dbo.Server.ServerNr WHERE ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Personal_FunktionStelle.Aktiv = 1 ) AND ( dbo.Funktionstelle.Aktiv = 1 ) AND ( dbo.Funktionstelle_Berechtigung.Aktiv = 1 ) AND ( dbo.Berechtigung.Aktiv = 1 ) AND ( dbo.Berechtigung_Server.Aktiv = 1 ) AND ( dbo.Server.Aktiv = 1 ) AND ( dbo.Server.CID = 1 ) -- ============================================= -- Personal-Funktionstelle-Plattform -- ============================================= INSERT @T1 ( tgnummer , NAME , TYP , Bezeichnung , Bezeichnung1 , Bezeichnung2 , bezeichnung3 , CID) SELECT dbo.Personal.TGNummer, dbo.Personal.Name, 'Funktionstelle-Plattform' AS Type, dbo.Funktionstelle.Funktionsstelle, dbo.Funktionstelle.Bezeichnung, '' AS Expr1, dbo.Plattform.Bezeichnung AS Expr3, dbo.Plattform.cid AS Expr2 FROM dbo.FunktionStelle_Plattform INNER JOIN dbo.Personal INNER JOIN dbo.Personal_FunktionStelle ON dbo.Personal.Personalnr = dbo.Personal_FunktionStelle.PersonalNr INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr ON dbo.FunktionStelle_Plattform.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr INNER JOIN dbo.Plattform ON dbo.FunktionStelle_Plattform.PlattformNr = dbo.Plattform.PlattformNr WHERE (dbo.Personal.Aktiv = 1) AND (dbo.Personal_FunktionStelle.Aktiv = 1) AND (dbo.Funktionstelle.Aktiv = 1) AND (dbo.Plattform.Aktiv = 1) AND (dbo.Plattform.cid = 1) SELECT DISTINCT tgnummer , NAME , TYP , Bezeichnung , Bezeichnung1 , Bezeichnung2 , bezeichnung3 FROM @t1 ORDER BY tgnummer , bezeichnung , bezeichnung1 END GO /****** Object: StoredProcedure [dbo].[sp_rpt_funktionsstellen] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_rpt_funktionsstellen] @sqlwhere VARCHAR(255) AS BEGIN SET NOCOUNT ON; SELECT TOP (100) PERCENT cast(Funktionsstelle as numeric(17,0)) as Funktionsstelle, Bezeichnung, Aktiv FROM dbo.Funktionstelle WHERE (Aktiv = 1) AND (Funktionsstelle <> '') ORDER BY Funktionsstelle END GO /****** Object: StoredProcedure [dbo].[sp_rpt_funktionsstellen_detail] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROCEDURE [dbo].[sp_rpt_funktionsstellen_detail] @sqlwhere VARCHAR(255) AS BEGIN SET nocount ON DECLARE @tmp1 TABLE ( funktionstellenr INT , funktionstelle VARCHAR(255) , bezeichnung VARCHAR(255) , beschreibung VARCHAR(255) , typ VARCHAR(255) , Bez_Bezeichnung VARCHAR(255) , verwaltung_durch VARCHAR(255) , verwaltung_mit VARCHAR(255) , dateneigentuemer VARCHAR(255) , sequenz VARCHAR(255) , Bezbeschreibung VARCHAR(255) , Beschreibung2 VARCHAR(255) ) 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 ( ID INT , Bezeichnung VARCHAR(255) , Beschreibung VARCHAR(255) , Sequenz INT , aktiv BIT , erstellt_am DATETIME , mutiert_am DATETIME , mutierer INT , typ VARCHAR(255) , MKey INT , Beziehungstyp VARCHAR(255) ) DECLARE @keyvalue INT DECLARE @fnktstelle VARCHAR(255) DECLARE @bezeichnung VARCHAR(255) DECLARE @beschreibung VARCHAR(255) DECLARE @t2bez VARCHAR(255) , @t2besch VARCHAR(255) , @t2seq VARCHAR(255) , @t2typ VARCHAR(255) , @t2beztyp VARCHAR(255) DECLARE @vmit VARCHAR(255) , @vdurch VARCHAR(255) , @eigentuemer VARCHAR(255) DECLARE xc CURSOR FOR SELECT funktionstellenr , funktionsstelle , bezeichnung , beschreibung FROM dbo.funktionstelle WHERE --funktionsstelle ='11584210' and ( Aktiv = 1 ) AND ( Funktionsstelle <> '' ) ORDER BY funktionsstelle -- and funktionstellenr=753 OPEN xc FETCH NEXT FROM xc INTO @keyvalue, @fnktstelle, @bezeichnung, @beschreibung WHILE @@FETCH_STATUS = 0 BEGIN DELETE FROM @t1 DELETE FROM @t2 INSERT @t1 SELECT * FROM dbo.fnkt_get_Report_Data(@keyvalue) INSERT @t2 SELECT ID , Bezeichnung , Beschreibung , Sequenz , aktiv , erstellt_am , mutiert_am , mutierer , typ , MKey , Beziehungstyp FROM fnkt_funktionstelle_beziehung(@keyvalue) DECLARE xx CURSOR FOR SELECT bezeichnung , beschreibung , sequenz , typ , beziehungstyp FROM @t2 OPEN xx FETCH NEXT FROM xx INTO @t2bez, @t2besch, @t2seq, @t2typ, @t2beztyp SELECT @vmit = ISNULL(verwaltungmit, '') , @vdurch = ISNULL(verwaltungdurch, '') , @eigentuemer = ISNULL(eigentuemer, '') FROM @t1 WHERE berechtigungfuer = @t2bez WHILE @@FETCH_STATUS = 0 BEGIN IF @keyvalue = 753 PRINT 'hallo' INSERT @tmp1 ( funktionstellenr , funktionstelle , bezeichnung , beschreibung , typ , Bez_Bezeichnung , verwaltung_durch , verwaltung_mit , dateneigentuemer , sequenz , Bezbeschreibung , beschreibung2 ) VALUES ( @keyvalue , @fnktstelle , @bezeichnung , @beschreibung , @t2typ , @t2bez , @vdurch , @vmit , @eigentuemer , @t2seq , @t2beztyp , @t2besch ) FETCH NEXT FROM xx INTO @t2bez, @t2besch, @t2seq, @t2typ, @t2beztyp END CLOSE xx DEALLOCATE xx FETCH NEXT FROM xc INTO @keyvalue, @fnktstelle, @bezeichnung, @beschreibung END CLOSE xc DEALLOCATE xc UPDATE @tmp1 SET dateneigentuemer='', Verwaltung_durch ='', Verwaltung_mit = '' DECLARE @bez VARCHAR(255) DECLARE @typ VARCHAR(255) DECLARE @k INT DECLARE @b1 VARCHAR(255) DECLARE xc CURSOR FOR SELECT DISTINCT bez_bezeichnung, typ FROM @tmp1 WHERE typ='Berechtigung' OR typ='Plattform' OR typ='Server' OPEN xc FETCH NEXT FROM xc INTO @bez, @typ WHILE @@FETCH_STATUS=0 BEGIN IF @typ='Berechtigung' BEGIN SELECT @k=berechtigungnr FROM berechtigung WHERE bezeichnung=@bez SELECT @b1=ISNULL(dbo.Verwaltung_durch.Bezeichnung,'') FROM dbo.Verwaltung_durch INNER JOIN dbo.Verwaltung_Durch_Berechtigung ON dbo.Verwaltung_durch.Verwaltung_durchNr = dbo.Verwaltung_Durch_Berechtigung.Verwaltung_DurchNr WHERE ( dbo.Verwaltung_durch.Aktiv = 1 ) AND ( dbo.Verwaltung_Durch_Berechtigung.Aktiv = 1 ) AND ( dbo.Verwaltung_Durch_Berechtigung.BerechtigungNr = @k ) UPDATE @tmp1 SET Verwaltung_durch = @b1 WHERE bez_bezeichnung=@bez SET @b1='' SELECT @b1=ISNULL(dbo.verwaltung_mit.Bezeichnung,'') FROM dbo.verwaltung_mit INNER JOIN dbo.verwaltung_mit_Berechtigung ON dbo.verwaltung_mit.verwaltung_mitNr = dbo.verwaltung_mit_Berechtigung.verwaltung_mitNr WHERE ( dbo.verwaltung_mit.Aktiv = 1 ) AND ( dbo.verwaltung_mit_Berechtigung.Aktiv = 1 ) AND ( dbo.verwaltung_mit_Berechtigung.BerechtigungNr = @k ) UPDATE @tmp1 SET verwaltung_mit = @b1 WHERE bez_bezeichnung=@bez SET @b1='' SELECT @b1=ISNULL(dbo.Personal.tgnummer+' '+dbo.personal.name,'') FROM dbo.Personal INNER JOIN dbo.Personal_Berechtigung ON dbo.Personal.PersonalNr = dbo.Personal_Berechtigung.PersonalNr WHERE ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Personal_Berechtigung.Aktiv = 1 ) AND dbo.Personal_Berechtigung.BerechtigungNr = @k AND (dbo.Personal_Berechtigung.Beziehungstypnr=-30 or dbo.Personal_Berechtigung.Beziehungstypnr=-31 ) UPDATE @tmp1 SET dateneigentuemer = @b1 WHERE bez_bezeichnung=@bez SET @b1='' END IF @typ='Plattform' begin SELECT @k=plattformnr FROM plattform WHERE bezeichnung=@bez SELECT @b1=ISNULL(dbo.Verwaltung_durch.Bezeichnung,'') FROM dbo.Verwaltung_durch INNER JOIN dbo.Verwaltung_Durch_Plattform ON dbo.Verwaltung_durch.Verwaltung_durchNr = dbo.Verwaltung_Durch_Plattform.Verwaltung_DurchNr WHERE ( dbo.Verwaltung_durch.Aktiv = 1 ) AND ( dbo.Verwaltung_Durch_Plattform.Aktiv = 1 ) AND ( dbo.Verwaltung_Durch_Plattform.PlattformNr = @k) UPDATE @tmp1 SET Verwaltung_durch = @b1 WHERE bez_bezeichnung=@bez SET @b1='' SELECT @b1=ISNULL(dbo.verwaltung_mit.Bezeichnung,'') FROM dbo.verwaltung_mit INNER JOIN dbo.verwaltung_mit_Plattform ON dbo.verwaltung_mit.verwaltung_mitNr = dbo.verwaltung_mit_Plattform.verwaltung_mitNr WHERE ( dbo.verwaltung_mit.Aktiv = 1 ) AND ( dbo.verwaltung_mit_Plattform.Aktiv = 1 ) AND ( dbo.verwaltung_mit_Plattform.PlattformNr = @k) UPDATE @tmp1 SET Verwaltung_mit = @b1 WHERE bez_bezeichnung=@bez SET @b1='' SELECT @b1=ISNULL(dbo.Personal.tgnummer+' '+dbo.personal.name,'') FROM dbo.Personal INNER JOIN dbo.Personal_Plattform ON dbo.Personal.PersonalNr = dbo.Personal_Plattform.PersonalNr WHERE ( dbo.Personal.Aktiv = 1 ) AND ( dbo.Personal_Plattform.Aktiv = 1 ) AND ( dbo.Personal_Plattform.PlattformNr = @k ) UPDATE @tmp1 SET dateneigentuemer = @b1 WHERE bez_bezeichnung=@bez SET @b1='' end FETCH NEXT FROM xc INTO @bez, @typ END CLOSE xc DEALLOCATE xc SELECT CAST(funktionstelle AS NUMERIC(17, 0)) AS Funktionsnummer , Bezeichnung , Beschreibung , Typ , Bez_Bezeichnung , Verwaltung_durch , Verwaltung_mit , Dateneigentuemer , Bezbeschreibung AS Beziehungstyp , Sequenz , Beschreibung2 AS Beziehungsbeschreibung FROM @tmp1 ORDER BY funktionstelle END GO /****** Object: StoredProcedure [dbo].[sp_rpt_funktionstelle] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_rpt_funktionstelle] @sqlwhere VARCHAR(255) AS BEGIN DECLARE @fstelle VARCHAR(255) DECLARE @fnr INT DECLARE @fbezeichnung VARCHAR(255) DECLARE @fnummer VARCHAR(255) DECLARE @parent INT DECLARE @tmp1 TABLE ( ID INT , Bezeichnung VARCHAR(255) , Beschreibung VARCHAR(255) , Sequenz INT , aktiv BIT , erstellt_am DATETIME , mutiert_am DATETIME , mutierer INT , typ VARCHAR(255) , MKey INT, Berechtigungstyp VARCHAR(255) ) 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 @sql VARCHAR(4096) SET @sql = 'SELECT FunktionstelleNr, bezeichnung, funktionsstelle, Funktionsstelle, ParentID' SET @sql = @sql + ' FROM Funktionstelle where aktiv=1' IF @sqlwhere <> '' SET @sql = @sql + ' and ' + @sqlwhere DECLARE @tmp TABLE ( fnr INT , fbezeichnung VARCHAR(255) , fstelle VARCHAR(255) , fnummer VARCHAR(255) , parent INT ) INSERT @tmp EXEC ( @sql ) SELECT TOP 1 @fnr = fnr, @fbezeichnung = fbezeichnung, @fstelle = fstelle, @fnummer = fnummer, @parent = parent FROM @tmp SELECT DISTINCT cast(Funktionsnummer as numeric(17,0)) as Funktionsnummer, funktionsbezeichnung , plattform , verwaltungmit , verwaltungdurch, berechtigungIn , berechtigungfuer , eigentuemer FROM dbo.fnkt_get_Report_Data(@fnr) ORDER BY plattform, verwaltungmit, berechtigungin, berechtigungfuer END GO /****** Object: StoredProcedure [dbo].[sp_rpt_funktionstelle_Vergleich] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_rpt_funktionstelle_Vergleich] @sqlwhere VARCHAR(1024) AS BEGIN --SELECT * INTO #tmp1 FROM dbo.fnkt_split(@sqlwhere,'or',2) 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 @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 @tfnr TABLE ( fnnr INT ) DECLARE @i INT DECLARE @sql VARCHAR(1024) SET @sql = 'select funktionstellenr from funktionstelle where ' + @sqlwhere PRINT @sql INSERT @tfnr EXEC ( @sql ) DECLARE @item VARCHAR(1024) DECLARE @res INT SET @i = 0 DECLARE xc CURSOR FOR SELECT * FROM @tfnr OPEN xc FETCH NEXT FROM xc INTO @item WHILE @@FETCH_STATUS = 0 BEGIN IF @i = 0 INSERT @t1 SELECT DISTINCT * FROM dbo.fnkt_get_Report_Data(@item) IF @i = 1 INSERT @t2 SELECT DISTINCT * FROM dbo.fnkt_get_Report_Data(@item) SET @i = @i + 1 -- SET @sql = 'select funktionstellnr from funktionstelle where '+@item -- SELECT @res=EXEC @sql FETCH NEXT FROM xc INTO @item END CLOSE xc DEALLOCATE xc --SELECT * FROM @t1 --SELECT * FROM @t2 SELECT plattform , verwaltungmit , verwaltungdurch , berechtigungIn , berechtigungfuer , eigentuemer INTO #tmp1 FROM @t1 EXCEPT SELECT plattform , verwaltungmit , verwaltungdurch , berechtigungIn , berechtigungfuer , eigentuemer FROM @t2 SELECT plattform , verwaltungmit , verwaltungdurch , berechtigungIn , berechtigungfuer , eigentuemer 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 @fnr 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 , @Funktionsnummer1 VARCHAR(255) , @Funktionsbezeichnung1 VARCHAR(255) , @Plattform1 VARCHAR(255) , @Verwaltungmit1 VARCHAR(255) , @Verwaltungdurch1 VARCHAR(255) , @BerechtigungIn1 VARCHAR(255) , @Berechtigungfuer1 VARCHAR(255) , @Eigentuemer1 VARCHAR(255) SET @zeile = 1 SELECT @fnr = funktionsnummer FROM @t2 SELECT @fbe = funktionsbezeichnung FROM @t2 DECLARE xc CURSOR FOR SELECT * FROM #tmp1 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 #tmp2 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 Zeile , cast(Funktionsnummer1 as numeric(17,0)) as Funktionsnummer1 , Funktionsbezeichnung1 , Plattform1 , Verwaltungmit1 , Verwaltungdurch1 , BerechtigungIn1 , Berechtigungfuer1 , Eigentuemer1 , cast(Funktionsnummer2 as numeric(17,0)) as Funktionsnummer2 , Funktionsbezeichnung2 , Plattform2 , Verwaltungmit2 , Verwaltungdurch2 , BerechtigungIn2 , Berechtigungfuer2 , Eigentuemer2 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 #tmp1 DROP TABLE #tmp2 --DECLARE xc END GO /****** Object: StoredProcedure [dbo].[sp_rpt_funktionstelle_Vergleich_vollstaendig] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_rpt_funktionstelle_Vergleich_vollstaendig] @sqlwhere VARCHAR(1024) AS BEGIN --SELECT * INTO #tmp1 FROM dbo.fnkt_split(@sqlwhere,'or',2) 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 @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) ) DECLARE @tfnr TABLE ( fnnr INT ) DECLARE @i INT DECLARE @sql VARCHAR(1024) SET @sql = 'select funktionstellenr from funktionstelle where ' + @sqlwhere INSERT @tfnr EXEC ( @sql ) DECLARE @item VARCHAR(1024) DECLARE @res INT SET @i = 0 DECLARE xc CURSOR FOR SELECT * FROM @tfnr OPEN xc FETCH NEXT FROM xc INTO @item WHILE @@FETCH_STATUS = 0 BEGIN IF @i = 0 INSERT @t1 SELECT DISTINCT * FROM dbo.fnkt_get_Report_Data(@item) IF @i = 1 INSERT @t2 SELECT DISTINCT * FROM dbo.fnkt_get_Report_Data(@item) SET @i = @i + 1 -- SET @sql = 'select funktionstellnr from funktionstelle where '+@item -- SELECT @res=EXEC @sql FETCH NEXT FROM xc INTO @item END CLOSE xc DEALLOCATE xc --SELECT * FROM @t1 --SELECT * FROM @t2 SELECT plattform , verwaltungmit , verwaltungdurch , berechtigungIn , berechtigungfuer , eigentuemer INTO #tmp1 FROM @t1 --EXCEPT --SELECT plattform , -- verwaltungmit , -- verwaltungdurch , -- berechtigungIn , -- berechtigungfuer , -- eigentuemer --FROM @t2 SELECT plattform , verwaltungmit , verwaltungdurch , berechtigungIn , berechtigungfuer , eigentuemer 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 @fnr 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) SET @zeile = 10 SELECT @fnr = funktionsnummer FROM @t2 SELECT @fbe = funktionsbezeichnung FROM @t2 DECLARE xc CURSOR FOR SELECT * FROM #tmp1 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 + 10 FETCH NEXT FROM xc INTO @plattform1, @verwaltungmit1, @verwaltungdurch1, @berechtigungin1, @berechtigungfuer1, @eigentuemer1, @funktionsnummer1, @funktionsbezeichnung1 END CLOSE xc DEALLOCATE xc 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, @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, @funktionsnummer1, @funktionsbezeichnung1 END CLOSE xc DEALLOCATE xc SELECT * FROM @t3 DROP TABLE #tmp1 DROP TABLE #tmp2 END GO /****** Object: StoredProcedure [dbo].[sp_rpt_get_auswertungparameter] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= create PROCEDURE [dbo].[sp_rpt_get_auswertungparameter] @auswertungnr int as BEGIN SET NOCOUNT ON; SELECT dbo.Auswertungsparameter.Auswertungparameternr, dbo.Auswertungsparameter.Bezeichnung, dbo.Auswertungsparameter.Operator, dbo.Auswertungsparameter.Feldbezug, dbo.Auswertungsparameter.Wert, dbo.Auswertungsparameter.ParamName, dbo.AuswertungAuswertungParameter.DBfeldname, dbo.Auswertungsparameter.ParamType, dbo.AuswertungAuswertungParameter.Auswertungnr, dbo.AuswertungAuswertungParameter.Reihenfolge FROM dbo.AuswertungAuswertungParameter INNER JOIN dbo.Auswertungsparameter ON dbo.AuswertungAuswertungParameter.Auswertungparameternr = dbo.Auswertungsparameter.Auswertungparameternr WHERE (dbo.Auswertungsparameter.Aktiv = 1) AND (dbo.AuswertungAuswertungParameter.Aktiv = 1) AND (dbo.AuswertungAuswertungParameter.Auswertungnr = @auswertungnr) ORDER BY dbo.AuswertungAuswertungParameter.Reihenfolge END GO /****** Object: StoredProcedure [dbo].[sp_rpt_Logfile] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_rpt_Logfile] @sqlwhere VARCHAR(255) AS BEGIN DECLARE @sql VARCHAR(4096) SET @sql = 'SELECT * ' SET @sql = @sql + ' FROM Journal' IF @sqlwhere <> '' SET @sql = @sql + ' WHERE ' + @sqlwhere SET @sql = @sql + ' order by erstellt_am desc ' EXEC(@sql) END GO /****** Object: StoredProcedure [dbo].[sp_rpt_tgnummer] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_rpt_tgnummer] @sqlwhere VARCHAR(255) AS BEGIN DECLARE @fstelle VARCHAR(255) DECLARE @fnr INT DECLARE @fbezeichnung VARCHAR(255) DECLARE @fnummer VARCHAR(255) DECLARE @parent INT DECLARE @tgtmp1 TABLE ( ID INT , Bezeichnung VARCHAR(255) , Beschreibung VARCHAR(255) , Sequenz INT , aktiv BIT , erstellt_am DATETIME , mutiert_am DATETIME , mutierer INT , typ VARCHAR(255) , MKey INT, Berechtigungstyp VARCHAR(255) ) DECLARE @tgt1 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) --, --s1 INT, --s2 INT, --s3 INT, --s4 int ) DECLARE @sql VARCHAR(4096) SET @sql = 'SELECT dbo.Funktionstelle.Funktionsstelle ' SET @sql = @sql + ' FROM dbo.Personal INNER JOIN ' SET @sql = @sql + ' dbo.Personal_FunktionStelle ON dbo.Personal.Personalnr = dbo.Personal_FunktionStelle.PersonalNr INNER JOIN ' SET @sql = @sql + ' dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr ' SET @sql = @sql + ' WHERE funktionstelle.aktiv=1 and personal_funktionstelle.aktiv=1 and ' + @sqlwhere DECLARE @tgtmp TABLE ( fstelle VARCHAR(255) ) INSERT @tgtmp EXEC ( @sql ) DECLARE xx CURSOR FOR SELECT fstelle FROM @tgtmp OPEN xx FETCH NEXT FROM xx INTO @fnummer WHILE @@FETCH_STATUS = 0 BEGIN SELECT @fnr = funktionstellenr FROM funktionstelle WHERE funktionsstelle = @fnummer AND aktiv=1 INSERT @tgt1 SELECT DISTINCT funktionsnummer, funktionsbezeichnung, plattform, verwaltungmit, verwaltungdurch, berechtigungIn , berechtigungfuer, eigentuemer FROM dbo.fnkt_get_Report_Data(@fnr) FETCH NEXT FROM xx INTO @fnummer END CLOSE xx DEALLOCATE xx DECLARE @tg VARCHAR(255) DECLARE @name VARCHAR(255) DECLARE @tgtg TABLE ( tgnummer VARCHAR(255) , NAME VARCHAR(255) ) SET @sql = 'SELECT dbo.Personal.TGNummer, dbo.personal.name ' SET @sql = @sql + ' FROM dbo.Personal ' SET @sql = @sql + ' WHERE ' + @sqlwhere INSERT @tgtg EXECUTE ( @sql ) UPDATE @tgt1 SET funktionsnummer = tgnummer, funktionsbezeichnung = name FROM @tgtg SELECT DISTINCT funktionsnummer, funktionsbezeichnung, plattform, verwaltungmit, verwaltungdurch, berechtigungIn, berechtigungfuer, eigentuemer FROM @tgt1 --ORDER BY verwaltungdurch, plattform, verwaltungmit ORDER BY plattform, verwaltungmit, berechtigungin, berechtigungfuer END GO /****** Object: StoredProcedure [dbo].[sp_rpt_tgnummer_data-sik] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_rpt_tgnummer_data-sik] @ifnr INT AS BEGIN DECLARE @fstelle VARCHAR(255) DECLARE @fnr INT DECLARE @fbezeichnung VARCHAR(255) DECLARE @fnummer VARCHAR(255) DECLARE @parent INT DECLARE @tmp1 TABLE ( ID INT , Bezeichnung VARCHAR(255) , Beschreibung VARCHAR(255) , Sequenz INT , aktiv BIT , erstellt_am DATETIME , mutiert_am DATETIME , mutierer INT , typ VARCHAR(255) , MKey INT, Berechtigungstyp VARCHAR(255) ) 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) ) SELECT TOP 1 @fnr = FunktionstelleNr, @fbezeichnung = bezeichnung, @fstelle = funktionsstelle, @fnummer = Funktionsstelle, @parent = ParentID FROM funktionstelle WHERE funktionstellenr = @ifnr INSERT @tmp1 SELECT * FROM dbo.fnkt_funktionstelle_beziehung(@fnr) DELETE FROM @tmp1 WHERE typ <> 'Berechtigung' AND typ <> 'Plattform' DECLARE @bez VARCHAR(255) DECLARE @key INT DECLARE @typ VARCHAR(255) DECLARE @key1 INT DECLARE @bez1 VARCHAR(255) DECLARE @funktionsnummer VARCHAR(255) , @funktionsbezeichnung VARCHAR(255) , @verwaltungdurch VARCHAR(255) , @plattform VARCHAR(255) , @verwaltungmit VARCHAR(255) , @berechtigungIn VARCHAR(255) , @berechtigungfuer VARCHAR(255) , @eigentuemer VARCHAR(255) DECLARE xc CURSOR FOR SELECT bezeichnung, mkey, TYP FROM @tmp1 OPEN xc FETCH NEXT FROM xc INTO @bez, @key, @typ WHILE @@FETCH_STATUS = 0 BEGIN SET @funktionsnummer = @fnummer SET @funktionsbezeichnung = @fbezeichnung SET @berechtigungfuer = @fbezeichnung IF UPPER(@typ) = 'BERECHTIGUNG' BEGIN SELECT @key1 = ParentID, @berechtigungfuer = bezeichnung FROM dbo.Berechtigung WHERE berechtigungnr = @key SELECT @key1 = ParentID, @berechtigungIn = bezeichnung FROM dbo.Berechtigung WHERE berechtigungnr = @key1 SELECT @plattform = bezeichnung FROM dbo.Berechtigung WHERE Berechtigungnr = @key1 SELECT @verwaltungdurch = dbo.Verwaltung_durch.Bezeichnung FROM dbo.Verwaltung_durch_Berechtigung INNER JOIN dbo.Verwaltung_durch ON dbo.Verwaltung_durch_Berechtigung.Verwaltung_DurchNr = dbo.Verwaltung_durch.Verwaltung_durchNr WHERE BerechtigungNr = @key SELECT @verwaltungmit = dbo.Verwaltung_mit.Bezeichnung FROM dbo.Verwaltung_Mit_Berechtigung INNER JOIN dbo.Verwaltung_mit ON dbo.Verwaltung_Mit_Berechtigung.Verwaltung_MitNr = dbo.Verwaltung_mit.Verwaltung_mitNr WHERE Berechtigungnr = @key SET @eigentuemer='' SELECT @eigentuemer = ISNULL(dbo.Personal.TGNummer + ' ' + dbo.Personal.Name,'') FROM dbo.Personal_berechtigung INNER JOIN dbo.Personal ON dbo.Personal_berechtigung.PersonalNr = dbo.Personal.Personalnr WHERE berechtigungnr = @key IF @@ROWCOUNT = 0 SET @eigentuemer='' END IF UPPER(@typ) = 'PLATTFORM' BEGIN SELECT TOP 1 @plattform = bezeichnung FROM dbo.fnkt_get_hierarchie(@key) WHERE level > 0 ORDER BY LEVEL DESC SELECT TOP 1 @berechtigungfuer = bezeichnung FROM dbo.fnkt_get_hierarchie(@key) WHERE level = 1 SELECT TOP 1 @berechtigungin = bezeichnung FROM dbo.fnkt_get_hierarchie(@key) --WHERE level = 2 -- AND parentid > 0 WHERE parentid > 0 ORDER BY level desc IF @@ROWCOUNT = 0 SET @berechtigungin = @berechtigungfuer DECLARE xa CURSOR FOR SELECT dbo.Verwaltung_durch_Plattform.Verwaltung_durch_plattformNr FROM dbo.Verwaltung_durch_Plattform WHERE aktiv = 1 AND plattformnr = @key OPEN xa FETCH NEXT FROM xa INTO @key1 WHILE @@fetch_status = 0 BEGIN SELECT @verwaltungdurch = dbo.Verwaltung_durch.Bezeichnung FROM dbo.Verwaltung_durch_Plattform INNER JOIN dbo.Verwaltung_durch ON dbo.Verwaltung_durch_Plattform.Verwaltung_DurchNr = dbo.Verwaltung_durch.Verwaltung_durchNr WHERE Verwaltung_Durch_PlattformNr=@key1 SELECT @verwaltungmit = dbo.Verwaltung_mit.Bezeichnung FROM dbo.Verwaltung_Mit_Plattform INNER JOIN dbo.Verwaltung_mit ON dbo.Verwaltung_Mit_Plattform.Verwaltung_MitNr = dbo.Verwaltung_mit.Verwaltung_mitNr WHERE PlattformNr = @key SELECT @eigentuemer = ISNULL(dbo.Personal.TGNummer + ' ' + dbo.Personal.Name,'') FROM dbo.Personal_Plattform INNER JOIN dbo.Personal ON dbo.Personal_Plattform.PersonalNr = dbo.Personal.Personalnr WHERE plattformnr = @key AND dbo.Personal_Plattform.beziehungstypnr=-31 OR dbo.Personal_Plattform.beziehungstypnr=-30 IF @@ROWCOUNT=0 SET @eigentuemer='' INSERT @t1 ( funktionsnummer, funktionsbezeichnung, plattform, verwaltungmit, verwaltungdurch, berechtigungIn, berechtigungfuer, eigentuemer ) VALUES ( @funktionsnummer, @funktionsbezeichnung, @plattform, @verwaltungmit, @verwaltungdurch, @berechtigungIn, @berechtigungfuer, @eigentuemer ) FETCH NEXT FROM xa INTO @key1 END CLOSE xa DEALLOCATE xa END IF UPPER(@typ) = 'ORGANISATION' BEGIN SELECT @key1 = ParentID, @berechtigungfuer = bezeichnung FROM dbo.Funktionstelle WHERE Funktionstellenr = @key SELECT @key1 = ParentID, @berechtigungIn = bezeichnung FROM dbo.Funktionstelle WHERE Funktionstellenr = @key1 SELECT @plattform = bezeichnung FROM dbo.Funktionstelle WHERE funktionstellenr = @key1 SELECT @verwaltungdurch = dbo.Verwaltung_durch.Bezeichnung FROM dbo.Verwaltung_durch_Plattform INNER JOIN dbo.Verwaltung_durch ON dbo.Verwaltung_durch_Plattform.Verwaltung_DurchNr = dbo.Verwaltung_durch.Verwaltung_durchNr WHERE PlattformNr = @key SET @verwaltungmit = '' SET @verwaltungdurch = '' --SELECT @verwaltungmit = dbo.Verwaltung_mit.Bezeichnung --FROM dbo.Verwaltung_Mit_Plattform -- INNER JOIN dbo.Verwaltung_mit ON dbo.Verwaltung_Mit_Plattform.Verwaltung_MitNr = dbo.Verwaltung_mit.Verwaltung_mitNr --WHERE PlattformNr = @key --SELECT @eigentuemer = dbo.Personal.TGNummer + ' ' + dbo.Personal.Name --FROM dbo.Personal_Plattform -- INNER JOIN dbo.Personal ON dbo.Personal_Plattform.PersonalNr = dbo.Personal.Personalnr --WHERE plattformnr = @key END INSERT @t1 ( funktionsnummer, funktionsbezeichnung, plattform, verwaltungmit, verwaltungdurch, berechtigungIn, berechtigungfuer, eigentuemer ) VALUES ( @funktionsnummer, @funktionsbezeichnung, @plattform, @verwaltungmit, @verwaltungdurch, @berechtigungIn, @berechtigungfuer, @eigentuemer ) FETCH NEXT FROM xc INTO @bez, @key, @typ END INSERT @t1 ( funktionsnummer, funktionsbezeichnung, plattform, verwaltungmit, verwaltungdurch, berechtigungIn, berechtigungfuer, eigentuemer ) VALUES ( @funktionsnummer, @funktionsbezeichnung, @plattform, @verwaltungmit, @verwaltungdurch, @berechtigungIn, @berechtigungfuer, @eigentuemer ) CLOSE xc DEALLOCATE xc SELECT DISTINCT * FROM @t1 END GO /****** Object: StoredProcedure [dbo].[sp_rpt_tgnummer_fnktstelle] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_rpt_tgnummer_fnktstelle] @sqlwhere VARCHAR(1024) AS BEGIN SET NOCOUNT ON; SELECT TOP (100) PERCENT dbo.Personal.TGNummer AS UserID, dbo.Personal.Name,dbo.Funktionstelle.Funktionsstelle as Funktionsstelle, dbo.Funktionstelle.Bezeichnung into #tmp1 FROM dbo.Personal INNER JOIN dbo.Personal_FunktionStelle ON dbo.Personal.Personalnr = dbo.Personal_FunktionStelle.PersonalNr INNER JOIN dbo.Funktionstelle ON dbo.Personal_FunktionStelle.FunktionStelleNr = dbo.Funktionstelle.FunktionstelleNr WHERE (dbo.Personal.TGNummer <> '') AND (dbo.Personal.Aktiv = 1) AND Personal_FunktionStelle.Aktiv=1 AND dbo.Funktionstelle.Aktiv=1 ORDER BY UserID, dbo.Funktionstelle.Funktionsstelle, dbo.Funktionstelle.Bezeichnung --select userid, name, CAST(funktionsstelle as Numeric(17,0)) as Funktionsstelle,bezeichnung from #tmp1 select userid, name,cast(Funktionsstelle as numeric(17,0)) as Funktionsstelle,bezeichnung from #tmp1 drop table #tmp1 END GO /****** Object: StoredProcedure [dbo].[sp_rpt_user] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_rpt_user] @sqlwhere VARCHAR(1024) AS BEGIN SET NOCOUNT ON; SELECT TOP (100) PERCENT TGNummer AS UserID, Name FROM dbo.Personal WHERE (TGNummer <> '') AND (Aktiv = 1) ORDER BY UserID END GO /****** Object: StoredProcedure [dbo].[sp_rpt_Vergleiche] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- 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 cast(Funktionsnummer1 as numeric(17,0)) as Funktionsnummer1 , Funktionsbezeichnung1 , Plattform1 , Verwaltungmit1 , Verwaltungdurch1 , BerechtigungIn1 , Berechtigungfuer1 , Eigentuemer1 , cast(Funktionsnummer2 as numeric(17,0)) as Funktionsnummer2 , Funktionsbezeichnung2 , Plattform2 , Verwaltungmit2 , Verwaltungdurch2 , BerechtigungIn2 , Berechtigungfuer2 , Eigentuemer2 --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 /****** Object: StoredProcedure [dbo].[sp_rpt_Vergleiche_differenz] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= Create PROCEDURE [dbo].[sp_rpt_Vergleiche_differenz] @sqlwhere VARCHAR(255) AS BEGIN SET @sqlwhere = @sqlwhere + ' and Differenz=Ja' EXEC dbo.sp_rpt_vergleiche @sqlwhere END GO /****** Object: StoredProcedure [dbo].[sp_rptparams_get_funktionsnummer] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_rptparams_get_funktionsnummer] AS BEGIN SELECT Funktionsstelle AS KeyValue, Funktionsstelle AS Bezeichnung, Bezeichnung AS searchvalue1 FROM funktionstelle WHERE aktiv=1 AND funktionsstelle<>'' ORDER BY Funktionsstelle END GO /****** Object: StoredProcedure [dbo].[sp_rptparams_get_tgnummer] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_rptparams_get_tgnummer] AS BEGIN SELECT tgnummer AS KeyValue, tgnummer AS Bezeichnung, name AS searchvalue1 FROM personal WHERE aktiv=1 ORDER BY tgnummer,Name END GO /****** Object: StoredProcedure [dbo].[sp_search_split] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS OFF GO SET QUOTED_IDENTIFIER OFF GO CREATE PROC [dbo].[sp_search_split] ( @sInputList VARCHAR(8000) -- List of delimited items , @Delimiter CHAR(1) = ',' -- delimiter that separates items ) AS BEGIN SET NOCOUNT ON DECLARE @Item VARCHAR(8000) WHILE CHARINDEX(@Delimiter, @sInputList, 0) <> 0 BEGIN SELECT @Item = RTRIM(LTRIM(SUBSTRING(@sInputList, 1, CHARINDEX(@Delimiter, @sInputList, 0) - 1))), @sInputList = RTRIM(LTRIM(SUBSTRING(@sInputList, CHARINDEX(@Delimiter, @sInputList, 0) + 1, LEN(@sInputList)))) IF LEN(@Item) > 0 INSERT INTO #tmpdeli SELECT @Item END IF LEN(@sInputList) > 0 INSERT INTO #tmpdeli SELECT @sInputList -- Put the last item in RETURN END GO /****** Object: StoredProcedure [dbo].[sp_set_Temporaerberechtigung] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_set_Temporaerberechtigung] @beschreibung VARCHAR(1024), @unterlagen VARCHAR(1024), @bearbeiter varchar(50), @kontkat varchar(255), @termin DATETIME, @keyvalue INT, @mitarbeiternr INT, @datatype int AS BEGIN SET NOCOUNT ON; declare @rc int SELECT @rc=COUNT(*) FROM dbo.Temporaer_Berechtigung WHERE aktiv=1 AND Personal_FunktionStelleNr=@keyvalue IF @rc=0 BEGIN INSERT dbo.Temporaer_Berechtigung ( Personal_FunktionStelleNr , Beschreibung , Unterlagen , Bearbeiter_ISI , Kontaktperson_FB , Termin , aktiv , erstellt_am , mutiert_am , mutierer, datatype ) VALUES ( @keyvalue , -- Personal_FunktionStelleNr - int @beschreibung , -- Beschreibung - varchar(1024) @unterlagen , -- Unterlagen - varchar(1024) @bearbeiter , -- Bearbeite_ISI - varchar(50) @kontkat , -- Kontaktperson_FB - varchar(255) @termin , -- Termin - varchar(255) 1, -- aktv - bit GETDATE() , -- erstellt_am - datetime GETDATE() , -- mutiert_am - datetime @mitarbeiternr, -- mutierer - int @datatype ) END ELSE BEGIN UPDATE dbo.Temporaer_Berechtigung SET Beschreibung=@beschreibung, Unterlagen=@unterlagen,Bearbeiter_ISI=@bearbeiter,Kontaktperson_FB=@kontkat, mutierer=@mitarbeiternr,Termin=@termin, mutiert_am=GETDATE() WHERE Personal_FunktionStelleNr=@keyvalue end END GO /****** Object: StoredProcedure [dbo].[sp_sysobjects_select] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_sysobjects_select] AS SELECT * FROM sysobjects WHERE xtype = 'U' ORDER BY name GO /****** Object: StoredProcedure [dbo].[sp_tooltips] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS OFF GO SET QUOTED_IDENTIFIER OFF GO CREATE PROCEDURE [dbo].[sp_tooltips] @fnkt INT , @formname VARCHAR(50) , @controlname VARCHAR(50) , @tooltip VARCHAR(1024) , @mitarbeiternr INT , @outToolTipNr INT OUTPUT , @outFormName VARCHAR(50) OUTPUT , @outControlname VARCHAR(50) OUTPUT , @outToolTip VARCHAR(1024) OUTPUT AS BEGIN IF @fnkt = 1 BEGIN SELECT @outtooltipnr = ISNULL(tooltipnr, 0), @outformname = ISNULL(formularname, ''), @outcontrolname = ISNULL(controlname, ''), @outtooltip = ISNULL(tooltip, '') FROM dbo.tooltip WHERE formularname = @formname AND controlname = @controlname AND aktiv = 1 END IF @fnkt = 2 BEGIN DECLARE @tnr INT DECLARE @dbkey INT DECLARE @ierrorcode INT SELECT @tnr = ISNULL(tooltipnr, -1) FROM dbo.tooltip WHERE formularname = @formname AND controlname = @controlname AND aktiv = 1 IF @@rowcount = 0 SET @tnr = -1 IF @tnr = -1 BEGIN EXECUTE sp_get_dbkey 'tooltip', @dbkey OUTPUT, @ierrorcode OUTPUT INSERT dbo.tooltip ( tooltipnr, formularname, controlname, tooltip, aktiv, erstellt_am, mutiert_am, mutierer ) VALUES ( @dbkey, @formname, @controlname, @tooltip, 1, GETDATE(), GETDATE(), @mitarbeiternr ) END ELSE BEGIN UPDATE dbo.tooltip SET tooltip = @tooltip, mutierer = @mitarbeiternr, mutiert_am = GETDATE() WHERE tooltipnr = @tnr END END END GO /****** Object: StoredProcedure [dbo].[sp_update_spalten] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS OFF GO SET QUOTED_IDENTIFIER OFF GO CREATE PROCEDURE [dbo].[sp_update_spalten] @tablename VARCHAR(255) AS BEGIN DECLARE @len INT DECLARE @inhalt VARCHAR(30) DECLARE @col VARCHAR(30) DECLARE @readonly INT DECLARE @dbkey INT DECLARE @alshacken INT DECLARE @ierrorcode INT DECLARE @spaltenkey INT DECLARE @aktiv INT DECLARE @tiptext VARCHAR(255) DECLARE xcursor CURSOR FOR SELECT column_name FROM INFORMATION_SCHEMA.Columns WHERE table_name = @tablename OPEN xcursor FETCH NEXT FROM xcursor INTO @col WHILE @@FETCH_STATUS = 0 BEGIN EXECUTE sp_get_dbkey 'spalten', @dbkey OUTPUT, @ierrorcode OUTPUT SET @spaltenkey = @dbkey SET @inhalt = @col SET @readonly = 0 SET @aktiv = 1 SET @tiptext = '' SET @len = 100 SET @alshacken = 0 IF UPPER(@col) = 'ERSTELLT_AM' BEGIN SET @inhalt = 'Erstellungsdatum' SET @len = 100 SET @readonly = 1 END IF UPPER(@col) = 'MUTIERT_AM' BEGIN SET @inhalt = 'Mutationsdatum' SET @len = 100 SET @readonly = 1 END IF UPPER(@col) = 'MUTIERER' BEGIN SET @inhalt = 'Mutiert durch' SET @len = 40 SET @readonly = 1 END IF UPPER(@col) = 'AKTIV' BEGIN SET @inhalt = 'Aktiv' SET @len = 40 SET @alshacken = 0 END INSERT INTO spalten ( eintragnr, tabelle, tabellenspalte, spalte, readonly, aktiv, erstellt_am, mutiert_am, mutierer, mandantnr, alsHacken, tiptext, breite, reihenfolge ) VALUES ( @spaltenkey, @tablename, @col, @inhalt, @readonly, @aktiv, GETDATE(), GETDATE(), -1, 1, @alshacken, @tiptext, @len, 0 ) FETCH NEXT FROM xcursor INTO @col END CLOSE xcursor DEALLOCATE xcursor END GO /****** Object: StoredProcedure [dbo].[update_massendaten] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[update_massendaten] @cmd VARCHAR(255)='' , @F1 VARCHAR(255) ='', @F2 VARCHAR(255) ='', @F3 VARCHAR(255) ='', @F4 VARCHAR(255) ='', @F5 VARCHAR(255) ='', @F6 VARCHAR(255) ='', @F7 VARCHAR(255) ='', @F8 VARCHAR(255) ='', @F9 VARCHAR(255) ='', @F10 VARCHAR(255) ='', @F11 VARCHAR(255) ='', @F12 VARCHAR(255) ='', @F13 VARCHAR(255) ='', @F14 VARCHAR(255) ='', @F15 VARCHAR(255) ='', @F16 VARCHAR(255) ='', @F17 VARCHAR(255) ='', @F18 VARCHAR(255) ='', @F19 VARCHAR(255) ='', @F20 VARCHAR(255) ='', @mutierer INT=0 , @resultat VARCHAR(1024) OUTPUT AS BEGIN DECLARE @pnr INT DECLARE @fnr INT DECLARE @rc INT DECLARE @ierrorcode INT SET @fnr=-1 SET @pnr=-1 SET @resultat = 'CMD: ' + @cmd + ' F1: ' + @f1 + ' Status: ' if @cmd<>'1' and @cmd<>'2' and @cmd<>'3' and @cmd<>'4' and @cmd<>'5' and @cmd<>'6' and @cmd<>'7' and @cmd<>'8' and @cmd<>'9' and @cmd<>'10' begin SET @resultat='NOK: '+ @resultat+'Funktionscode ' + @cmd +' ungültig' return end --------------------------------------------------------------------------------------------------------------------------------------------- -- 01: Mitarbeiter Funktionsnummer hinzufügen --------------------------------------------------------------------------------------------------------------------------------------------- IF @cmd='1' begin SELECT @pnr=ISNULL(personalnr,-1) FROM dbo.personal WHERE TGNummer=@F1 iF @pnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'TGNummer nicht vorhanden' RETURN END SELECT @fnr=ISNULL(funktionstellenr,-1) FROM funktionstelle WHERE Funktionsstelle=@F3 IF @fnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'Funktionstelle nicht vorhanden' RETURN END INSERT dbo.Personal_funktionstelle ( PersonalNr , funktionstellenr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @pnr , -- PersonalNr - int @fnr , -- BerechtigungNr - int '' , -- Beschreibung - varchar(255) @f6 , -- Sequenz - int 1 , -- Aktiv - bit GETDATE() , -- Erstellt_am - datetime GETDATE() , -- Mutiert_am - datetime @mutierer , -- Mutierer - int @f5 -- Beziehungstypnr - int ) SET @resultat=@resultat+'Hinzufügen erfolgreich' return END --------------------------------------------------------------------------------------------------------------------------------------------- -- 02: Funktionsstelle entfernen --------------------------------------------------------------------------------------------------------------------------------------------- IF @cmd='2' begin SELECT @pnr=ISNULL(personalnr,-1) FROM dbo.personal WHERE TGNummer=@F1 iF @pnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'TGNummer nicht vorhanden' RETURN END SELECT @fnr=ISNULL(funktionstellenr,-1) FROM funktionstelle WHERE Funktionsstelle=@F3 IF @fnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'Funktionstelle nicht vorhanden' RETURN END UPDATE personal_funktionstelle SET aktiv=0, mutierer=@mutierer, Mutiert_am=GETDATE() WHERE aktiv=1 AND personalnr=@pnr AND funktionstellenr=@fnr SET @resultat=@resultat+'Löschung erfolgreich' RETURN END --------------------------------------------------------------------------------------------------------------------------------------------- -- 03: Berechtigung hinzufügen --------------------------------------------------------------------------------------------------------------------------------------------- IF @cmd='3' begin SELECT @pnr=ISNULL(personalnr,-1) FROM dbo.personal WHERE TGNummer=@F1 iF @pnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'TGNummer nicht vorhanden' RETURN END SELECT @fnr=ISNULL(Berechtigungnr,-1) FROM Berechtigung WHERE Berechtigungnr=@F3 IF @fnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'Berechtigung nicht vorhanden' RETURN END INSERT dbo.Personal_Berechtigung ( PersonalNr , BerechtigungNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @pnr , -- PersonalNr - int @fnr , -- BerechtigungNr - int '' , -- Beschreibung - varchar(255) @f6 , -- Sequenz - int 1 , -- Aktiv - bit GETDATE() , -- Erstellt_am - datetime GETDATE() , -- Mutiert_am - datetime @mutierer , -- Mutierer - int @f5 -- Beziehungstypnr - int ) SET @resultat=@resultat+'Hinzufügen erfolgreich' return END --------------------------------------------------------------------------------------------------------------------------------------------- -- 04: Berechtigung entfernen --------------------------------------------------------------------------------------------------------------------------------------------- IF @cmd='4' begin SELECT @pnr=ISNULL(personalnr,-1) FROM dbo.personal WHERE TGNummer=@F1 iF @pnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'TGNummer nicht vorhanden' RETURN END IF ISNUMERIC(@f3) <> 1 BEGIN SET @resultat='NOK: '+ @resultat+'Berechtigungsnr ist nungültig' RETURN END UPDATE personal_berechtigung SET aktiv=0, mutierer=@mutierer, Mutiert_am=GETDATE() WHERE aktiv=1 AND personalnr=@pnr AND BerechtigungNr=@f3 SET @resultat=@resultat+'Löschung erfolgreich' RETURN END --------------------------------------------------------------------------------------------------------------------------------------------- -- 05: Plattform hinzufügen --------------------------------------------------------------------------------------------------------------------------------------------- IF @cmd='5' begin SELECT @pnr=ISNULL(personalnr,-1) FROM dbo.personal WHERE TGNummer=@F1 iF @pnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'TGNummer nicht vorhanden' RETURN END SELECT @fnr=ISNULL(Plattformnr,-1) FROM Plattform WHERE Plattformnr=@F3 IF @fnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'Plattform nicht vorhanden' RETURN END INSERT dbo.Personal_Plattform ( PersonalNr , PlattformNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @pnr , -- PersonalNr - int @fnr , -- BerechtigungNr - int '' , -- Beschreibung - varchar(255) @f6 , -- Sequenz - int 1 , -- Aktiv - bit GETDATE() , -- Erstellt_am - datetime GETDATE() , -- Mutiert_am - datetime @mutierer , -- Mutierer - int @f5 -- Beziehungstypnr - int ) SET @resultat=@resultat+'Hinzufügen erfolgreich' return END --------------------------------------------------------------------------------------------------------------------------------------------- -- 06: Plattform entfernen --------------------------------------------------------------------------------------------------------------------------------------------- IF @cmd='6' begin SELECT @pnr=ISNULL(personalnr,-1) FROM dbo.personal WHERE TGNummer=@F1 iF @pnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'TGNummer nicht vorhanden' RETURN END IF ISNUMERIC(@f3) <> 1 BEGIN SET @resultat='NOK: '+ @resultat+'Plattformnr ist nungültig' RETURN END UPDATE personal_plattform SET aktiv=0, mutierer=@mutierer, Mutiert_am=GETDATE() WHERE aktiv=1 AND personalnr=@pnr AND plattformnr=@f3 SET @resultat=@resultat+'Löschung erfolgreich' RETURN END -------------------------------------------------------------------------------------------------------------------------------------------- -- 07: Funktionstelle - Berechtigung --------------------------------------------------------------------------------------------------------------------------------------------- IF @cmd='7' begin SELECT @fnr=ISNULL(funktionstellenr,-1) FROM funktionstelle WHERE Funktionsstelle=@F1 IF @fnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'Funktionstelle nicht vorhanden' RETURN END SELECT @pnr=ISNULL(berechtigungnr,-1) FROM dbo.Berechtigung WHERE BerechtigungNr=@F3 iF @pnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'Berechtigung nicht vorhanden' RETURN END INSERT dbo.Funktionstelle_Berechtigung ( FunktionstelleNr , BerechtigungNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @fnr , -- FunktionstelleNr - int @pnr , -- BerechtigungNr - int '' , -- Beschreibung - varchar(255) @f6 , -- Sequenz - int 1 , -- Aktiv - bit GETDATE() , -- Erstellt_am - datetime GETDATE() , -- Mutiert_am - datetime @mutierer , -- Mutierer - int @f5 -- Beziehungstypnr - int ) SET @resultat=@resultat+'Hinzufügen erfolgreich' return END --------------------------------------------------------------------------------------------------------------------------------------------- -- 08: Funktionsstelle entfernen --------------------------------------------------------------------------------------------------------------------------------------------- IF @cmd='8' begin SELECT @fnr=ISNULL(funktionstellenr,-1) FROM funktionstelle WHERE Funktionsstelle=@F1 IF @fnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'Funktionstelle nicht vorhanden' RETURN END SELECT @pnr=ISNULL(berechtigungnr,-1) FROM dbo.Berechtigung WHERE BerechtigungNr=@F3 iF @pnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'Berechtigung nicht vorhanden' RETURN END UPDATE dbo.Funktionstelle_Berechtigung SET aktiv=0, mutierer=@mutierer, Mutiert_am=GETDATE() WHERE aktiv=1 AND funktionstellenr=@fnr AND BerechtigungNr=@pnr SET @resultat=@resultat+'Löschung erfolgreich' RETURN END -------------------------------------------------------------------------------------------------------------------------------------------- -- 09: Funktionstelle - Plattform --------------------------------------------------------------------------------------------------------------------------------------------- IF @cmd='9' begin SELECT @fnr=ISNULL(funktionstellenr,-1) FROM funktionstelle WHERE Funktionsstelle=@F1 IF @fnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'Funktionstelle nicht vorhanden' RETURN END SELECT @pnr=ISNULL(Plattformnr,-1) FROM dbo.Plattform WHERE PlattformNr=@F3 iF @pnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'Plattform nicht vorhanden' RETURN END INSERT dbo.Funktionstelle_Plattform ( FunktionstelleNr , PlattformNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @fnr , -- FunktionstelleNr - int @pnr , -- PlattformNr - int '' , -- Beschreibung - varchar(255) @f6 , -- Sequenz - int 1 , -- Aktiv - bit GETDATE() , -- Erstellt_am - datetime GETDATE() , -- Mutiert_am - datetime @mutierer , -- Mutierer - int @f5 -- Beziehungstypnr - int ) SET @resultat=@resultat+'Hinzufügen erfolgreich' return END --------------------------------------------------------------------------------------------------------------------------------------------- -- 10: Plattform entfernen --------------------------------------------------------------------------------------------------------------------------------------------- IF @cmd='10' begin SELECT @fnr=ISNULL(funktionstellenr,-1) FROM funktionstelle WHERE Funktionsstelle=@F1 IF @fnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'Funktionstelle nicht vorhanden' RETURN END SELECT @pnr=ISNULL(Plattformnr,-1) FROM dbo.Plattform WHERE PlattformNr=@F3 iF @pnr=-1 BEGIN SET @resultat='NOK: '+ @resultat+'Plattform nicht vorhanden' RETURN END UPDATE dbo.Funktionstelle_Plattform SET aktiv=0, mutierer=@mutierer, Mutiert_am=GETDATE() WHERE aktiv=1 AND funktionstellenr=@fnr AND PlattformNr=@pnr SET @resultat=@resultat+'Löschung erfolgreich' RETURN END END GO /****** Object: StoredProcedure [dbo].[update_massenmutation] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[update_massenmutation] @cmd VARCHAR(255) , @F1 VARCHAR(255) , @F2 VARCHAR(255) , @F3 VARCHAR(255) , @F4 VARCHAR(255) , @F5 VARCHAR(255) , @F6 VARCHAR(255) , @F7 VARCHAR(255) , @F8 VARCHAR(255) , @F9 VARCHAR(255) , @F10 VARCHAR(255) , @mutierer INT , @resultat VARCHAR(1024) OUTPUT AS BEGIN DECLARE @pnr INT DECLARE @fnr INT DECLARE @rc INT DECLARE @ierrorcode INT SET @resultat = 'CMD: ' + @cmd + ' F1: ' + @f1 + ' Status: ' RETURN end -- + @key + ' CMD: ' + @cmd + ' Status: ' -- IF @tgnummer = 'Berechtigung' -- BEGIN -- SELECT 1 -- END -- IF @tgnummer = 'Funktionstelle' -- BEGIN -- SELECT 2 -- END -- IF @tgnummer = 'Plattform' -- BEGIN -- SELECT 3 -- END -- SELECT @pnr = ISNULL(personalnr, -1) -- FROM dbo.Personal -- WHERE TGNummer = @tgnummer -- AND aktiv = 1 -- IF @pnr = -1 -- BEGIN -- SET @resultat = 'NOK: ' + @resultat -- + ' TGNummer existiert nicht' -- RETURN -- END -- IF @type = 'F' -- BEGIN -- SELECT @fnr = ISNULL(funktionstellenr, -1) -- FROM dbo.Funktionstelle -- WHERE funktionstellenr = @key -- IF @pnr = -1 -- BEGIN -- SET @resultat = 'NOK: ' + @resultat -- + ' Funktionstelle existiert nicht' -- RETURN -- END -- END -- IF @type = 'B' -- BEGIN -- SELECT @fnr = ISNULL(berechtigungnr, -1) -- FROM dbo.Berechtigung -- WHERE berechtigungnr = @key -- IF @pnr = -1 -- BEGIN -- SET @resultat = 'NOK: ' + @resultat -- + ' Berechtigung existiert nicht' -- RETURN -- END -- END -- IF @type = 'P' -- BEGIN -- SELECT @fnr = ISNULL(plattformnr, -1) -- FROM dbo.plattform -- WHERE Plattformnr = @key -- IF @pnr = -1 -- BEGIN -- SET @resultat = 'NOK: ' + @resultat -- + ' Plattform existiert nicht' -- RETURN -- END -- END -- IF @cmd = 'ADD' -- BEGIN -- IF @type = 'F' -- BEGIN -- INSERT dbo.Personal_FunktionStelle -- ( PersonalNr , -- FunktionStelleNr , -- Beschreibung , -- Sequenz , -- Aktiv , -- Erstellt_am , -- Mutiert_am , -- Mutierer , -- Beziehungstypnr -- ) -- VALUES ( @pnr , -- PersonalNr - int -- @fnr , -- FunktionStelleNr - int -- '' , -- Beschreibung - varchar(255) -- 0 , -- Sequenz - int -- 1 , -- Aktiv - bit -- GETDATE() , -- Erstellt_am - datetime -- GETDATE() , -- Mutiert_am - datetime -- @mutierer , -- Mutierer - int -- 47 -- ) -- END -- IF @type = 'B' -- BEGIN -- INSERT dbo.Personal_Berechtigung -- ( PersonalNr , -- BerechtigungNr , -- Beschreibung , -- Sequenz , -- Aktiv , -- Erstellt_am , -- Mutiert_am , -- Mutierer , -- Beziehungstypnr -- ) -- VALUES ( @pnr , -- PersonalNr - int -- @fnr , -- BerechtigungNr - int -- '' , -- Beschreibung - varchar(255) -- 0 , -- Sequenz - int -- 1 , -- Aktiv - bit -- GETDATE() , -- Erstellt_am - datetime -- GETDATE() , -- Mutiert_am - datetime -- @mutierer , -- Mutierer - int -- 47 -- Beziehungstypnr - int -- ) -- END -- IF @type = 'P' -- BEGIN -- INSERT dbo.Personal_Plattform -- ( PersonalNr , -- PlattformNr , -- Beschreibung , -- Sequenz , -- Aktiv , -- Erstellt_am , -- Mutiert_am , -- Mutierer , -- Beziehungstypnr -- ) -- VALUES ( @pnr , -- PersonalNr - int -- @fnr , -- PlattformNr - int -- '' , -- Beschreibung - varchar(255) -- 0 , -- Sequenz - int -- 1 , -- Aktiv - bit -- GETDATE() , -- Erstellt_am - datetime -- GETDATE() , -- Mutiert_am - datetime -- @mutierer , -- Mutierer - int -- 47 -- Beziehungstypnr - int -- ) -- END -- SET @resultat = 'OK : ' + @resultat + 'Add erfolgreich' -- END --END GO /****** Object: StoredProcedure [dbo].[update_merkmap] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[update_merkmap] @table VARCHAR(255) , @key INT AS BEGIN DECLARE @tmp VARCHAR(255) DECLARE @bez VARCHAR(255) DECLARE @wert VARCHAR(255) DECLARE @id INT SET @id=@key SET @tmp = '' DECLARE xb CURSOR FOR SELECT bezeichnung, wert FROM baa_shu_extrakt_merkmale WHERE id = @key OPEN xb FETCH NEXT FROM xb INTO @bez, @wert WHILE @@FETCH_STATUS = 0 BEGIN IF @table = 'Personal' BEGIN IF @bez = 'Name' BEGIN UPDATE Personal SET Name = @wert WHERE Personalnr = @id END ELSE BEGIN SELECT @tmp = ISNULL(beschreibung, '') FROM Personal WHERE Personalnr = @id SET @tmp = @tmp + ' ' + @wert UPDATE Personal SET beschreibung = @tmp WHERE Personalnr = @id END END IF @table = 'Berechtigung' BEGIN SELECT @tmp = ISNULL(beschreibung, '') FROM Berechtigung WHERE Berechtigungnr = @id SET @tmp = @tmp + ' ' + @wert UPDATE Berechtigung SET beschreibung = @tmp WHERE Berechtigungnr = @id END IF @table = 'Funktionstelle' BEGIN IF @bez = 'Funktionsstelle' BEGIN UPDATE Funktionstelle SET Funktionsnummer = @wert WHERE FunktionstelleNr = @id END ELSE BEGIN IF @bez = 'Funktionsbegriff' BEGIN UPDATE Funktionstelle SET Funktionsstelle = @wert WHERE FunktionstelleNr = @id END ELSE BEGIN SELECT @tmp = ISNULL(beschreibung, '') FROM Funktionstelle WHERE FunktionstelleNr = @id SET @tmp = @tmp + ' ' + @wert UPDATE Funktionstelle SET beschreibung = @tmp WHERE FunktionstelleNr = @id END END END IF @table = 'Plattform' BEGIN SELECT @tmp = ISNULL(beschreibung, '') FROM Plattform WHERE Plattformnr = @id SET @tmp = @tmp + ' ' + @wert UPDATE Plattform SET beschreibung = @tmp WHERE Plattformnr = @id END IF @table = 'Server' BEGIN SELECT @tmp = ISNULL(beschreibung, '') FROM Server WHERE Servernr = @id SET @tmp = @tmp + ' ' + @wert UPDATE Server SET beschreibung = @tmp WHERE Servernr = @id END IF @table = 'Verwaltung_Durch' BEGIN SELECT @tmp = ISNULL(beschreibung, '') FROM verwaltung_durch WHERE verwaltung_durchnr = @id SET @tmp = @tmp + ' ' + @wert UPDATE Verwaltung_durch SET beschreibung = @tmp WHERE verwaltung_durchnr = @id END IF @table = 'Verwaltung_Mit' BEGIN SELECT @tmp = ISNULL(beschreibung, '') FROM Verwaltung_mit WHERE Verwaltung_MitNr = @id SET @tmp = @tmp + ' ' + @wert UPDATE Verwaltung_mit SET beschreibung = @tmp WHERE Verwaltung_mitnr = @id END FETCH NEXT FROM xb INTO @bez, @wert END CLOSE xb DEALLOCATE xb END GO /****** Object: StoredProcedure [dbo].[update_personal_from_excel] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= CREATE PROCEDURE [dbo].[update_personal_from_excel] @tgnummer VARCHAR(255) , @funktionstelle VARCHAR(255) , @mutart VARCHAR(255) , @name VARCHAR(255) , @mutierer INT , @resultat VARCHAR(1024) OUTPUT AS BEGIN DECLARE @pnr INT DECLARE @fnr INT DECLARE @rc INT DECLARE @N VARCHAR(255) DECLARE @ierrorcode INT SET @resultat = 'TG: ' + @tgnummer + ' FST: ' + @funktionstelle + ' Mutart: ' + @mutart + ' Status: ' SELECT @pnr = ISNULL(personalnr, -1) FROM dbo.Personal WHERE TGNummer = @tgnummer AND aktiv=1 IF @mutart <> 'E' BEGIN IF @pnr = -1 BEGIN SET @resultat = 'NOK: ' + @resultat + ' TGNummer existiert nicht' RETURN END END SELECT @fnr = ISNULL(funktionstellenr, -1) FROM dbo.Funktionstelle WHERE funktionstelle.Funktionsstelle = @funktionstelle AND aktiv=1 IF @fnr = -1 OR @@ROWCOUNT = 0 BEGIN SET @resultat = 'NOK: ' + @resultat + ' Funktionstelle existiert nicht' RETURN END SET @mutart = UPPER(@mutart) IF @mutart <> 'E' AND @mutart <> 'A' AND @mutart <> 'M' BEGIN SET @resultat = 'NOK: ' + @resultat + ' Mutationsart ungültig' RETURN END -- Prüfungen i.O. - Update durchführen IF @mutart = 'E' BEGIN SELECT @rc=COUNT(*) FROM dbo.Personal WHERE aktiv=1 AND TGNummer=@tgnummer IF @rc>0 BEGIN SELECT @pnr = ISNULL(personalnr, -1) FROM dbo.Personal WHERE TGNummer = @tgnummer AND aktiv=1 END ELSE BEGIN SET @pnr=-1 end IF @pnr = -1 BEGIN EXECUTE sp_get_dbkey 'Schluessel', @pnr OUTPUT, @ierrorcode OUTPUT INSERT dbo.Personal ( Personalnr , ParentID , Bezeichnung , Beschreibung , TGNummer , Name , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer ) VALUES ( @pnr , -- Personalnr - int 2404 , -- ParentID - int @tgnummer , -- Bezeichnung - varchar(255) '' , -- Beschreibung - varchar(255) @tgnummer , -- TGNummer - varchar(255) @name , -- Name - varchar(255) 0 , -- Sequenz - int 1 , -- Aktiv - bit GETDATE() , -- Erstellt_am - datetime GETDATE() , -- Mutiert_am - datetime @mutierer -- Mutierer - int ) END INSERT dbo.Personal_FunktionStelle ( PersonalNr , FunktionStelleNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @pnr , -- PersonalNr - int @fnr , -- FunktionStelleNr - int '' , -- Beschreibung - varchar(255) 0 , -- Sequenz - int 1 , -- Aktiv - bit GETDATE() , -- Erstellt_am - datetime GETDATE() , -- Mutiert_am - datetime @mutierer , -- Mutierer - int 47 ) SET @resultat = 'OK : ' + @resultat + 'Hinzufügen erfolgreich' END IF @mutart = 'A' BEGIN UPDATE dbo.Personal_FunktionStelle SET Aktiv = 0 , Mutierer = @mutierer , Mutiert_am = GETDATE() WHERE PersonalNr = @pnr AND FunktionStelleNr = @fnr UPDATE dbo.personal SET aktiv = 0 , mutierer = @mutierer , Mutiert_am = GETDATE() WHERE personalnr = @pnr SET @resultat = 'OK : ' + @resultat + 'Aufhebung erfolgreich' END IF @mutart = 'M' BEGIN SELECT @rc = COUNT(*) FROM dbo.Personal_FunktionStelle WHERE personalnr = @pnr AND aktiv = 1 IF @rc > 1 BEGIN SET @resultat = 'Multiple::' + @resultat RETURN END UPDATE dbo.Personal_FunktionStelle SET Aktiv = 0 , Mutierer = @mutierer , Mutiert_am = GETDATE() WHERE PersonalNr = @pnr INSERT dbo.Personal_FunktionStelle ( PersonalNr , FunktionStelleNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @pnr , -- PersonalNr - int @fnr , -- FunktionStelleNr - int '' , -- Beschreibung - varchar(255) 0 , -- Sequenz - int 1 , -- Aktiv - bit GETDATE() , -- Erstellt_am - datetime GETDATE() , -- Mutiert_am - datetime @mutierer , -- Mutierer - int 47 ) SELECT @n = name FROM personal WHERE Personalnr = @pnr IF @n <> @name BEGIN UPDATE personal SET name = @name , Mutierer = @mutierer , Mutiert_am = GETDATE() WHERE personalnr = @pnr END SET @resultat = 'OK : ' + @resultat + 'Update erfolgreich' END END GO /****** Object: StoredProcedure [dbo].[update_personal_massenmutation] Script Date: 13.12.2014 15:01:06 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= Create PROCEDURE [dbo].[update_personal_massenmutation] @tgnummer VARCHAR(255) , @name VARCHAR(255) , @type VARCHAR(255) , @key VARCHAR(255) , @beschreibung VARCHAR(255), @cmd VARCHAR(255), @mutierer INT , @resultat VARCHAR(1024) OUTPUT AS BEGIN DECLARE @pnr INT DECLARE @fnr INT DECLARE @rc INT DECLARE @ierrorcode INT SET @resultat = 'TG: ' + @tgnummer + ' Type: ' + @Type + ' Key: ' + @key + ' CMD: ' + @cmd + ' Status: ' IF @tgnummer='Berechtigung' BEGIN SELECT 1 END IF @tgnummer='Funktionstelle' BEGIN SELECT 2 END IF @tgnummer='Plattform' BEGIN SELECT 3 END SELECT @pnr = ISNULL(personalnr, -1) FROM dbo.Personal WHERE TGNummer = @tgnummer AND aktiv=1 IF @pnr=-1 BEGIN SET @resultat = 'NOK: ' + @resultat + ' TGNummer existiert nicht' RETURN END IF @type='F' BEGIN SELECT @fnr=ISNULL(funktionstellenr,-1) FROM dbo.Funktionstelle WHERE funktionstellenr=@key IF @pnr=-1 BEGIN SET @resultat = 'NOK: ' + @resultat + ' Funktionstelle existiert nicht' RETURN END end IF @type='B' BEGIN SELECT @fnr=ISNULL(berechtigungnr,-1) FROM dbo.Berechtigung WHERE berechtigungnr=@key IF @pnr=-1 BEGIN SET @resultat = 'NOK: ' + @resultat + ' Berechtigung existiert nicht' RETURN END end IF @type='P' BEGIN SELECT @fnr=ISNULL(plattformnr,-1) FROM dbo.plattform WHERE Plattformnr=@key IF @pnr=-1 BEGIN SET @resultat = 'NOK: ' + @resultat + ' Plattform existiert nicht' RETURN END end IF @cmd='ADD' BEGIN IF @type='F' BEGIN INSERT dbo.Personal_FunktionStelle ( PersonalNr , FunktionStelleNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @pnr , -- PersonalNr - int @fnr , -- FunktionStelleNr - int '' , -- Beschreibung - varchar(255) 0 , -- Sequenz - int 1 , -- Aktiv - bit GETDATE() , -- Erstellt_am - datetime GETDATE() , -- Mutiert_am - datetime @mutierer , -- Mutierer - int 47) END IF @type='B' BEGIN INSERT dbo.Personal_Berechtigung ( PersonalNr , BerechtigungNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES (@pnr , -- PersonalNr - int @fnr , -- BerechtigungNr - int '' , -- Beschreibung - varchar(255) 0 , -- Sequenz - int 1 , -- Aktiv - bit GETDATE() , -- Erstellt_am - datetime GETDATE() , -- Mutiert_am - datetime @mutierer , -- Mutierer - int 47 -- Beziehungstypnr - int ) END IF @type='P' BEGIN INSERT dbo.Personal_Plattform ( PersonalNr , PlattformNr , Beschreibung , Sequenz , Aktiv , Erstellt_am , Mutiert_am , Mutierer , Beziehungstypnr ) VALUES ( @pnr , -- PersonalNr - int @fnr , -- PlattformNr - int '' , -- Beschreibung - varchar(255) 0 , -- Sequenz - int 1 , -- Aktiv - bit getdate() , -- Erstellt_am - datetime GETDATE() , -- Mutiert_am - datetime @mutierer , -- Mutierer - int 47 -- Beziehungstypnr - int ) END SET @resultat = 'OK : ' + @resultat + 'Add erfolgreich' END end GO