文献种类:专题技术总结文献;
开发工具与关键技术: VS、C#生成自增编号
作者:陆桂超
;年级:1803
;
撰写时间: 2019
年 6 月 26 日
C#生成单据编号
开发工具与关键技术:VS、c#生成自增编号
作者:陆桂超
撰写时间:2019年6月26日
在制作订单时往往需要用到单据号,单据号的生成有随机单据号和自增单据号,这里我要简介的是自增单据号。开发工具是VS,编程语言是c#。
1、 我以制作一条日期加流水号为例,如201906260001这样一条单据号。
2、首先要从数据库的表中查询出最后一条单号。因为要根据最后一条单据号的号码,然后在该号码的基础上加一。
var li = (from tbAS in mymodel.PW_SupplierData
orderby tbAS.SupplierDataID
select tbAS).ToList();
var er =
li.LastOrDefault();//得到最后一条单号数据
2、 在获取到最后一条单据后,就可以通过判断自增单号。实现思路是:首先判断最后一条单据号的日期是否与今天的日期相同。如果不相同,则直接生成一条当前日期+0001的单据。如果日期相同,则不需要改变日期,只需要改变后面的号码,把0001增加为0002。
string temp =
r.Substring(5, 8);//获取单号日期字段
获取单据日期,与当前日期比较。
string f = r.Substring(20,
2);//获取单号最后两位数字
string t = r.Substring(21,
1);//获取单号最后一位数字
获取单号最后一位数字,如果数字为9,那么倒数第二位数字自增1,最后一位赋值为0。
4、整体代码如下
if (temp == storageDate)//判断单号日期是否与本地日期相同
{
if (t == “9”)
{
string p = r.Substring(20,
1); int a = Convert.ToInt32§;//获取倒数第二位数字
int s = Convert.ToInt32(++a); string d = r.Substring(0,
20);
var g = “0”; var stu1 = d + s + g;
PW_SupplierData e1 = new PW_SupplierData
{
SupplierNuber =
stu1.Trim()
};
return Json(e1, JsonRequestBehavior.AllowGet);
}
else
{
int y = Convert.ToInt32(t);
int z = Convert.ToInt32(++y);
string u = r.Substring(0,
21);
var stu = u + z;
PW_SupplierData e = new PW_SupplierData
{
SupplierNuber =
stu.Trim()
};
return Json(e, JsonRequestBehavior.AllowGet);
}
}
else
{
var stu =storageDate +
i;
PW_SupplierData e = new PW_SupplierData
{
SupplierNuber =
stu.Trim()
};
return Json(e, JsonRequestBehavior.AllowGet);
}