Foxtable(狐表)用户栏目专家坐堂 → [原创]目录树生成求助


  共有1765人关注过本帖平板打印复制链接

主题:[原创]目录树生成求助

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


加好友 发短信
等级:婴狐 帖子:10 积分:211 威望:0 精华:0 注册:2011/11/11 11:22:00
[原创]目录树生成求助  发帖心情 Post By:2018/8/18 18:19:00 [只看该作者]

1.套用递归函数解决了明细科目归集的问题
内部函数
Dim nd As WinForm.TreeNode = args(0)
Dim dt As DataTable = args(1)
For Each dr As DataRow In dt.Select("","ZTBH")
    Dim km As String = dr("KMBH")
    If km.StartsWith(nd.name) AndAlso km.Length = nd.Name.Length + 3 Then
        Dim cd As Winform.TreeNode = nd.Nodes.Add(km,km & " " & dr("KMMC"))
        Functions.Execute("AddChildren",cd,dt)
    End If
Next
窗口事件
Dim tr As WinForm.TreeView = e.Form.Controls("TreeView1")
Dim rts() As String = {"全部","资产","负债","权益","成本","损益(收)","损益(支)"} 
Dim nd As WinForm.TreeNode 
Dim dt As DataTable = DataTables("SJGL") 
tr.StopRedraw()
tr.Nodes.Clear
For Each rt As String In rts
    tr.Nodes.Add(rt)
Next
For Each dr As DataRow In dt.Select("","KMBH")
    If dr.IsNull("KMBH") = False AndAlso dr("KMBH").Length = 4 Then
        Dim i As Integer = CInt(dr("KMBH").Substring(0,1))
        nd = tr.Nodes(i).Nodes.Add(dr("KMBH"),dr("KMBH") & " " & dr("KMMC"))
        Functions.Execute("AddChildren",nd,dt)
    End If
Next
希望解决的问题:
1.用窗口控件选择ZTBH后,目录树只生成该单位的科目数据(现在生成目录树没有选择到单位造成重复)
2.用KMLB列的科目性质替换Dim rts() As String = {"全部","资产","负债","权益","成本","损益(收)","损益(支)"} 代码
图片点击可在新窗口打开查看此主题相关图片如下:目录树.png
图片点击可在新窗口打开查看

 回到顶部