以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  出错求助  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=76853)

--  作者:guning007
--  发布时间:2015/11/6 11:09:00
--  出错求助
我是2015年4月购买的开发版在Win7电脑商用,现在要在一台新电脑(Win8)上面用,新电脑上面只能下载2016版,我下载后联系客户QQ重新激活了加密狗。然后问题来了

错误信息如下:然后很多表没有加载,用户菜单也没有加载。

.NET Framework 版本:2.0.50727.5485
Foxtable 版本:2014.11.11.1
错误所在事件:项目,LoadUserSetting
详细错误信息:
未将对象引用设置到对象的实例。


我在LoadUserSetting里面输入了如下信息

If User.Type <> UserTypeEnum.Developer
    TableCaptionVisible = False
Else
    TableCaptionVisible = True
End If

Forms("正在加载用户").Open
Dim dts0 As String
For Each dt As DataTable In DataTables
    If dt.Name = "Users" OrElse dt.Name = "授权表" OrElse dt.Name = "操作日志" Then
        Continue For
    Else
        dts0 = dts0 & dt.Name & "|"
    End If
Next
Forms("背景窗口").Open()
MainTable = Tables("Users")
If dts0 <> "" Then
    dts0 = dts0.TrimEnd("|")
    DataTables.Unload(dts0)
End If

Dim dr As DataRow = DataTables("授权表").Find("[用户分组] = \'" & User.Group & "\'")
Dim dts As String
For Each dc As DataCol In DataTables("授权表").DataCols
    If dc.Caption = "" AndAlso dr(dc.Name) = True Then
        If DataTables.Contains(dc.Name) = False Then
            dts = dts & dc.Name & "|"
        Else
            dts = ""
            Exit For
        End If
    End If
Next
dts = dts.TrimEnd("|")
DataTables.Load(dts)
If Forms("正在加载用户").Opened = False Then
    Forms("正在加载用户").Open
End If
Forms("正在加载用户").Controls("提示").Text = "User Configurations Completed. Dear " & User.Name & ", Welcome."
Forms("正在加载用户").Controls("提示").Left = 40
Forms("正在加载用户").Controls("确定").Visible = True

If User.IsRole("销售录入") Then
    DataTables("客户").LoadFilter = "业务员 = \'" & User.Name & "\'"
    DataTables("客户").Load()
ElseIf User.IsRole("后台维护") OrElse User.IsRole("财务录入") Then
    DataTables("客户").LoadFilter = ""
    DataTables("客户").Load()
End If

--  作者:大红袍
--  发布时间:2015/11/6 11:11:00
--  

定位一下,哪句代码有错。

 

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

 


--  作者:大红袍
--  发布时间:2015/11/6 11:12:00
--  

一般这句代码有问题

 

Dim dr As DataRow = DataTables("授权表").Find("[用户分组] = \'" & User.Group & "\'")

If dr IsNot Nothing Then

    \'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

End If


--  作者:guning007
--  发布时间:2015/11/6 11:28:00
--  
多谢,红老师,问题找到了。