以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]未将对象引用设置到对象的实例。  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=48304)

--  作者:viking
--  发布时间:2014/3/26 22:29:00
--  [求助]未将对象引用设置到对象的实例。

.NET Framework 版本:2.0.50727.5477
Foxtable 版本:2014.3.8.1
错误所在事件:利润单,CurrentChanged
详细错误信息:
未将对象引用设置到对象的实例。

 

 

e.Form.Controls("查询利润单").Text = e.Form.Controls("查询利润单").Text.Replace("*","")
Dim txt As String = e.Form.Controls("查询利润单").Text
Dim tbl As Table = Tables("利润单")
If txt = "" Then
    tbl.Filter = ""
Else
    txt = "\'*" & txt & "*\'"
    tbl.Filter =" 业务负责 Like " & txt
End If

 

 

刚开始没有问题,运行了有一个月竟然出现这个问题,帮忙看下!!


--  作者:有点甜
--  发布时间:2014/3/26 22:33:00
--  

这样改一下看看:

 

if e.Form.Controls("查询利润单").Text >"" then

    e.Form.Controls("查询利润单").Text = e.Form.Controls("查询利润单").Text.Replace("*","")

end if

Dim txt As String = e.Form.Controls("查询利润单").Text
Dim tbl As Table = Tables("利润单")
If txt = "" Then
    tbl.Filter = ""
Else
    txt = "\'*" & txt & "*\'"
    tbl.Filter =" 业务负责 Like " & txt
End If


--  作者:viking
--  发布时间:2014/3/26 22:39:00
--  
以下是引用有点甜在2014-3-26 22:33:00的发言:

这样改一下看看:

 

if e.Form.Controls("查询利润单").Text >"" then

    e.Form.Controls("查询利润单").Text = e.Form.Controls("查询利润单").Text.Replace("*","")

end if

Dim txt As String = e.Form.Controls("查询利润单").Text
Dim tbl As Table = Tables("利润单")
If txt = "" Then
    tbl.Filter = ""
Else
    txt = "\'*" & txt & "*\'"
    tbl.Filter =" 业务负责 Like " & txt
End If

问题依旧。。。。


--  作者:有点甜
--  发布时间:2014/3/26 22:48:00
--  

你贴不是利润表的CurrentChanged事件吧?

错误提示是利润表的CurrentChanged事件出错,你贴的似乎是一个窗口事件。


--  作者:viking
--  发布时间:2014/3/26 22:57:00
--  
以下是引用有点甜在2014-3-26 22:48:00的发言:

你贴不是利润表的CurrentChanged事件吧?

错误提示是利润表的CurrentChanged事件出错,你贴的似乎是一个窗口事件。

是的,窗口中查询的TextBox


--  作者:有点甜
--  发布时间:2014/3/26 22:59:00
--  

错误提示告诉你出错的是:

 

.NET Framework 版本:2.0.50727.5477
Foxtable 版本:2014.3.8.1
错误所在事件:利润单,CurrentChanged
详细错误信息:
未将对象引用设置到对象的实例。

 

 


你为么子贴TextBox事件,误导人?

[此贴子已经被作者于2014-3-26 22:59:01编辑过]

--  作者:viking
--  发布时间:2014/3/26 23:07:00
--  

If Forms("营业报账").Opened
    Dim b As WinForm.Button = Forms("营业报账").Controls("新增利润明细按键")
    Select Case e.Table.Current("订单状态")
        Case "2-财务审核","3-业务审核","4-订单完成"
            b.Enabled = False
        Case Else
            b.Enabled = True
    End Select
End If
If Forms("营业报账").Opened
    Dim b As WinForm.Button = Forms("营业报账").Controls("删除当前行按键")
    Select Case e.Table.Current("订单状态")
        Case "2-财务审核","3-业务审核","4-订单完成"
            b.Enabled = False
        Case Else
            b.Enabled = True
    End Select
End If

 

利润单,CurrentChanged的给看看!谢谢,没有别的意思。

 


--  作者:有点甜
--  发布时间:2014/3/26 23:09:00
--  

你要考虑没有当前行的情况:

 

If Forms("营业报账").Opened
    Dim b As WinForm.Button = Forms("营业报账").Controls("新增利润明细按键")
    Select Case e.Table.Current("订单状态")
        Case "2-财务审核","3-业务审核","4-订单完成"
            b.Enabled = False
        Case Else
            b.Enabled = True
    End Select
End If
If e.Table.Current IsNot Nothing Then
    If Forms("营业报账").Opened
        Dim b As WinForm.Button = Forms("营业报账").Controls("删除当前行按键")
        Select Case e.Table.Current("订单状态")
            Case "2-财务审核","3-业务审核","4-订单完成"
                b.Enabled = False
            Case Else
                b.Enabled = True
        End Select
    End If
End If


--  作者:有点甜
--  发布时间:2014/3/26 23:10:00
--  

学一下调试分析的方法:

http://www.foxtable.com/help/topics/1485.htm

 

一般可以自己解决这种普通的问题。


--  作者:viking
--  发布时间:2014/3/26 23:13:00
--  
以下是引用有点甜在2014-3-26 23:10:00的发言:

学一下调试分析的方法:

http://www.foxtable.com/help/topics/1485.htm

 

一般可以自己解决这种普通的问题。

对啊,只有每次输入的条件,表中没有的时候才会出现这个情况,明白了,谢谢!!