以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 【求助大虾】如何判断两个条件符合后,自动计算出相对于的值 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=26337) |
||||
-- 作者:wangcza -- 发布时间:2012/11/30 16:32:00 -- 【求助大虾】如何判断两个条件符合后,自动计算出相对于的值 我想做个加班统计表,加班人员的计费基数按不同的等级和不同的加班类型每小时的计费基数是不一样的,如何根据当前行的人员姓名和加班类型,自动计算出他相对于的加班每小时计费基数?详情见附件,请各位大虾帮帮忙
|
||||
-- 作者:lin_hailun -- 发布时间:2012/11/30 17:37:00 -- 大致这样。
|
||||
-- 作者:wangcza -- 发布时间:2012/11/30 21:15:00 -- 谢谢林老师的指导,但还是有些小问题,在加班通知单添加新的加班记录和加班人员选择类型是周末时,统计表只统计了周末加班小时,没有自动统计周末加班金额。单添加加班通知单类型是法定节假日的时候,没有自动统计法定节假日的小时和金额。 还有能不能设置我在添加加班通知单和加班人员的时候,一打开统计表的时候就能自己统计,不用又去调整列数据后才变动? 麻烦大虾多多指点 |
||||
-- 作者:wangcza -- 发布时间:2012/11/30 21:16:00 -- 补充上修改的数据 |
||||
-- 作者:wangcza -- 发布时间:2012/11/30 21:17:00 -- 补充上林老师帮修改后的数据
|
||||
-- 作者:lin_hailun -- 发布时间:2012/12/1 8:54:00 -- 好的,代码最后变成。 Select Case e.DataCol.Name Case "姓名" Dim dt_jiaban As DataTable = DataTables("加班人员表") Dim dt_jishu As DataTable = DataTables("加班计费基数") Dim dr_jiaban As DataRow = dt_jiaban.Find("加班人员 = \'" & e.NewValue & "\'" ) If dr_jiaban IsNot Nothing Then Dim dr_jishu As DataRow = dt_jishu.Find("职务 = \'" & dr_jiaban("职务") & "\'") e.DataRow("工作日加班_小时") = dt_jiaban.Compute("Sum(加班时长)", "加班人员 = \'" & e.NewValue & "\' And 加班类型 = \'工作日\'") / 3600 e.DataRow("工作日加班_金额") = e.DataRow("工作日加班_小时") * dr_jishu("工作日") e.DataRow("周末加班_小时") = dt_jiaban.Compute("Sum(加班时长)", "加班人员 = \'" & e.NewValue & "\' And 加班类型 = \'周末\'") / 3600 e.DataRow("周末加班_金额") = e.DataRow("周末加班_小时") * dr_jishu("周末") e.DataRow("法定节假日加班_小时") = dt_jiaban.Compute("Sum(加班时长)", "加班人员 = \'" & e.NewValue & "\' And 加班类型 = \'法定节假日\'") / 3600 e.DataRow("法定节假日加班_金额") = e.DataRow("法定节假日加班_小时") * dr_jishu("法定节假日") End If End Select |
||||
-- 作者:wangcza -- 发布时间:2012/12/1 23:42:00 -- 问题解决了,非常感谢林老师的指导,谢谢 现在正在学习你的第四讲视频,感谢你的我们这样小白的无私奉献 |