Foxtable(狐表)用户栏目专家坐堂 → [求助]


  共有1848人关注过本帖树形打印复制链接

主题:[求助]

帅哥哟,离线,有人找我吗?
9602084
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:341 积分:3400 威望:0 精华:0 注册:2013/5/17 10:55:00
[求助]  发帖心情 Post By:2018/9/4 11:37:00 [只看该作者]

以下是一个生成目录树的内部函数的代码

Dim e As object = args(0)
Dim NodeTextFormat As String = args(1)

Dim DtCount As DataTable

If NodeTextFormat= "on"
    Dim q As new QueryBuilder
    q.TableName = "人数统计"
    q.C
    q.S electString = "s elect 一级,二级,三级,四级, count(*) as 人数 f rom (S elect substring(编制号,1,4) As 一级, substring(编制号,5,4) As 二级, substring(编制号,9,4) As 三级, substring(编制号,13,4) As 四级  from {" & Vars("basetable") & "}) As a group by 一级,二级,三级,四级"
    DtCount = q.build
End If


'''''生成目录树
Dim DtContents As DataTable

Dim tr As WinForm.TreeView

msgbox("调试1")

 

tr = e.Form.controls("TreeView1")
'tr = Forms("在职人员").Controls("TreeView1")

 

msgbox("调试1")

 

Dim nd As WinForm.TreeNode
Dim cmd As new SQLCommand
cmd.C
cmd.C ommandText = "S elect * from {单位目录} where 单位代码 Like '%" & SysDataRow("UserIndex").Substring(0,(1 + SysDataRow("Class"))*4) & "%'"
DtContents = cmd.ExecuteReader

tr.StopRedraw
Dim DtCols() As String = {"一级","二级","三级","四级"}
tr.Nodes.Clear
Dim sum As Integer

For Each dr As DataRow In DtContents.S elect("","单位代码")
If dr.IsNull("单位代码") = False AndAlso dr("单位代码").Length = 4 * (1 + SysDataRow("Class")) Then
nd = tr.Nodes.Add(dr("单位代码"), dr("单位名称"))
If NodeTextFormat= "on"
Dim CountFilter As String = ""
For t As Integer = 0 To nd.level + SysDataRow("Class")
CountFilter = iif(t = nd.Level + SysDataRow("Class"),CountFilter & DtCols(t) & "='" & nd.name.Substring(4*t,4) & "'",CountFilter & DtCols(t) & "='" & nd.name.Substring(4*t,4) & "' and ")
Next
sum = DtCount.Compute("sum(人数)",CountFilter)

nd.text= dr("单位名称") & "(" & iif(sum > 0 ,sum,0) & "人)"
End If
Functions.Execute("目录树递归函数",nd,DtContents,DtCount,DtCols,NodeTextFormat)
End If
Next
tr.ResumeRedraw()

上面画红线的两句代码,在以前的FT版中,开发版和发布版都能正常运行。升级8月30日的FT后,现在运行到红色代码部分时,开发版运行正常,发布的程序提示找不到控件"TreeView1",请大神们指点迷津。

[此贴子已经被作者于2018/9/4 11:49:06编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
9602084
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:341 积分:3400 威望:0 精华:0 注册:2013/5/17 10:55:00
[求助]  发帖心情 Post By:2018/9/4 11:38:00 [只看该作者]

请大神指点
 

[此贴子已经被作者于2018/9/4 11:47:47编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/4 11:50:00 [只看该作者]

1、你的问题是什么?

 

2、你调用函数的时候,把e参数传递过来了没有?


 回到顶部
帅哥哟,离线,有人找我吗?
9602084
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:341 积分:3400 威望:0 精华:0 注册:2013/5/17 10:55:00
[求助]  发帖心情 Post By:2018/9/4 11:59:00 [只看该作者]

调用了,

 

Functions.Execute("MainFormTreeLoad",e,NodeTextFormat)

 

以前都正常,现在开发程序也能正常运行,就是发布后现在运行到红色代码的时候,提示找不到控件"TreeView1",

 

改用直接调用窗口控件(红色注释部分代码)也不行

[此贴子已经被作者于2018/9/4 12:03:02编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/4 12:11:00 [只看该作者]

以下是引用9602084在2018/9/4 11:59:00的发言:

 

就是发布后现在运行到红色代码的时候,提示找不到控件"TreeView1",

 

 

[此贴子已经被作者于2018/9/4 12:03:02编辑过]

 

那就是你发布的问题。和客服核对一下你的激活码,重新发布。


 回到顶部