以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  无法清零  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=24096)

--  作者:wilson
--  发布时间:2012/9/29 17:49:00
--  无法清零

我想实现:当已付款=False ,余额 = 金额 - 收订金

              当已付款=True ,余额 = 0

 

Dim dr22 As DataRow = e.DataRow
Select Case e.DataCol.Name
    Case "已付款","金额","收订金","余额"
        If dr22("已付款") = False  Then 
            dr22("余额") = dr22("金额") - dr22("收订金")
        ElseIf dr22("已付款") = True Then  
            dr22("余额") = 0
        End If
End Select

 

用上述代码无法实现当已付款为非空时,余额不能清零。

不知代码哪里有错误,求助

谢谢!


--  作者:ahbzczy
--  发布时间:2012/9/29 21:26:00
--  

Dim dr22 As DataRow = e.DataRow
Select Case e.DataCol.Name
    Case "已付款","金额","收订金"
        If dr22("已付款")  Then 

             dr22("余额") = 0
       Else
            dr22("余额") = dr22("金额") - dr22("收订金")

       End If
End Select


--  作者:czy
--  发布时间:2012/9/29 21:45:00
--  

如果代码放在DataColChanged事件中,又没其它代码干扰,一楼的代码能达到要求的。

我估计是代码放错地了。


--  作者:程兴刚
--  发布时间:2012/9/29 22:57:00
--  
我认为:是否余额为0,要根据金额-订金-somfor(多次实付金额)= 0 来确定,而不是仅仅靠点击勾选来决定,那样很容易误操作,需要改变思路,更改操作流程!
--  作者:wilson
--  发布时间:2012/10/1 12:13:00
--  

非常感谢!

DataColChanged事件中


--  作者:wilson
--  发布时间:2012/10/1 12:16:00
--  

非常感谢!

版主的思路有道理