以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 代码计算过程中做了列数值判断,若汇率首先输入就进入死循环,如何解决? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=175976) |
-- 作者:乐乐9911 -- 发布时间:2022/3/25 15:18:00 -- 代码计算过程中做了列数值判断,若汇率首先输入就进入死循环,如何解决? 蓝老师:我用代码计算,首先录入汇率就进入死循环,我知道大概是被除数汇率作为分母的问题, 现在的用法将汇率作为最后录入,才不进入死循环。 求解? Dim dr As DataRow = e.DataRow Select Case e.DataCol.Name Case "汇率","采购成本含税价","增值税税率","采购成本不含税价折算美元" If dr.IsNull("采购成本含税价") Then dr("采购成本不含税价折算美元") = Nothing End If If dr("增值税税率")=0 Then dr("采购成本不含税价折算美元") = dr("采购成本含税价") /dr("汇率") End If If dr("增值税税率")<>0 Then dr("采购成本不含税价折算美元") = dr("采购成本含税价")/1.13 /dr("汇率") End If End Select |
-- 作者:有点蓝 -- 发布时间:2022/3/25 15:49:00 -- Case "汇率","采购成本含税价","增值税税率","采购成本不含税价折算美元" 改为 Case "汇率","采购成本含税价","增值税税率" case不要包含被赋值的列
|
-- 作者:乐乐9911 -- 发布时间:2022/3/25 15:58:00 -- 可以了,谢谢! |