以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 更新问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=190698) |
-- 作者:lin98 -- 发布时间:2024/2/28 22:45:00 -- 更新问题 方法一 If e.DataCol.Name = "产品" Then 请在统计表设置好上述代码后,重置一次该表的产品列。 现在要求在订单表输入或修改某订单的数量后,能够即时更新统计表对应产品的数量统计值。 为此可将订单表的DataColChanged事件代码设置为: If e.DataCol.Name = "数量" Then 方法二 If e.DataCol.Name = "产品" Then 同样在统计表设置好上述代码后,请重置一次该表的产品列。 订单表的金额列是一个表达式列,其表达式为:[数量] * [单价] * (1 - [折扣]) Select Case e.DataCol.Name 方法三 If e.DataCol.Name = "产品" Then e.DataRow("金额") = DataTables("订单").Compute("Sum(金额)","[产品] = \'" & e.NewValue & "\'")
注:金额不是表达式字段 Select Case e.DataCol.Name 问题:方法一和方法二是帮助实例,方法三是自己做,也能用,以方法一、方法二相比,好象不规范,会不会有潜在问题? |
-- 作者:有点蓝 -- 发布时间:2024/2/29 8:44:00 -- 方法二和方法三基本没有什么区别,不存在什么规范问题。如果一定要区分,方法三效率稍微低一点 |