1、项目事件MainTableChanged加上代码:
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
2、除以3600,就是你要的小时数。
3、看看如何打印关联表:
http://www.foxtable.com/help/topics/0204.htm