以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]子表数据变化,主表的代码不起作用 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=17620) |
||||
-- 作者:wjl-se -- 发布时间:2012/3/19 11:36:00 -- [求助]子表数据变化,主表的代码不起作用 请老师看一下,修改子表(开票明细)的开票数量时,父表的"销售完成"不能自动变化,帮忙看一下代码
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2012/3/19 12:31:00 -- 你不说清楚表与表,列与列之间的计算关系,大家也帮不上忙的。 |
||||
-- 作者:wjl-se -- 发布时间:2012/3/19 13:02:00 -- 简化一下: "订单总表"为父表,"开票明细"为子表,通过"青专订单号"建立关联;订单总表中的"开票数量"为表达式:sum(child(开票关联).开票数量);库存也是表达式=完工入库-开票数量 "订单总表"其中有一段代码如下: Select Case e.DataCol.name 以上代码为了实现自动判断订单总表中"销售完成"是否勾选 问题是:修改子表中的"开票数量"时,父表中的"开票数量"会自动变化,当满足上述代码中"生产完成" = True AndAlso "库存" <= 0的条件时,"销售完成"却不会自动勾选. 难道表达式列的数值变化不会触发上述代码的执行? |
||||
-- 作者:wjl-se -- 发布时间:2012/3/19 13:23:00 -- 还有为什么有时候重置列好用,有时没有反应呢? |
||||
-- 作者:狐狸爸爸 -- 发布时间:2012/3/19 14:05:00 -- 1、表达式列是不会触发DataColChanged事件的: 2、就你三楼的表述来说,销售完成应改为表达式列,其表达式为: 生成完成 = True And 库存 <= 0 |
||||
-- 作者:wjl-se -- 发布时间:2012/3/19 14:07:00 -- 是不是因为发生变化的列是表达式的原因? |
||||
-- 作者:wjl-se -- 发布时间:2012/3/19 14:09:00 -- 明白了,谢谢狐爸!! |