Select Case e.DataCol.Name
Case "委托日期", "样品编号"
If e.DataRow.IsNull("委托日期") OrElse e.DataRow.IsNull("样品编号") Then
e.DataRow("自动编号") = Nothing
Else
Dim y As String = Format(e.DataRow("委托日期"),"yyyy") '取得编号的年号
Dim bh As String = e.DataRow("样品编号") & y.SubString(2,2)'取得编号的前缀
Dim max As String=e.DataTable.Compute("Max(自动编号)","自动编号 like '" & bh & "*'") '取得该年的最大自动编号
Dim idx As Long
If max = "" Then
e.DataRow("自动编号") = bh & "-1"
Else
Dim va As String() = CStr(max).Split("-")
idx = CLng(va(1)) + 1 '获得最大编号的顺序号,并加1
e.DataRow("自动编号") = bh & "-" & idx
End If
End If
End Select
我想实现
HH13-1
HH13-2
.
.
HH13-9
HH13-10
HH13-11
...
但是
HH13-10 以后一直是 HH13-10
请教高手 帮忙分析下哪里出错了?感谢!
[此贴子已经被作者于2013-2-10 16:13:02编辑过]