以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  错误提示  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=43896)

--  作者:ap9709130
--  发布时间:2013/12/18 13:56:00
--  错误提示

各位高手,请看附近错误提示

 


图片点击可在新窗口打开查看此主题相关图片如下:ccyuurm}n{2pszc3sir4k.jpg
图片点击可在新窗口打开查看

 

出现这种提款一般是哪里出了问题?

代码可以正常执行,但就是会出这个东西。


--  作者:Bin
--  发布时间:2013/12/18 14:07:00
--  
你使用数值-字符串类如


120- "100"

或者
dim  d1 as string ="120"
dim d2 as double = 100
d1-d2

--  作者:ap9709130
--  发布时间:2013/12/18 14:22:00
--  

Dim ct As WinForm.TextBox = e.Form.Controls("TextBox2")
Dim Result As DialogResult
Result = MessageBox.Show("请确认该订单是否收款,如确定订单将消失!", "确认", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Result = DialogResult.Yes Then
    If ct.Value="" Then
        Tables("销售货款管理_table1").Current("收款情况")="已收款"
        Tables("销售货款管理_table1").Current("收款时间")= Date.today()
        Tables("销售货款管理_table1").Current("收款金额")= Tables("销售货款管理_table1").Current("应收总金额")
        Dim r As Row
        For Each r In Tables("销售货款管理_table2").Rows
            r("已收款金额")= r("产品数量")*r("产品销售价")
           
            r("收款情况")= "已收款"
            r("收款时间")= Date.today()
        Next
    End If
   
     If val(ct.Value) > Tables("销售货款管理_table1").Current("应收总金额") Then
       
        Tables("销售货款管理_table1").Current("收款情况")="已收款"
        Tables("销售货款管理_table1").Current("收款时间")= Date.today()
        Tables("销售货款管理_table1").Current("收款金额")= val(ct.value)
        Dim r As Row
        For Each r In Tables("销售货款管理_table2").Rows
            r("收款情况")= "已收款"
            r("已收款金额")= r("产品数量")*r("产品销售价")
            r("收款时间")= Date.today()
           
        Next
    End If
   
    If ct.value IsNot Nothing Then
      Tables("销售货款管理_table1").Current("收款金额")=  val(ct.value)
        If  val(ct.Value) < Tables("销售货款管理_table1").Current("应收总金额") Then
            Dim sum As Double = val(ct.value)
            Dim r As Row
            For Each r In Tables("销售货款管理_table2").Rows
                If sum > = r("金额") Then
                    r("收款情况")= "已收款"
                    r("已收款金额")= r("产品数量")*r("产品销售价")
                    r("收款时间")= Date.today()
                    sum = sum - r ("金额")
                End If
            Next
           
           
            If sum < r("金额") Then
                r("收款情况")= "未收款"
                r("已收款金额")= sum
                sum = 0
            End If
           
            End If
       
    End If
End If

 

BIN 老师,请帮我看一下,哪里有问题。我把表的格式都检查过。都没问题的。之前都不会出现这个错误。但后来加了

Tables("销售货款管理_table1").Current("收款金额")= val(ct.value)
这句以后出了问题,我原是写成:Tables("销售货款管理_table1").Current("收款金额")= val(ct.text)的。

但现在怎么改都不行


--  作者:Bin
--  发布时间:2013/12/18 14:24:00
--  
请检查一下列类型,有可能是你列类型就不一样. 

你这样一大坨发上来,并不能看出问题来的.例子则不同!

--  作者:ap9709130
--  发布时间:2013/12/18 15:12:00
--  

好惨啊。越改越错的多。BIN老师,请看项目。密码:kitty1010

 

两天的心血啊。

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


--  作者:Bin
--  发布时间:2013/12/18 15:15:00
--  
建议您用这个方法:
http://www.foxtable.com/help/topics/1485.htm

先找出是哪一行出错,然后分析原因,搞不定,贴出代码,并告诉我们运行到哪一行出错,以及错误提示。

--  作者:ap9709130
--  发布时间:2013/12/18 17:00:00
--  

测试的结果是这句错了。ct.Value=""

 

如何判断 文本框的值为空? 为什么原来来会出错,但加上几句和这个不相关的代码就会出错呢?

 

 


--  作者:Bin
--  发布时间:2013/12/18 17:04:00
--  
If ct.value IsNot Nothing Then
--  作者:ap9709130
--  发布时间:2013/12/18 17:28:00
--  

终于找到错误了,低级错误!哎