-- 作者:mamuaiqing
-- 发布时间:2012/5/3 3:03:00
-- 自动生成编号错误~求老师指导下
按日期自动生成单号,按帮助文件中的代码:
If e.DataCol.Name = "日期" Then If e.DataRow.IsNull("日期") Then e.DataRow("单号") = Nothing Else Dim bh As String = "HD" & Format(e.DataRow("日期"),"yyyyMMdd") \'取得编号的8位前缀 If e.DataRow("单号").StartsWith(bh) = False \'如果编号的前8位不符 Dim max As String Dim idx As Integer max = e.DataTable.Compute("Max(单号)","日期 = #" & e.DataRow("日期") & "#") \'取得该天的最大编号 If max > "" Then \'如果存在最大编号 idx = CInt(max.Substring(9,3)) + 1 \'获得最大编号的后三位顺序号,并加1 Else idx = 1 \'否则顺序号等于1 End If e.DataRow("单号") = bh & "-" & Format(idx,"000") End If End If End If
单号列为字符型,日期列为日期时间型
在表中第一行输入日期时单号自动生成
在表中第二行输入日期时出现截图上面的错误,求老师指导下哪里错误了 此主题相关图片如下:qq截图20120503025622.png
|