我现在要实现的是:一个char(10)的字段,前六位代表的是年月,如200302,后四位则是一个编号,我要写段代码,让每次有新记录进去的时候,这个编号等加1,该怎么做?
解决方案 »
- 如何将任何文件保存到数据库,然后将它读出保存!
- 去看看
- 用DELPHI封ASP时如果里面有set rs=server.createobject("adodb.recordset") 怎么通不过?
- 请问怎么定义一个动态数组
- 关于query循环中的操作
- 一个智力问题?
- 在Dephi中如何实例化com组件,请给出例子
- 我在dephi中使用MsScript.Ocx 时遇到PsafeArray类型不知如何定义。
- 做报表是不是很烦?有没有想过对策?现在怎么办?
- sos. 我也是帮忙的,看那个小MM很可怜!
- DBEdit在激发onchange事件时,是否已经修改数据源?如何取消修改?
- 是谁说刘艺的Delphi6企业级解决方案这本书写的好的?害死我了!
str:string; begin
str1:=formatdatetime('yyyydd',date);//将当前日期转换为200302的形式
inc(i);//i:全程变量,初始化为 1
case i of
i<10: result:=str1+'000'+inttostr(i);
10<i<100 :result:=str1+'00'+inttostr(i);
100<i<1000:result:=str1+'0'+inttostr(i);
1000<i<9999:result:=str1+inttostr(i);
end;
maxbillno:=str+'0001'
else
maxbillno:=inttostr(billno+1);
先得到当前时间,在用substring配合cast得到当前的六位数的年份+月份
然后再用max得到最大编号+1即可,大概代码为: