Select Case e.DataCol.Name
Case "原技术资格等级","原等级取得时间","身份证号码"
If Forms("报名审核").Opened AndAlso Forms("报名审核").Controls("TabControl1").SelectedPage.Text = "报名登记表"
If e.DataRow("鉴定等级") = "技师" Then
If e.DataRow("原技术资格等级") = "助理电力工程师" AndAlso e.DataRow("原等级取得时间") <= Date.Today.Year - 4 Then
e.DataRow("是否合格") = True
Else
e.DataRow("是否合格") = False
If e.DataRow("原技术资格等级") = "电力工程师"
e.DataRow("是否合格") = True
Else
e.DataRow("是否合格") = False
Dim fdr As DataRow = DataTables("证书编号表").Find("身份证号码 = '" & e.DataRow("身份证号码") & "' And 申报鉴定工种 = '" & e.DataRow("申报鉴定工种") & "' And 证书编号 = '" & e.DataRow("原资格证书编号") & "' And convert(substring(证书编号,1,2),'System.Int32') <= " & Date.Today.Year - 2000 - 5)
If fdr IsNot Nothing Then
e.DataRow("是否合格") = True
Else
e.DataRow("是否合格") = False
End If
End If
End If
End If
End If
End Select
版主指点:上述代码(“报名登记表”的datacolchenged事件)是否有误?我在“报名登记表”里新手动填写某员工,其"原技术资格等级"列填了“助理电气工程师”,“原等级取得时间”也满足大于4年的要求,但“是否合格”列只显示“否”;另我随意修改员工信息,让其不合格,“是否合格”列也不会变化;