没人接招,谢谢老朱的提示,搞定了,分享一下。
If _CheckError=False Then Return '不需检测错误则退出
'测检数据合法性
Dim r As Row = Tables(e.DataTable.name).current
If r Is Nothing Then Return
Dim cols() As String={"请购单别","请购单号","请购部门","请购日期"}
For Each col As String In cols
If r.IsNull(col) = True Then
If Forms("请购单").Opened Then
For Each c As WinForm.Control In Forms("请购单").Controls
Dim t As WinForm.Control = c
If c.BindingField > "" Then
If c.BindingField.Contains(col)=True Then
c.Error="[" & col & "]" & "不允许为空!"
_HasError=True
End If
End If
Next
End If
Else
_HasError=False
Forms("请购单").ClearErrors
End If
Next