Foxtable(狐表)用户栏目专家坐堂 → [求助]跨表多条计算


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

主题:[求助]跨表多条计算

帅哥哟,离线,有人找我吗?
铜豌豆之首
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:91 积分:732 威望:0 精华:0 注册:2016/3/8 11:20:00
[求助]跨表多条计算  发帖心情 Post By:2016/9/26 21:05:00 [只看该作者]

用代码如何通过A表 条件(日期、姓名),计算出 B表 条件(日期、姓名)数量
A表                                                             B表  
         日期          姓名          金额    单价                日期                姓名      数量
 2015/06/07       张三         50       5                   2015/06/07     张三     10


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


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/26 22:09:00 [只看该作者]

参考:http://www.foxtable.com/webhelp/scr/1451.htm

表B DataColChanged事件中
Select Case e.DataCol.Name
    Case "姓名"
        If e.DataRow.Isnull("姓名") = False Then
            Dim dr As DataRow
            dr = DataTables("表A").Find("[姓名] = '" & e.NewValue & "'")
            If dr IsNot Nothing Then '如果找到了同名的产品行,也就是dr不是Nothing
                e.DataRow("数量") = dr("金额") / dr("单价")
            End If
        End If
End Select
[此贴子已经被作者于2016/9/26 22:09:10编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
铜豌豆之首
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:91 积分:732 威望:0 精华:0 注册:2016/3/8 11:20:00
  发帖心情 Post By:2016/9/27 14:38:00 [只看该作者]

要日期和姓名同时对应的总共有两个条件,我看给我的代码只有姓名一个条件

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/27 15:13:00 [只看该作者]

学好基础,看懂代码,想要什么条件自己加



 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/27 15:15:00 [只看该作者]

Select Case e.DataCol.Name
    Case "姓名","日期"
        If e.DataRow.Isnull("姓名") = False andalso e.DataRow.Isnull("日期") = False Then
            Dim dr As DataRow
            dr = DataTables("表A").Find("[姓名] = '" & e.DataRow("姓名") & "' and 日期=#" & e.DataRow("日期") & "#")
            If dr IsNot Nothing Then '如果找到了同名的产品行,也就是dr不是Nothing
                e.DataRow("数量") = dr("金额") / dr("单价")
            End If
        End If
End Select

 回到顶部