再改一下
Dim cr As Row = CurrentTable.Current
If CurrentTable.DataTable.Compute("sum(第三列)","第一列='" & cr("第一列") & "'") =1 Then
With CurrentTable
Dim r As Integer
Dim ary() As String = cr("第一列").split("-")
r = .Find(ary(0) & "-" & Format((cint(ary(1))+1), "000"), 0, "第一列", False, False, True)
If r > - 1 Then '如果找到符合条件的行
.Select(r,2,r,2)
If CurrentTable.current.isnull("第五列") Then
DataTables("表A").AllowEdit = False
Else
.StartEditing
End If
End If
End With
Else If CurrentTable.DataTable.Compute("sum(第三列)","第一列='" & cr("第一列") & "'") < 1 And CurrentTable.current("第二列") IsNot Nothing And CurrentTable.current("第三列") < >0 And CurrentTable.current("第四列") < >0 Then
With CurrentTable
.Position = .Position + 1
If CurrentTable.current.isnull("第五列") Then
DataTables("表A").AllowEdit = False
Else
.StartEditing
End If
End With
Else
If CurrentTable.current.isnull("第五列") Then
DataTables("表A").AllowEdit = False
End If
End If
If Tables("表A").AllowEdit Then
ridx = 1
e.Form.Controls("RecordGrid1").basecontrol.Select(1, 1)
e.Form.Controls("RecordGrid1").basecontrol.StartEditing
End If