Foxtable(狐表)用户栏目专家坐堂 → 表达式求值:当所得值列被后面的列链接有表达式时,却不能的值,这是何问题?


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

主题:表达式求值:当所得值列被后面的列链接有表达式时,却不能的值,这是何问题?

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


加好友 发短信
等级:童狐 帖子:268 积分:1928 威望:0 精华:0 注册:2014/7/11 12:44:00
表达式求值:当所得值列被后面的列链接有表达式时,却不能的值,这是何问题?  发帖心情 Post By:2022/6/3 21:52:00 [只看该作者]

http://www.foxtable.com/webhelp/topics/1277.htm


假定希望根据第一列输入的计算公式,在第二列得出计算结果,可以将DataColChanged事件代码设为:

If e.DataCol.Name = "工程量表达式" Then
    If e.DataRow.IsNull("
工程量表达式"Then
        e.DataRow("
工程量") = Nothing
    Else
        e.DataRow("
工程量") = Eval(e.DataRow("工程量表达式"),e.DataRow)
    End 
If

End
 If


---------------------------

表达式求值:当所得值列被后面的列链接有表达式时,却不能的值,这是何问题?


数据列         数据列    数据列     数据列     表达式列    表达式列

第一列        第二列    第三列      第四列     第五列      第五列 

工程量表达式    工程量     人工       材料      单价       合价


表达式为:

单价=人工+材料

合价=工程量*单价


通过上述代码,工程量表达式  填写计算式“ 1+5+2 ”后,工程量列不能得出结果。 ???

但工程量列填写数字后,后面的计算式都能成立。



请问这是何问题???



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


加好友 发短信
等级:童狐 帖子:268 积分:1928 威望:0 精华:0 注册:2014/7/11 12:44:00
  发帖心情 Post By:2022/6/3 22:55:00 [只看该作者]

求助  求助  求助

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


加好友 发短信
等级:童狐 帖子:268 积分:1928 威望:0 精华:0 注册:2014/7/11 12:44:00
  发帖心情 Post By:2022/6/3 23:38:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.foxdb


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2022/6/5 7:30:00 [只看该作者]

测试没有问题,你应该是列名错了:

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目49.foxdb



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


加好友 发短信
等级:童狐 帖子:268 积分:1928 威望:0 精华:0 注册:2014/7/11 12:44:00
  发帖心情 Post By:2022/6/5 20:19:00 [只看该作者]

可是核对了下,没发现哪有问题啊
都是一样的内容,还是不行

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2022/6/5 21:02:00 [只看该作者]

你把代码写在全局表事件中了,而全局表事件默认是不生效的:



 回到顶部