[varchar] (10) NULL ,
[Name] [varchar] (50) NULL ,
[ParentCode] [varchar] (10) NULL ,
[Level] [tinyint] NULL ,
) ON [PRIMARY]
取下级部门函数
CREATE FUNCTION dbo.FP_GetNextDept(@Code varchar(10))
RETURNS varchar(4096) WITH ENCRYPTION AS
BEGIN
DECLARE @name varchar(4096),@Next varchar(10),@tmp varchar(4096)
SELECT @name='',@Next=''
DECLARE RecNo CURSOR SCROLL FOR SELECT ISNULL(Code,'') FROM Dept WHERE ParentCode=@Code
OPEN RecNo
FETCH FIRST FROM RecNo INTO @Next
WHILE @@FETCH_STATUS=0
BEGIN
SELECT @tmp=dbo.FP_GetNextDept(@Next)
IF @tmp<>'' SELECT @tmp=@tmp+','
SELECT @name=@name+''''+@Next+''','+LTRIM(RTRIM(@tmp))
FETCH NEXT FROM RecNo INTO @Next
END
IF @name<>'' SELECT @name=SUBSTRING(@name,1,LEN(@name)-1)
RETURN @name
END
GO