Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共12 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:求教

1楼
hejfen 发表于:2009/2/5 9:25:00
在表“考核表”中填入“月份”、“姓名”,自动填入“正常工作日_小时“等的统计数据,请问代码如何写?是易表中用刷新公式:SumFor("加班人员表","合计加班天数","实际加班人员姓名","=",[姓名],"加班类型","=","正常工作日","单位"," = ","小时","月份"," = ",[月份])就行了。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:加班表.table

2楼
狐狸爸爸 发表于:2009/2/5 10:22:00
例如:

Dim dr As DataRow = e.DataRow
Dim dt As DataTable =DataTables("加班人员表")
If e.DataCol.Name = "月份"  OrElse  e.DataCol.Name = "姓名"  Then
    If e.DataRow.IsNull("月份") OrElse e.DataRow.IsNull("姓名") Then
        e.DataRow("正常工作日加班_小时") = Nothing
        '...清空其他计算字段
    Else
        e.DataRow("正常工作日加班_小时") = dt.Compute("Sum(合计加班时间)","[月份] = '" & dr("月份") & "' And [实际加班人员姓名] = '" & dr("姓名") & "'")
        '...计算其他字段
    End if
End If
3楼
smileboy 发表于:2009/2/5 10:23:00
Dim dr As DataRow = e.DataRow
Dim dt As DataTable =DataTables("加班人员表")
If e.DataCol.Name = "月份" OrElse e.DataCol.Name = "姓名"
    if e.DataRow.IsNull("月份") OrElse e.DataRow.IsNull("姓名") Then
        e.DataRow("正常工作日加班_小时") = Nothing
    Else
        e.DataRow("正常工作日加班_小时") = dt.Compute("Sum(合计加班时间)","[月份] = '" & dr("月份") & "' And [实际加班人员姓名] = '" & dr("姓名") & "'")
    End If
End If
4楼
hejfen 发表于:2009/2/5 12:03:00

还有二个个条件,是加班人员表的“加班类型”=“正常工作日”、“单位”=“小时”

5楼
smileboy 发表于:2009/2/5 12:05:00
自己加上吧
6楼
程兴刚 发表于:2009/2/5 12:08:00
Dim dr As DataRow = e.DataRow
Dim dt As DataTable =DataTables("加班人员表")
If e.DataCol.Name = "月份" OrElse e.DataCol.Name = "姓名"
    if e.DataRow.IsNull("月份") OrElse e.DataRow.IsNull("姓名") Then
        e.DataRow("正常工作日加班_小时") = Nothing
    Else
        e.DataRow("正常工作日加班_小时") = dt.Compute("Sum(合计加班时间)","[月份] = '" & dr("月份") & "' And [实际加班人员姓名] = '" & dr("姓名") &  "' And [加班类型] = '" & dr("正常工作日") & "' And [单位] = '" & dr("小时") &"'")
    End If
End If



不知是否正确,没有测试!
7楼
hejfen 发表于:2009/2/5 14:56:00

出错,因为该表没有“加班类型”列和“单位”列

8楼
程兴刚 发表于:2009/2/5 15:09:00
以下是引用hejfen在2009-2-5 14:56:00的发言:

出错,因为该表没有“加班类型”列和“单位”列



    真是晕,您4楼怎么说的,不是您要增加条件吗?您添加那两个列不就可以了?

9楼
hejfen 发表于:2009/2/5 15:37:00

 And [加班类型] = '" & dr("正常工作日") & "' And [单位] = '" & dr("小时") &"'")  就是这里搞不懂啊,
是不是要改成dt("加班类型")[单位]改成dt("单位"),但都是出错啊。

10楼
狐狸爸爸 发表于:2009/2/5 15:42:00
呵呵,磨刀不砍柴工,你不应该现在就急于设计项目,而是需要在反复看几次帮助,特别是关于动态合成表达式的。

e.DataRow("正常工作日加班_小时") = dt.Compute("Sum(合计加班时间)","[月份] = '" & dr("月份") & "' And [实际加班人员姓名] = '" & dr("姓名") & "' And [加班类型] = '正常工作日' And [单位] = '小时'"
共12 条记录, 每页显示 10 条, 页签: [1] [2]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03711 s, 3 queries.