Foxtable(狐表)用户栏目专家坐堂 → [求助]表达式列数据填写到另外一列中


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

主题:[求助]表达式列数据填写到另外一列中

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


加好友 发短信
等级:婴狐 帖子:35 积分:365 威望:0 精华:0 注册:2018/10/10 14:59:00
[求助]表达式列数据填写到另外一列中  发帖心情 Post By:2018/10/29 18:56:00 [只看该作者]

由于表达式列不能保存在外部数据源,但表达式列内容我想保存在外部数据库中,比如有个表达式列 金额=数量*单价,我想增加 金额1 列,使得 金额1=金额,用了代码,在datacolchanged但不成功。哪位大侠帮帮忙.

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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/10/29 19:51:00 [只看该作者]

直接把表达式列改为数据列存储。


If e.DataCol.Name = "数量" OrElse e.DataCol.Name = "单价" Then
    e.DataRow("金额") = e.DataRow("数量") * e.DataRow("单价")
End If

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


加好友 发短信
等级:婴狐 帖子:35 积分:365 威望:0 精华:0 注册:2018/10/10 14:59:00
  发帖心情 Post By:2018/10/29 20:09:00 [只看该作者]

谢谢!这个是没有问题。

但我还有一个表达式是统计关联子表求和,不用表达式很麻烦。上次也按照帮助去设置,一直没有成功,所以引入表达式列 用了统计子表函数来做


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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/10/29 20:13:00 [只看该作者]

金额列改为数据列和其他表达式,或者表达式列的使用没有什么影响吧。具体上传实例说明

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


加好友 发短信
等级:婴狐 帖子:35 积分:365 威望:0 精华:0 注册:2018/10/10 14:59:00
  发帖心情 Post By:2018/10/29 20:39:00 [只看该作者]

上面 父表 订单金额1 = 订单总金额(这个是表达式,数据源是外部数据源,没有此列,因此想到加一个订单金额1列 保存数据到外部数据源),需要这样的一段代码
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:test.table

[此贴子已经被作者于2018/10/29 20:40:08编辑过]

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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/10/29 20:45:00 [只看该作者]


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


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/10/29 20:52:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:test.table


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


加好友 发短信
等级:婴狐 帖子:35 积分:365 威望:0 精华:0 注册:2018/10/10 14:59:00
  发帖心情 Post By:2018/10/29 22:16:00 [只看该作者]

奇怪,试了很多次不行,用你的代码就OK。多谢!!!


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


加好友 发短信
等级:婴狐 帖子:35 积分:365 威望:0 精华:0 注册:2018/10/10 14:59:00
  发帖心情 Post By:2018/11/13 21:32:00 [只看该作者]

事件代码

 

If e.DataCol.Name = "订单ID" Then
    Dim Filter As String = "[关联订单ID] = '" & e.NewValue & "'"
    e.DataRow("订单金额1") = DataTables("订单明细").Compute("Sum(总价)", Filter)
End If

 

总价是公式计算,就不能汇总,是什么原因呢?请大侠明示,困扰很久。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:test.table


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


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

订单明细,datacolchanged事件

Case "小计"

改为

Case "小计","总价"

 回到顶部
总数 12 1 2 下一页