以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  【求助】更改对应列值后代码不执行  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=150147)

--  作者:狐表(小白)
--  发布时间:2020/5/22 8:39:00
--  【求助】更改对应列值后代码不执行
老师,你好!代码如附件,在修改“洞高”或者“洞宽”列的值后,为什么“套线核算单价”的价格还是之前的价格,不会改变?谢谢!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:datacolchanged代码.txt



--  作者:有点蓝
--  发布时间:2020/5/22 9:12:00
--  
看不出什么问题,自己调试一下,看进入的是哪个流程,自己看看判断条件是否正确
……
           cmd3.CommandText =  "Select " &  dr("后横线计算公式") & " From {YW_销售订单明细} where [_Identify] = " & e.DataRow("_Identify") \'根据需要修改主键和表名
            dr("后横线长") = cmd3.ExecuteScalar
            dr.Save() \'必须保存一下
msgbox(1)
            \'并线单价计算
            dr("套线核算单价") = ((dr("洞高") * dr("前立线基价") * 2 + dr("洞宽") * dr("前门头基价")) + (dr("洞高") * dr("后立线基价") * 2 +dr("洞宽") * dr("后门头基价"))) * 0.001
            dr.Save() \'必须保存一下
        ElseIf (dr.IsNull("洞高")=False AndAlso dr.IsNull("洞宽")=False) AndAlso (dr.IsNull("前立线基价")=False AndAlso dr.IsNull("前门头基价")=False AndAlso dr.IsNull("后立线基价")=False AndAlso dr.IsNull("后门头基价")=False) AndAlso (dr("不并线") = True AndAlso dr("单立线") = True) Then
            dr("前立线长") = dr("洞高")
            dr("前横线长") = dr("洞宽")
            dr.Save() \'必须保存一下
msgbox(2)
            dr("套线核算单价") = (dr("洞高") * dr("前立线基价") + dr("洞宽") * dr("前门头基价")) * 0.001
            dr.Save() \'必须保存一下
        ElseIf (dr.IsNull("洞高")=False AndAlso dr.IsNull("洞宽")=False) AndAlso (dr.IsNull("前立线基价")=True AndAlso dr.IsNull("前门头基价")=True AndAlso dr.IsNull("后立线基价")=False AndAlso dr.IsNull("后门头基价")=False) AndAlso (dr("不并线") = True AndAlso dr("单立线") = True) Then
            dr("后立线长") = dr("洞高")
            dr("后横线长") = dr("洞宽")
            dr.Save() \'必须保存一下
msgbox(3)
            dr("套线核算单价") = (dr("洞高") * dr("后立线基价") + dr("洞宽") * dr("后门头基价")) * 0.001
            dr.Save() \'必须保存一下
……