出货单号 按系统日期以流水号产生(S+系统日期后六位(如:20100112,取100112)+流水号)
怎么实现!
------解决方案--------------------
--如果流水号取三位
select 'S' + RIGHT(convert(char(8),getdate(),112),6) +
REPLICATE('0',3 - len(cast(isnull(convert(numeric(5,0),max(right(单号,3))),0) + 1 as varchar))) + cast(isnull(convert(numeric(5,0),max(right(单号,3))),0) + 1 as varchar) from 出货单表
where convert(char(10),getdate(),120)=convert(char(10),制单日期,120)
------解决方案--------------------
string ls_key, ls_autono, ls_rtn
ls_key = 'S' + mid(系统日期,3,6)
select max(主key)
into :ls_auto_no
from aaa
where 主key like ls_key + '%'
using sqlca;
//假设流水号长度为4
if len(trim(ls_auto_no)) <> 0 then
ls_rtn = ls_key + string(long(mid(ls_autono,8,4)) + 1,'0000')
else
ls_rtn = ls_key + '0001'
end if
return ls_rtn