create table tb_no
(name char(2) primary key , --編號種類的名稱
head nvarchar(10) not null default '', --編號的字首
currentno int not null default 0, --當前的編號
bhlen int not null default 6, --編號數字部份長度
description nvarchar(50) --編號種類說明
)insert tb_no select 'cg','cg',0,4,n'採購訂單'
union all select 'cj','cj',0,4,n'採購進貨'
union all select 'jc','jc',0,4,n'進倉單'
union all select 'zc','zc',0,4,n'轉倉單'
union all select 'cc','cc',0,4,n'出倉單'
gocreate proc p_nextbh
@name char(2),
@bh nvarchar(20) output
asbegin tran
update tb_no with (rowlock) set
@bh=head+right(power(10,bhlen)+currentno+1,bhlen),
currentno = currentno+1
where name=@name
commit tran
go--呼叫示例
declare @bh char(6)
exec p_nextbh 'cj',@bh output
select @bh
exec p_nextbh 'cj',@bh output
select @bh
編號的生成
1.在日常工作中,編號用處有很多地方,以下是乙個編號的生成 標號規則 1 按照年份排序 2 刪除不影響編號順序 思路 1 需要借助乙個外表去統計編號,此處用到的是 km ot number 字段至少需要id numbertype 區分編號類別,方便其他模組復用 year count 統計編號 2 根...
生成按序的編號
public static string makexfjbh string jtr,string djrq,string xftj,string yhbm,ibasezrardao dao throws exception else if businesscanstant.xf ywdj xftj ...
單據編號的生成
1.單據編號的構成 為了避免重複及保持有序性,單據編號通常格式為 關鍵字 yymmdd n位流水號,當然具體規則會根據業務需 要變化,包括 年月日的顯示變化和流水號的位數變化 及編號公升序 例如 ys0812250001,ys200812250001,ys2008120001,ys081225001...