出库表中,出库编号 格式定义为:QCYYYMMDD-0XX
我在出库表中定义daterowadded事件代码如下:
e.DataRow("日期") = Date.Today
e.DataRow("领取时间") = Date.Now
Dim bh As String = 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("日期") & "# And [_Identify] <> " & e.DataRow("_Identify")) '取得该天的最大出库编号
If max > "" Then '如果存在最大出库编号
idx = CInt(max.Substring(9,3)) + 1 '获得最大出库编号的后三位顺序号,并加1
Else
idx = 1 '否则顺序号等于1
End If
e.DataRow("出库编号") = "QC" & bh & "-" & Format(idx,"000")
End If
增加1行数据可以生成自动编号,但是第二行就出问题了,如下:
此主题相关图片如下:微信截图_20170826160621.png
我将系统时间修改为昨天,同样只能增加一个编号
此主题相关图片如下:2.png
请问老师,如何处理。
还有一个问题,如果不想要数据表中的“日期”字段,代码该如何写???
[此贴子已经被作者于2017/8/26 16:13:03编辑过]