--================================================== --用途:自动生成流水码 --作者: 龚德辉 --日期:2008-03-15 --================================================== Create FUNCTION [dbo].[GetTaskCodeFunc]( @Type varchar(2)) returns varchar(11) as begin declare @dt CHAR(8) --类别+年月日 ,@lsh char(3) --后3位流水 ,@taskcode nvarchar(11) --任务号 Select @dt=@Type+(Select * from v_GetDate) select @lsh=substring(MAX(TaskCode),9,11) from Task where substring(TaskCode,1,8)=@dt --本类别当天最大号 set @lsh=isnull(rtrim(ltrim(@lsh)),0) SET @lsh=right(@lsh,3)+1 while len(@lsh)<3 begin set @lsh='0'+@lsh end set @TaskCode=@dt+@lsh return @TaskCode end