Foxtable(狐表)用户栏目专家坐堂 → [求助]关于有条件的跨表统计和自动更新


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

主题:[求助]关于有条件的跨表统计和自动更新

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


加好友 发短信
等级:四尾狐 帖子:932 积分:6531 威望:0 精华:0 注册:2014/6/25 10:48:00
[求助]关于有条件的跨表统计和自动更新  发帖心情 Post By:2014/7/1 9:31:00 [只看该作者]

老师,我有两张表:1、项目信息表,包括的列有:项目名称、合同金额_施工及监理理、合同金额_其他合同。2、合同台账,包括的列有:项目名称、合同类别,合同金额。
现在我要在"项目信息表"的"合同金额_施工及监理"列根据"合同台账"表中相同项目名称且合同类别为"工程施工合同"及"工程监理合同"自动汇总数据,并自动更新,请问相关代码怎么编写,请专家帮忙一下,非常感谢.帮助里的跨表统计和自动更新,缺少一个条件,和这不一样.
[此贴子已经被作者于2014-7-1 9:32:19编辑过]

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


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


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


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

 跨表统计和更新那里,不是可以设置条件的么?那里是一个条件,你的是两个、三个条件而已,就不会改了?

 

 真不会做,请把你的项目发上来测试。


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


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

("项目名称 = '工程施工合同' and 项目名称 = '工程监理合同'")  条件是可以自由设置的,多少个都没问题.

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


加好友 发短信
等级:四尾狐 帖子:932 积分:6531 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2014/7/1 15:27:00 [只看该作者]

请专家帮忙看一下这段代码错在哪里?
Select Case e.DataCol.Name
    Case "项目名称","工程单位名称","费用类别","费用类别1","进度金额"
        Dim drs As List(of DataRow)
        Dim Filter As String
        Filter = "[_SortKey] >= " & e.DataRow("_SortKey") & " And [项目名称] = '" & e.DataRow("项目名称") & " And [工程单位名称] = '" & e.DataRow("工程单位名称") & " And [费用类别] = '" & e.DataRow("费用类别") & " And [费用类别1] = '" & e.DataRow("费用类别1") & "'"
        drs = e.DataTable.Select(Filter)
        For Each dr As DataRow In drs
            Filter = "[_SortKey] <= " & dr("_SortKey") & " And [项目名称] = '" & dr("项目名称") & " And [工程单位名称] = '" & e.DataRow("工程单位名称") & " And [费用类别] = '" & e.DataRow("费用类别") & " And [费用类别1] = '" & e.DataRow("费用类别1") &  "'"
            Dim Val1 As Double = e.DataTable.Compute("Sum(进度金额)",Filter)
            DR("累计进度") = Val1
        Next
        If e.DataCol.Name = "项目名称" AndAlso e.OldValue IsNot Nothing AndAlso e.OldValue <> e.NewValue Then
            Filter = "[_SortKey] > " & e.DataRow("_SortKey") & " And [项目名称] = '" & e.OldValue & " And [工程单位名称] = '" & e.OldValue & " And [费用类别] = '" & e.OldValue  & " And [费用类别1] = '" & e.OldValue & "'"
            drs = e.DataTable.Select(Filter)
            For Each dr As DataRow In drs
            Filter = "[_SortKey] >= " & e.DataRow("_SortKey") & " And [项目名称] = '" & e.DataRow("项目名称") & " And [工程单位名称] = '" & e.DataRow("工程单位名称") & " And [费用类别] = '" & e.DataRow("费用类别") & " And [费用类别1] = '" & e.DataRow("费用类别1") & "'"
            Dim Val1 As Double = e.DataTable.Compute("Sum(进度金额)",Filter)
            dr("累计进度") = Val1 
            Next
        End If
End Select
在命令窗口执行后提示如下信息:
编译错误:“e”is not accessible  in this context because it is "private"
错误代码:elect Case e.DataCol.Name
请专家老师帮我修改一下,谢谢。。。。。

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


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

你代码写在哪里的?

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


加好友 发短信
等级:四尾狐 帖子:932 积分:6531 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2014/7/1 15:38:00 [只看该作者]

本表的DataColChenged
[此贴子已经被作者于2014-7-1 15:39:03编辑过]

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


加好友 发短信
等级:四尾狐 帖子:932 积分:6531 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2014/7/1 15:52:00 [只看该作者]

上传不了我的东西啊,////显示上传成功,可一个也没看见

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


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

以下是引用爱相随在2014-7-1 15:38:00的发言:
本表的DataColChenged
[此贴子已经被作者于2014-7-1 15:39:03编辑过]

 

代码没有错,是你的逻辑错了。

 

直接说你要实现什么功能吧。


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


加好友 发短信
等级:四尾狐 帖子:932 积分:6531 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2014/7/1 16:20:00 [只看该作者]

老师,我现在就三个主要问题比较难:
1、表一是汇总情况表,包括的列有:项目名称、合同金额1、合同金额2、合同金额3,表二包括的列:项目名称、施工单位、合同类别、费用类别、合同金额。现在我要在表一里根据项目名称、合同类别1、合同类别2、合同类别3的值分别填入合同金额1、合同金额2、合同金额3;
2、表三是项目进度表,包括的列有:项目名称、施工单位、费用大类,费用小类、进度金额、累计进度。现在要根据项目名称、施工单位、费用大类、费用小类自动得出累计进度,比如项目A、施工单位B、费用大项C、费用小项D,如第一次输入金额是300,得出累计进度值是300;第二次在任意行再输入相同的信息时,在输入金额前累计进度是300,输入当期(本行)进度金额200后,累计进度变为500,其他项目也一样。
3、如何实现表2合同编号根据合同类别以不同的字母开头,且自动连续编号。比如合同类别分别有:施工合同、设计合同、监理合同、服务合同等,合同编分别为SG0001、SJ0001、JL0001、FW0001开头,当输入SG时,自动增加当行编号。比如SG类合同已保存到SG0005号,再输入SG时,自动编号为SG0006。
如实现以上功能,代码怎么写啊,如老师能为我代写,非常感谢不尽。。。。同时希望老师注明在哪里编写。高手看到此信息也欢迎支援。
[此贴子已经被作者于2014-7-1 16:22:31编辑过]

 回到顶部
总数 33 1 2 3 4 下一页