Foxtable(狐表)用户栏目专家坐堂 → 目录树导出到表


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

主题:目录树导出到表

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19390 威望:0 精华:1 注册:2008/9/12 9:19:00
目录树导出到表  发帖心情 Post By:2016/1/10 10:17:00 [只看该作者]

窗口1的目录树会导出,窗口2的目录树搞不定,请求帮助

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:目录树与表转换.zip


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/1/10 11:04:00 [只看该作者]

'删除所有行
DataTables("表B").DataRows.Clear
DataTables("表B").ResumeRedraw
DataTables("表B").StopRedraw
Dim trv As WinForm.TreeView = e.form.Controls("TreeView2")
For Each nd As WinForm.TreeNode In trv.AllNodes
    If nd.nodes.Count = 0 Then
        Dim ary() As String = nd.FullPath.split(new Char() {"\", " "})
        If ary.length = 6 Then
            Dim ndr As DataRow = DataTables("表B").addnew
            ndr("分类代码") = ary(0)
            ndr("产品分类") = ary(1)
            ndr("型号代码") = ary(2)
            ndr("型号") = ary(3)
            ndr("规格") = ary(4)
            ndr("产品代码") = ary(5)
        End If
    End If
Next

DataTables("表B").ResumeRedraw


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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19390 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2016/1/10 12:43:00 [只看该作者]

OK,谢谢

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19390 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2020/2/4 11:11:00 [只看该作者]

图3
图片点击可在新窗口打开查看此主题相关图片如下:snap3.jpg
图片点击可在新窗口打开查看
图2
图片点击可在新窗口打开查看此主题相关图片如下:snap2.jpg
图片点击可在新窗口打开查看
图1
图片点击可在新窗口打开查看此主题相关图片如下:snap4.jpg
图片点击可在新窗口打开查看


图1是目录树结构
图2是想要导出的结果
图3是下面代码导出的结果
问题在型号规格列
DataTables("表C").DataRows.Clear
DataTables("表C").ResumeRedraw
DataTables("表C").StopRedraw
Dim trv As WinForm.TreeView = e.form.Controls("材料目录")
For Each nd As WinForm.TreeNode In trv.AllNodes
    If nd.nodes.Count = 0 Then
        Dim ary() As String = nd.FullPath.split(new Char() {"\", " "})
        If ary.length = 7 Then
            Dim ndr As DataRow = DataTables("表C").addnew
ndr("分类代码") = ary(0)
ndr("材料分类") = ary(1)
ndr("名称代码") = ary(2)
ndr("材料名称") = ary(3)
ndr("型规代码") = ary(4)
ndr("型号规格") = ary(5)
ndr("材料代码") = ary(6)      
        End If
    End If
Next
DataTables("表C").ResumeRedraw
Tables("表C").OpenView("1")

DataTables("表C").DataCols("型规代码").RaiseDataColChanged()


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


加好友 发短信
等级:超级版主 帖子:107813 积分:548416 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/4 11:23:00 [只看该作者]

截图的列名和代码的列名对不上号,看看是不是这样

ndr("分类代码") = ary(0)
ndr("材料分类") = ary(1)
ndr("名称代码") = ary(2)
ndr("材料名称") = ary(3)
ndr("型号规格") = ary(5) & " " & ary(6) 
ndr("材料代码") = ary(4) 

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19390 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2020/2/4 12:13:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:snap6.jpg
图片点击可在新窗口打开查看

耐火和绝缘目录树结构不一样

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19390 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2020/2/4 13:05:00 [只看该作者]

结果耐火节点可以导出,绝缘节点不能导出

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


加好友 发短信
等级:超级版主 帖子:107813 积分:548416 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/4 13:38:00 [只看该作者]

分开2段代码判断一下,如果是绝缘,判断ary.length = 6

 If ary.length = 7 Then

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19390 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2020/2/4 14:07:00 [只看该作者]

OK谢谢


 回到顶部