Foxtable(狐表)用户栏目专家坐堂 → 求解:如何实现关联表中 表B只计算和A关联字段一样的 列的值综合


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

主题:求解:如何实现关联表中 表B只计算和A关联字段一样的 列的值综合

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
求解:如何实现关联表中 表B只计算和A关联字段一样的 列的值综合  发帖心情 Post By:2014/7/2 2:45:00 [只看该作者]

求解:如何实现现金流量计划表中 只计算与企业概况表中计划书编号关联字段一样的 列的值 的总和
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:计划书.rar
代码如下:
Dim r As Row =Tables("企业概况.企业组织").Current
Dim r2 As Row =Tables("企业概况").Current
Dim r3 As Row =Tables("企业概况.固定资产折旧流动资金").Current
Dim r4 As Row =Tables("企业概况.销售和成本计划表").Current
Select Case e.DataCol.name
    Case "月份"
        If e.DataRow.Isnull("月份") = False Then
            e.DataRow("现金流出_现金采购支出_项目1")=r3("原材料1_总费用")+r3("原材料2_总费用")+r3("原材料3_总费用")+r3("原材料4_总费用")+r3("原材料5_总费用")+r3("原材料6_总费用")
            e.DataRow("现金流出_业主工资")= r("业主或经理_月薪")
            e.DataRow("现金流出_员工工资")=r("员工1_月薪")+r("员工2_月薪")+r("员工3_月薪")
            e.DataRow("现金流出_营销费用")=r2("人员推销_成本")+r2("广告_成本")+r2("公共关系_成本")+r2("营业推广_成本")
            e.DataRow("现金流出_保险费")=r("责任1_费用")
            e.DataRow("现金流出_公用事业费")=r3("经营费用5_费用")
            e.DataRow("现金流出_维修费")=r3("经营费用6_费用")
        End If
End Select

上述代码能够实现月份变动后
自动从相关表中获取数据并计算出来, 
由于现金流量计划表是和企业概况中的计划书编号字段是关联的   
不同的计划书编号 是对应不同的现金流量计划表

现在故障出现:
不同计划书编号 不能对应只计算对应计划书编号的值 
而是计算了所有当前表当前列的值
比如原材料1总费用就计算了表  企业概况.固定资产折旧流动资金 中的所有原材料1列的所有数值
求解:如何实现关联表中 只计算计划书编号一样的 列的值

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


加好友 发短信 一级勋章
等级:狐仙 帖子:9879 积分:57634 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2014/7/2 7:59:00 [只看该作者]

很奇怪 你的关联表确定只有一行,如果只有一行,要关联表干嘛?

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(blackzhu)很奇怪 你的关联表确定只有一行,如...  发帖心情 Post By:2014/7/2 8:55:00 [只看该作者]

朱老师不是只有一行  是有12行  1到12月  现在的问题是假设编号为1的  1到12月有数据 能够单独计算出来且准确  如果连续生成编号为2的 1到12月的数据  这个字段列就会计算该字段下的所有数据 而不是只算编号为2的该字段的数据

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/7/2 9:13:00 [只看该作者]

 看了一下,你获取行的代码不能这样写。你应该这样写。比如


Dim r2 As Row = DataTables("企业概况").Find("计划书编号 = '" & e.DataRow("计划书编号") & "'")
Dim r As Row = DataTables("企业组织").Find("xxx")
Dim r3 As Row = DataTables("固定资产折旧流动资金").Find("yyy")
Dim r4 As Row = DataTables("销售和成本计划表").Find("zzz")

 


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/7/2 9:14:00 [只看该作者]

你的关联表,我都找不到有计划书编号列

 回到顶部
帅哥哟,离线,有人找我吗?
李孝春
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
有的哦 BIN老师  发帖心情 Post By:2014/7/2 9:23:00 [只看该作者]

有的哦 BIN老师 在表字段中的 比如现金流量计划表

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/7/2 9:38:00 [只看该作者]

以下是引用李孝春在2014-7-2 9:23:00的发言:
有的哦 BIN老师 在表字段中的 比如现金流量计划表

 

看4楼,你获取对应数据的时候,不能用Current,要直接根据对应关联的字段查找行。

 

Dim r2 As Row = DataTables("企业概况").Find("计划书编号 = '" & e.DataRow("计划书编号") & "'")
Dim r As Row = DataTables("企业组织").Find("xxx")
Dim r3 As Row = DataTables("固定资产折旧流动资金").Find("yyy")
Dim r4 As Row = DataTables("销售和成本计划表").Find("zzz")


 回到顶部
帅哥哟,离线,有人找我吗?
李孝春
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点甜)以下是引用李孝春在2014-7-2 9:23:00...  发帖心情 Post By:2014/7/5 2:19:00 [只看该作者]

Dim r As Row =DataTables("企业组织").Find("计划书编号 = '" & e.DataRow("计划书编号") & "'")
Dim r2 As Row = DataTables("企业概况").Find("计划书编号 = '" & e.DataRow("计划书编号") & "'")
Dim r3 As Row =DataTables("固定资产折旧流动资金").Find("计划书编号 = '" & e.DataRow("计划书编号") & "'")
Dim r4 As Row =DataTables("销售和成本计划表").Find("计划书编号 = '" & e.DataRow("计划书编号") & "'")

运行后错误如图


图片点击可在新窗口打开查看此主题相关图片如下:悄悄问问饿.jpg
图片点击可在新窗口打开查看


有点甜老师 继续求解 麻烦你

 回到顶部