表A结构及数据如下:
单号 公司名称 公司代号
2019-001 上海**公司 QT
2019-002 上海**公司 QT
2019-001 深圳**公司 PI
2019-002 深圳**公司 PI
说明:一、单号可以重复,相同公司,其单号顺序增加。
二、如:首次录入“上海**公司” 单号就生成:2019-001【生成的规律为:今年中,首次录入一个公司则单号为:2019-001,即录入的年份加上“-000”,,同年第二次录入则为:2019-002;如果明年(2020)第一次录入则为:2020-001,以此类推】;
If e.DataCol.Name = "公司名称" Then
Dim bh As String = Format(Date.Today(), "yyyy")
Dim max As String
Dim idx As Integer
max =e.DataTable.Compute("Max(单号)","公司名称 = #" & e.DataRow("公司名称") & "#") '取得该天的最大编号
If max > "" Then '如果存在最大编号
idx = CInt(max.Substring(5,3)) + 1 '获得最大编号的后三位顺序号,并加1
Else
idx = 1 '否则顺序号等于1
End If
e.DataRow("单号") = bh & "-" & Format(idx,"000")
End If
这个代码提示错误,不知道正确代码如何写?