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


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

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

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


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

老师,我要实现的功能说明见10楼,只要给我一个例子,其他相同的我就可以自己去完成了。可惜我的测试文件上传不上来。。。。
[此贴子已经被作者于2014-7-1 16:46:05编辑过]

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


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

以下是引用爱相随在2014-7-1 16:44:00的发言:
老师,我要实现的功能说明见10楼,只要给我一个例子,其他相同的我就可以自己去完成了。可惜我的测试文件上传不上来。。。。
[此贴子已经被作者于2014-7-1 16:46:05编辑过]

 

你的例子发上来吧,你说的在帮助那里全部都是有的。

 

1、跨表统计;

 

2、流水账;

 

3、自动编号;


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


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

是什么原因啊,上传不了文件,说是上传成功,可看不见。。。

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


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

以下是引用爱相随在2014-7-2 9:26:00的发言:
是什么原因啊,上传不了文件,说是上传成功,可看不见。。。

 

试试用IE浏览器,打开,上传。


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


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

上传参考这里,要代码显示出来了才算成功http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=78

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


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

那老师就直接再给我修改代码吧
1、跨表统计
项目信息表DataColChenged代码如下:
If e.DataCol.Name = "项目名称" Then 
    e.DataRow("合同金额") = DataTables("合同台账").Compute("Sum(合同金额)","[项目名称] = '" & e.NewValue & "'") 
End If
合同台账DataColChenged代码如下:
If e.DataCol.Name = "合同金额" Then
    Dim pr As DataRow
    pr = DataTables("项目信息表").Find("项目名称 = '" & e.DataRow("项目名称") & "'")
    If pr IsNot Nothing Then
        pr("合同金额")= pr("合同金额") + e.NewValue - e.OldValue
    End If
End If
上面是跨表统计的两段代码,能够取得相关数据,和说明里的条件是一致的。现在是,上面代码是以“项目名称”为条件取数的,我要再增加条件,项目信息表里的合同金额1取自合同台账里”合同类别1“的汇总金额,就是再增加条件“合同类别”,其他条件相同,请问增加的条件代码加在哪儿呢??

[此贴子已经被作者于2014-7-2 9:48:32编辑过]

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


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

 回复16楼

 

项目信息表DataColChenged代码如下:
If e.DataCol.Name = "项目名称" Then
    e.DataRow("合同金额") = DataTables("合同台账").Compute("Sum(合同金额)","[项目名称] = '" & e.NewValue & "'")
    e.DataRow("合同金额1") = DataTables("合同台账").Compute("Sum(合同金额1)","[项目名称] = '" & e.NewValue & "'")
End If
合同台账DataColChenged代码如下:
If e.DataCol.Name = "合同金额" Then
    Dim pr As DataRow
    pr = DataTables("项目信息表").Find("项目名称 = '" & e.DataRow("项目名称") & "'")
    If pr IsNot Nothing Then
        pr("合同金额")= pr("合同金额") + e.NewValue - e.OldValue

        pr("合同金额1")= pr("合同金额1") + e.NewValue - e.OldValue
    End If
End If


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


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

2、流水账,以下是流水账代码,也能取得数据,但只是按照“项目名称”条件,如果再增加“单位名称”“费用类别”等条件,那代码是什么,加在哪儿?请老师指点,谢谢。
If e.DataCol.Name = "工程进度" Then
    Dim pr As DataRow
    pr = DataTables("项目信息表").Find("项目名称 = '" & e.DataRow("项目名称") & "'")
    If pr IsNot Nothing Then
        pr("工程进度")= pr("进度金额") + e.NewValue - e.OldValue
    End If
End If

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


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

在FIND条件里增加即可 Find("项目名称 = '" & e.DataRow("项目名称") & "' and 单位名称= '" & e.datarow("单位名称") & "'")

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


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

十分感谢信BIN老师和有点甜老师

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