USE [Vertragsverwaltung_20160404] GO /****** Object: StoredProcedure [dbo].[sp_get_sysadmin_hierarchie_data] Script Date: 02.12.2016 09:08:53 ******/ DROP PROCEDURE [dbo].[sp_get_sysadmin_hierarchie_data] GO /****** Object: StoredProcedure [dbo].[sp_get_sysadmin_hierarchie_data] Script Date: 02.12.2016 09:08:55 ******/ 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