以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  发布后不能使用  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=116260)

--  作者:nncchh
--  发布时间:2018/3/21 22:47:00
--  发布后不能使用

win7系统,高开版发帖前各窗体打开没有问题,发布后打开窗体出现以下问题,请帮助解决同,还有,发布后在win10系统打不开。

.NET Framework 版本:2.0.50727.8762
Foxtable 版本:2018.3.9.1
错误所在事件:窗口,矫正统计,AfterLoad
详细错误信息:
未将对象引用设置到对象的实例。

 

Dim s As Integer
Dim Filter As String
If e.Form.Controls("TextBox2").Value IsNot Nothing Then
    s = e.Form.Controls("TextBox2").Value
Else
    s = 20
End If
If user.Type = UserTypeEnum.User Then
    If Functions.Execute("sq","调解机构管理","调解机构审核") Then
        Filter = ""
    Else
        Filter = "主管单位 = \'" & user.Group & "\'"
    End If
Else
    Filter = ""
End If

Dim dt As DataTable
Dim b As New SQLGroupTableBuilder("统计表1","调解机构表")
b.C
b.Groups.AddDef("主管单位")
b.Filter = Filter
b.Totals.AddDef("_Identify",AggregateEnum.Count,"人数") \'根据主键列来统计记录数,也就是订单数
dt = b.Build(True) \'参数设置为True,生成一个临时表,不在主界面显示
\'然后根据统计表生成目录树
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt, "主管单位")
trv.StopRedraw
For Each nd As WinForm.TreeNode In trv.AllNodes
    Dim dw As String = nd.DataRow("主管单位")
    Select Case nd.Level
        Case 0
            nd.Text = nd.text & "(" & dt.Compute("Sum(人数)","主管单位 = \'" & dw & "\'") & "条)"
    End Select
Next
trv.Nodes.Insert("加载所有行","加载所有行(" & dt.Compute("Sum(人数)") & "条)",0)
trv.ResumeRedraw

With DataTables("调解机构表")
    .LoadFilter = Filter  \'设置加载条件
    .LoadPage = 0 \'加载第一页
    .LoadTop = s \'每页5行
    .Load()
    e.Form.Controls("TextBox1").Value = 1 & "/" & .TotalPages
End With


[此贴子已经被作者于2018/3/24 22:21:30编辑过]

--  作者:有点甜
--  发布时间:2018/3/21 23:03:00
--  

贴出你afterLoad事件代码看看。

 

不应该是发布前后问题,应该是发布后数据不同导致的错误。


--  作者:nncchh
--  发布时间:2018/3/24 22:23:00
--  发布后不能使用

Dim s As Integer
Dim Filter As String
If e.Form.Controls("TextBox2").Value IsNot Nothing Then
    s = e.Form.Controls("TextBox2").Value
Else
    s = 20
End If
If user.Type = UserTypeEnum.User Then
    If Functions.Execute("sq","调解机构管理","调解机构审核") Then
        Filter = ""
    Else
        Filter = "主管单位 = \'" & user.Group & "\'"
    End If
Else
    Filter = ""
End If

Dim dt As DataTable
Dim b As New SQLGroupTableBuilder("统计表1","调解机构表")
b.C
b.Groups.AddDef("主管单位")
b.Filter = Filter
b.Totals.AddDef("_Identify",AggregateEnum.Count,"人数") \'根据主键列来统计记录数,也就是订单数
dt = b.Build(True) \'参数设置为True,生成一个临时表,不在主界面显示
\'然后根据统计表生成目录树
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree(dt, "主管单位")
trv.StopRedraw
For Each nd As WinForm.TreeNode In trv.AllNodes
    Dim dw As String = nd.DataRow("主管单位")
    Select Case nd.Level
        Case 0
            nd.Text = nd.text & "(" & dt.Compute("Sum(人数)","主管单位 = \'" & dw & "\'") & "条)"
    End Select
Next
trv.Nodes.Insert("加载所有行","加载所有行(" & dt.Compute("Sum(人数)") & "条)",0)
trv.ResumeRedraw

With DataTables("调解机构表")
    .LoadFilter = Filter  \'设置加载条件
    .LoadPage = 0 \'加载第一页
    .LoadTop = s \'每页5行
    .Load()
    e.Form.Controls("TextBox1").Value = 1 & "/" & .TotalPages
End With


--  作者:有点甜
--  发布时间:2018/3/25 17:40:00
--  

1、加入msgbox定位出错位置

 

http://www.foxtable.com/webhelp/scr/1485.htm

 

2、一般是因为你表格没有数据导致的


--  作者:nncchh
--  发布时间:2018/3/25 22:02:00
--  

检查了,发布前没问题,发布后出现上述问题


--  作者:有点甜
--  发布时间:2018/3/25 23:09:00
--  
以下是引用nncchh在2018/3/25 22:02:00的发言:

检查了,发布前没问题,发布后出现上述问题

 

加入msgbox定位出错位置,哪句代码报错?一般是因为你表格没有数据导致的,你发布前、发布后的数据有可能不同。

 

http://www.foxtable.com/webhelp/scr/1485.htm