Foxtable(狐表)用户栏目专家坐堂 → 关联表的数据引用


  共有5881人关注过本帖树形打印复制链接

主题:关联表的数据引用

帅哥哟,离线,有人找我吗?
狐狸爸爸
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/8/27 12:09:00 [显示全部帖子]

这个有问题:

 If e.DataCol.name="虚给产值" ,"实产值_计件" ,"计时产值_计时" ,"总产值" ,"工资" Then

 

应该:

 

Select Case e.DataCol.name
    Case "数量","单产值","计时产值","虚给产值","负产值","姓名","日期"
        If e.DataRow.IsNull("姓名")=False AndAlso e.DataRow.IsNull("日期")=False Then
            Dim dr As DataRow = DataTables("工资统计表").Find("日期 = #" & e.DataRow("日期") & "# and 员工姓名 = '" & e.DataRow("姓名") & "'")
            If dr Is Nothing Then
                Dim dr2 As DataRow = DataTables("工资统计表").AddNew
                dr2("计件产值")=e.DataTable.Compute("sum(实产值_计件)","日期 = #" & e.DataRow("日期") & "# and 姓名 = '" & e.DataRow("姓名") & "'")
                dr2("计时产值")=e.DataTable.Compute("sum(计时产值)","日期 = #" & e.DataRow("日期") & "# and 姓名 = '" & e.DataRow("姓名") & "'")
                dr2("需给产值")=e.DataTable.Compute("sum(虚给产值)","日期 = #" & e.DataRow("日期") & "# and 姓名 = '" & e.DataRow("姓名") & "'")
                dr2("员工姓名")=e.DataRow("姓名")
                dr2("总产值")=e.DataTable.Compute("sum(总产值)","日期 = #" & e.DataRow("日期") & "# and 姓名 = '" & e.DataRow("姓名") & "'")
                dr2("日期")=e.DataRow("日期")
                dr2("工资")=e.DataTable.Compute("sum(总产值)","日期 = #" & e.DataRow("日期") & "# and 姓名 = '" & e.DataRow("姓名") & "'")*0.06
            Else
                dr("计件产值")=e.DataTable.Compute("sum(实产值_计件)","日期 = #" & e.DataRow("日期") & "# and 姓名 = '" & e.DataRow("姓名") & "'")
                dr("计时产值")=e.DataTable.Compute("sum(计时产值)","日期 = #" & e.DataRow("日期") & "# and 姓名 = '" & e.DataRow("姓名") & "'")
                dr("需给产值")=e.DataTable.Compute("sum(虚给产值)","日期 = #" & e.DataRow("日期") & "# and 姓名 = '" & e.DataRow("姓名") & "'")
                dr("总产值")=e.DataTable.Compute("sum(总产值)","日期 = #" & e.DataRow("日期") & "# and 姓名 = '" & e.DataRow("姓名") & "'")
                dr("工资")=e.DataTable.Compute("sum(总产值)","日期 = #" & e.DataRow("日期") & "# and 姓名 = '" & e.DataRow("姓名") & "'")*0.06
            End If
        End If
End Select
Select Case e.DataCol.name
    Case "虚给产值" ,"实产值_计件" ,"计时产值_计时" ,"总产值" ,"工资"
        Dim dr2 As DataRow = DataTables("员工表").Find("姓名='" & e.DataRow("姓名") & "' And 部门='精品盒'")
        If dr2 IsNot Nothing Then
            dr2("虚给产值")=e.DataTable.Compute("sum(虚给产值)","姓名='" & e.DataRow("姓名") & "'")
            dr2("实产值_计件")=e.DataTable.Compute("sum(实产值_计件)","姓名='" & e.DataRow("姓名") & "'")
            dr2("计时产值_计时")=e.DataTable.Compute("sum(计时产值_计时)","姓名='" & e.DataRow("姓名") & "'")
            dr2("总产值")=e.DataTable.Compute("sum(总产值)","姓名='" & e.DataRow("姓名") & "'")
            dr2("工资")=e.DataTable.Compute("sum(工资)","姓名='" & e.DataRow("姓名") & "'")
        End If
End Select

 

欲速则不达,你还是先看帮助系统学习吧,否则比人给你写的代码,你看都看不明白,意义何在呢?

 

看帮助一定要按顺序,头一两遍可以不求甚解,第三遍开始要将每个例子实际操作演练一遍,不明白的就上论坛求助。
三遍之后才开始做系统,先设计好表,想做什么功能,就做什么功能,遇到问题在帮助找答案,找不到的在论坛提问,不断遇到问题,不断解决问题,慢慢就熟悉了。
此外一定要先掌握《使用指南》,然后再看《开发指南》

 

[此贴子已经被作者于2013-8-27 12:10:02编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/8/27 12:18:00 [显示全部帖子]

以下是引用shadow1221在2013-8-27 12:13:00的发言:
我要是真的能看的懂开发,写的了代码,估计你们都可以失业了!

 

呵呵,其实这里的绝大多数人和你一样,都是不懂开发的,经过学习之后,很多都能开发出不错的管理系统。

foxtable的目的就是降低软件开发的门槛,让多数人能开发出适合自己的管理软件。

谁都是从不懂开始的。


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/8/28 9:38:00 [显示全部帖子]

我花了15分钟,想帮你做一下,结果差点崩溃,你最基本的概念都没有掌握,你还是回头看三遍帮助再说吧。

你在学习和设计过程遇到问题,我们可以给答疑解惑,但是不要指望我们免费从零开始给你写一个系统。


 回到顶部