五等员工漏看条件了,现加上一个,最后一个我没办法区别哪些记录是一年之内出现的警告。
Dim n,n1 As Integer
Dim dr As DataRow = e.DataRow
Select Case e.DataCol.Name
Case "开始时间","结束时间","奖惩类型"
n = DateDiff("m", dr("开始时间"), Today)
n1 = DateDiff("m", dr("开始时间"), dr("结束时间"))
If dr.IsNull("开始时间") = False And dr.IsNull("结束时间") = False
If n < 6 And dr("奖惩类型").Contains("警告") OrElse n < 3 And dr("奖惩类型") = "无"
dr("员工等级") = "五等员工"
End If
If n < 6 And n < (n1 / 5 )
dr("员工等级") = "四等员工"
End If
If n >= 6 And n > (n1 / 5 ) And dr("当年绩效分数") > 30
dr("员工等级") = "三等员工"
End If
If n > (n1 / 2 ) And dr("当年绩效分数") > 40
dr("员工等级") = "二等员工"
End If
If n > (n1 / 5 * 3 ) And dr("当年绩效分数") > 50
dr("员工等级") = "一等员工"
End If
End If
End Select