各位大神,我想从员工表中已经“onduty”或者“vacation”的人员自动填充到通讯录中,但同一个人即同一个名字的不再填充,我分别指表属性beforeload 和 datarowadding中写了如下代码,但是实现不了,名字相同其他内容如Department不同的还是填充了。
beforeLoad事件:
Dim f As New Filler
f.SourceTable = DataTables("员工") '指定数据来源
f.SourceCols = "Chinese_Name,English_Name,Personnel_Classify_Department,Personnel_Classify_Position,Company" '指定数据来源列
f.DataTable = DataTables("通讯录") '指定数据接收表
f.DataCols = "Chinese_Name,English_Name,Department,Position,Company" '指定数据接收列
f.filter="Pers And Status='Onduty' or Status='Vacation' "
f.ExcludeExistValue=True
f.Fill() '填充数据
datarowadding事件:
Dim dr As DataRow = e.DataRow
Dim dr1 As DataRow
If dr("Chinese_Name" ) IsNot Nothing Then
If e.DataTable.Compute("Count([_Identify])","Chinese_Name = '" & dr("Chinese_Name") & "'") > 1 Then
dr1 = e.DataTable.Find("Chinese_Name= '" &dr("Chinese_Name")& "'")
If dr1 IsNot Nothing Then
dr1.Delete()
End If
End If
End If