
我想根据:“申报年度+卷号”=“卷内编号”为自动编号?
有两个指标数据显示自动编号:要用“申报年度”和“卷号”来显示自动编号
用法都一样的,多判断,多加一个不就行了
Select e.DataCol.Name
Case "申报年度","卷号"
If e.DataRow.IsNull("类别") orelse e.DataRow.IsNull("卷号") Then
e.DataRow("编号") = Nothing
Else
Dim lb As String = e.DataRow("申报年度") & e.DataRow("卷号")
老师,请帮我看看什么地方错了?帮我完善下嘛,谢谢了。
Select e.DataCol.Name
Case "申报年度","卷号"
If e.DataRow.IsNull("申报年度") OrElse e.DataRow.IsNull("卷号") Then
e.DataRow("本卷编号") = Nothing
Else
Dim lb As String = e.DataRow("申报年度")&e.DataRow("卷号")
If e.DataRow("本卷编号").StartsWith(lb) = False '如果单据编号前缀不符
Dim max As String
Dim idx As Integer
max = e.DataTable.Compute("Max(本卷编号)","申报年度,卷号 = '" & lb & "' And [_Identify] <> " & e.DataRow("_Identify")) '取得该类别的最大编号
If max > "" Then '如果存在最大编号
idx = CInt(max.Substring(2,3)) + 1 '获得最大编号的后三位顺序号,并加1
Else
idx = 1 '否则顺序号等于1
End If
e.DataRow("本卷编号") = lb & Format(idx,"000")
End If
End If
End Select
Select e.DataCol.Name
Case "申报年度", "卷号"
If e.DataRow.IsNull("申报年度") OrElse e.DataRow.IsNull("卷号") Then
e.DataRow("本卷编号") = Nothing
Else
Dim max As String
Dim idx As Integer
max = e.DataTable.Compute("Max(本卷编号)", "申报年度 = '" & e.DataRow("申报年度") & "' and 卷号='" & e.DataRow("卷号=") & "' And [_Identify] <> " & e.DataRow("_Identify")) '取得该类别的最大编号
If max > "" Then '如果存在最大编号
idx = CInt(max) + 1 '获得最大编号的后三位顺序号,并加1
Else
idx = 1 '否则顺序号等于1
End If
e.DataRow("本卷编号") = idx
End If
End Select