数据库表:
订单单号 char(14),//为主键
订单日期,datetime,
进货部门 char(16)
....
要在lable1中显示ISBN+订单号的最大值+1 实现初始采购单的编号
订单单号 char(14),//为主键
订单日期,datetime,
进货部门 char(16)
....
要在lable1中显示ISBN+订单号的最大值+1 实现初始采购单的编号
解决方案 »
- 新手求组win7下重写uninstall方法删除注册表项及子项不成功求助
- 如何让一个Form始终保持前端显示?
- 急::求正则表达式【不够加分】
- c# 客户端 上传excel数据到sql,弄了一晚都弄不好
- 分布于多台机器的程序求方案
- 誰有EAN-13的條碼字庫啊﹖謝謝了~~
- 关于IHttpModule和IHttpHandler的问题
- C#调用Oralce存储过程报错。
- Xenocode 2006 Postbuild v4.1.10 版本哪里有下载啊?
- C#中发送windows消息的问题
- 关于让timer暂停的难题!!,急急急急!!!!
- 怎么用编程的方式让DataGridView指定行的行标头显示Error图标
new订单单号="ISBN"+(int.parse( excutescale(sql))+1).tostring("d10")
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "data source=localhost;initial catalog=ERP;integrated security=true";
conn.Open(); //label4自动编号
//获取订单编号的最大值
string sql = " select top 1 订单编号 from 采购订单 order by 订单编号 Desc";
SqlCommand cmd = new SqlCommand(sql , conn);
string i = cmd.ExecuteScalar().ToString();
string j = i.Substring(10, 3);//截取第10个字符后3位
label4.Text = "JXGZSYDDCS"+Convert.ToString(int.Parse(j) + 1);
在程序中写函数
public class OrderOperate
{
public void OrderNum(string strsql,string tablename,string tablecolumn,string letter,string letterNum,Label lbOrderID)
{
string strOrder;
int num;
SqlConnection con=new SqlConnection("server=servername;uid=sa;pwd=;database=databasename;integrated security=sspi");
SqlDataAdapeter sda=new SqlDataAdapter(strsql,con);
DataSet myds=new DataSet();
sda.fill(myds,tablename);
if(myds.Tables[tablename].Rows.Count==0)
{
lbOrderID=letter+letterNum;
}
else
{
strOrder=Convert.ToString(myds.Tables[tablename].Rows[myds.Tables[tablename].rows.Count-1][tablecolumn]).Trim();
num=Convert.ToInt32(strOrder.Substring(4,6))+1;
strOrder=letter+num;
lbOrderID=strOrder;
}
}
}
在程序中调用
OrderOperate order=new OrderOperate();
order.OrderNum("select * from tb_OrderTable","tb_OrderTable","OrderID","ISBN","100000",lableOrderIDname);
呵呵,你也可以写存储过程,用来判断OrederTable是否有记录,再获取当前最大RowIndex