以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  编排代码  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=100917)

--  作者:张子俊
--  发布时间:2017/5/21 10:02:00
--  编排代码

Select Case e.DataCol.Name
    Case "后勤","绩效标准工资","工数","实际工数"
        If e.DataRow("后勤") ="后勤"
            If e.DataRow("实际工数")> =e.DataRow("工数")
                If e.DataRow("实际工数")<6
                    If 6<e.DataRow("实际工数")<e.DataRow("工数") 
                        
                        e.DataRow("后勤绩效工资") =e.DataRow("绩效标准工资")  注:If e.DataRow("后勤") ="后勤";If e.DataRow("实际工数")> =e.DataRow("工数")


                    Else
                        e.DataRow("后勤绩效工资") =e.DataRow("绩效标准工资")*0.5  注: If e.DataRow("后勤") ="后勤"; If 6<e.DataRow("实际工数")<e.DataRow("工数") 


                    End If
                Else
                    e.DataRow("后勤绩效工资") =e.DataRow("绩效标准工资")/e.DataRow("工数")*e.DataRow("实际工数") 注:If e.DataRow("后勤") ="后勤";If e.DataRow("实际工数")<6


                End If
            Else
                e.DataRow("后勤绩效工资") = Nothing  注:后勤为空时
            End If
        End If
End Select

再帮帮忙吧,这个代码如何编排

谢谢


--  作者:有点色
--  发布时间:2017/5/22 9:57:00
--  

每种单独判断就好了。

 

Select Case e.DataCol.Name
    Case "后勤","绩效标准工资","工数","实际工数"
        If e.DataRow("后勤") ="后勤" AndAlso e.DataRow("实际工数")> =e.DataRow("工数") Then
            e.DataRow("后勤绩效工资") =e.DataRow("绩效标准工资")
        ElseIf e.DataRow("后勤") ="后勤" AndAlso 6<e.DataRow("实际工数") AndAlso e.DataRow("实际工数")<e.DataRow("工数") Then
            e.DataRow("后勤绩效工资") =e.DataRow("绩效标准工资")*0.5
        ElseIf e.DataRow("后勤") ="后勤" AndAlso e.DataRow("实际工数")<6 Then
            e.DataRow("后勤绩效工资") =e.DataRow("绩效标准工资")/e.DataRow("工数")*e.DataRow("实际工数")
        ElseIf e.DataRow.isnull("后勤") Then
            e.DataRow("后勤绩效工资") = Nothing
        End If
End Select