以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]关于计算重置  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=149962)

--  作者:ntqhj
--  发布时间:2020/5/16 17:43:00
--  [求助]关于计算重置
老师好!使用中,若有多列是双精度数值列,彼此通过代码实现了计算,如何用代码实现某一列单元格的数据发生变化后,其它关联列的单元格的值自动重置计算。我现在遇到的问题是,某一列单元格的数据修改后,某些列单元格的值不会根据修改的值实现自动计算,需选择相应的单元格点重置才会重新计算。望老师提供帮助。谢谢!
--  作者:sloyy
--  发布时间:2020/5/17 16:20:00
--  
你的代码写在哪里?
--  作者:ntqhj
--  发布时间:2020/5/17 17:27:00
--  
datacolchanged事件
--  作者:sloyy
--  发布时间:2020/5/17 17:47:00
--  
对呀,一般都是写在这里,没发现过不能计算的问题呀,可能你写的代码有点问题,你提交上来给大家看看吧,
--  作者:有点蓝
--  发布时间:2020/5/17 19:24:00
--  
参考:http://www.foxtable.com/webhelp/topics/1472.htm


--  作者:ntqhj
--  发布时间:2021/2/25 16:20:00
--  
老师好!不清楚代码的问题出在哪里?应收运费为重量的整倍数托运单价自动计算正确,否则托运单价在应用重新打开后托运单价会自动修改为不正确的金额。望帮助!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试计算.zip


在软件里填写不是重量整倍数时显示的托运单价是对的,只要重新打开应用就自动修改了托运单价,看不出问题在哪里呢,好像只要不是倍数就会出问题
[此贴子已经被作者于2021/2/25 16:26:38编辑过]

--  作者:有点蓝
--  发布时间:2021/2/25 17:12:00
--  
BUG,已反馈
--  作者:ntqhj
--  发布时间:2021/2/25 17:47:00
--  
此BUG修复应该很快吧! 图片点击可在新窗口打开查看 
--  作者:有点蓝
--  发布时间:2021/2/25 20:09:00
--  
临时解决方法:把托运单价改为双精度类型

--  作者:有点蓝
--  发布时间:2021/2/26 8:43:00
--  
或者都这样处理一下:

e.DataRow("托运单价") = math.round(e.DataRow("应收运费") / e.DataRow("货物重量"),4)