Foxtable(狐表)用户栏目专家坐堂 → 我想做一个页面集合的通用会计科目目录树,结果没有目录树显示


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

主题:我想做一个页面集合的通用会计科目目录树,结果没有目录树显示

美女呀,离线,留言给我吧!
采菊东篱下
  31楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10368 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2021/4/14 12:21:00 [只看该作者]

因为科目代码与科目间有空格,我把最后的截取字符数字加大了1:
Dim Vals() As String = e.Node.FullPath.Split("\")
Dim tr As Row
If e.Form.DropTable IsNot Nothing Then '如果下拉窗口是从表中打开
    tr = e.Form.DropTable.Current '获取此表的当前行
Else '如果下拉窗口是通过DropdownBox打开
    Dim nm As String = e.Form.DropDownBox.BindingField '获取绑定的字段
    nm = nm.Split(".")(0) '获取绑定的表名
    tr = Tables(nm).Current '获取此表的当前行
End If
e.Form.DropDownBox.Value = Vals(0)
If e.Form.DropTable IsNot Nothing Then
    Select Case e.Form.DropTable.Name
        Case "财务数据源","收付转财务数据源"
            Select Case e.Node.Level
                Case 0
                    tr("会计科目") = Vals(0)
                    tr("二级科目") = Nothing
                    tr("三级科目") = Nothing
                    tr("四级科目") = Nothing
                    tr("五级科目") = Nothing
                    e.Form.DropDownBox.Value = tr("会计科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 1
                    tr("会计科目") = Vals(0)
                    tr("二级科目") = Vals(1).SubString(9,Vals(1).Length - 9)
                    tr("三级科目") = Nothing
                    tr("四级科目") = Nothing
                    tr("五级科目") = Nothing
                    e.Form.DropDownBox.Value = tr("会计科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 2
                    tr("会计科目") = Vals(0)
                    tr("二级科目") = Vals(1).SubString(8,Vals(1).Length - 8)
                    tr("三级科目") = Vals(2).SubString(13,Vals(2).Length - 13)
                    tr("四级科目") = Nothing
                    tr("五级科目") = Nothing
                    e.Form.DropDownBox.Value = tr("会计科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 3
                    tr("会计科目") = Vals(0)
                    tr("二级科目") = Vals(1).SubString(8,Vals(1).Length - 8)
                    tr("三级科目") = Vals(2).SubString(12,Vals(2).Length - 12)
                    tr("四级科目") = Vals(3).SubString(17,Vals(3).Length - 17)
                    tr("五级科目") = Nothing
                    e.Form.DropDownBox.Value = tr("会计科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 4
                    tr("会计科目") = Vals(0)
                    tr("二级科目") = Vals(1).SubString(8,Vals(1).Length - 8)
                    tr("三级科目") = Vals(2).SubString(12,Vals(2).Length - 12)
                    tr("四级科目") = Vals(3).SubString(16,Vals(3).Length - 16)
                    tr("五级科目") = Vals(4).SubString(21,Vals(4).Length - 21)
                    e.Form.DropDownBox.Value = tr("会计科目")
                    e.Form.DropDownBox.CloseDropdown()
            End Select
        Case "记账凭证_Table1","转账凭证_Table1"
            Select Case e.Node.Level
                Case 0
                    tr("会计科目") = Vals(0)
                    Vals(1) = Nothing
                    Vals(2) = Nothing
                    Vals(3) = Nothing
                    Vals(4) = Nothing
                    tr("明细科目") = Nothing
                    e.Form.DropDownBox.Value = tr("会计科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 1
                    tr("会计科目") = Vals(0)
                    Vals(2) = Nothing
                    Vals(3) = Nothing
                    Vals(4) = Nothing
                    tr("明细科目") = Vals(1).SubString(9,Vals(1).Length - 9)
                    e.Form.DropDownBox.Value = tr("会计科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 2
                    tr("会计科目") = Vals(0)
                    Vals(3) = Nothing
                    Vals(4) = Nothing
                    tr("明细科目") = Vals(1).SubString(8,Vals(1).Length - 8) & "-" & Vals(2).SubString(13,Vals(2).Length - 13)
                    e.Form.DropDownBox.Value = tr("会计科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 3
                    tr("会计科目") = Vals(0)
                    Vals(4) = Nothing
                    tr("明细科目") = Vals(1).SubString(8,Vals(1).Length - 8) & "-" & Vals(2).SubString(12,Vals(2).Length - 12) & "-" & Vals(3).SubString(17,Vals(3).Length - 17)
                    e.Form.DropDownBox.Value = tr("会计科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 4
                    tr("会计科目") = Vals(0)
                    tr("明细科目") = Vals(1).SubString(8,Vals(1).Length - 8) & "-" & Vals(2).SubString(12,Vals(2).Length - 12) & "-" & Vals(3).SubString(16,Vals(3).Length - 16) & "-" & Vals(4).SubString(21,Vals(4).Length - 21)
                    e.Form.DropDownBox.Value = tr("会计科目")
                    e.Form.DropDownBox.CloseDropdown()
            End Select

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  32楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10368 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2021/4/14 12:21:00 [只看该作者]

        Case "收款凭证_Table1"
            Select Case e.Node.Level
                Case 0
                    tr("贷方科目") = Vals(0)
                    Vals(1) = Nothing
                    Vals(2) = Nothing
                    Vals(3) = Nothing
                    Vals(4) = Nothing
                    tr("明细科目") = Nothing
                    e.Form.DropDownBox.Value = tr("贷方科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 1
                    tr("贷方科目") = Vals(0)
                    Vals(2) = Nothing
                    Vals(3) = Nothing
                    Vals(4) = Nothing
                    tr("明细科目") = Vals(1).SubString(9,Vals(1).Length - 9)
                    e.Form.DropDownBox.Value = tr("贷方科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 2
                    tr("贷方科目") = Vals(0)
                    Vals(3) = Nothing
                    Vals(4) = Nothing
                    tr("明细科目") = Vals(1).SubString(8,Vals(1).Length - 8) & "-" & Vals(2).SubString(13,Vals(2).Length - 13)
                    e.Form.DropDownBox.Value = tr("贷方科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 3
                    tr("贷方科目") = Vals(0)
                    Vals(4) = Nothing
                    tr("明细科目") = Vals(1).SubString(8,Vals(1).Length - 8) & "-" & Vals(2).SubString(12,Vals(2).Length - 12) & "-" & Vals(3).SubString(17,Vals(3).Length - 17)
                    e.Form.DropDownBox.Value = tr("贷方科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 4
                    tr("贷方科目") = Vals(0)
                    tr("明细科目") = Vals(1).SubString(8,Vals(1).Length - 8) & "-" & Vals(2).SubString(12,Vals(2).Length - 12) & "-" & Vals(3).SubString(16,Vals(3).Length - 16) & "-" & Vals(4).SubString(21,Vals(4).Length - 21)
                    e.Form.DropDownBox.Value = tr("贷方科目")
                    e.Form.DropDownBox.CloseDropdown()
            End Select
        Case "付款凭证_Table1"
            Select Case e.Node.Level
                Case 0
                    tr("借方科目") = Vals(0)
                    Vals(1) = Nothing
                    Vals(2) = Nothing
                    Vals(3) = Nothing
                    Vals(4) = Nothing
                    tr("明细科目") = Nothing
                    e.Form.DropDownBox.Value = tr("借方科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 1
                    tr("借方科目") = Vals(0)
                    Vals(2) = Nothing
                    Vals(3) = Nothing
                    Vals(4) = Nothing
                    tr("明细科目") = Vals(1).SubString(9,Vals(1).Length - 9)
                    e.Form.DropDownBox.Value = tr("借方科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 2
                    tr("借方科目")= Vals(0)
                    Vals(3) = Nothing
                    Vals(4) = Nothing
                    tr("明细科目") = Vals(1).SubString(8,Vals(1).Length - 8) & "-" & Vals(2).SubString(13,Vals(2).Length - 13)
                    e.Form.DropDownBox.Value = tr("借方科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 3
                    tr("借方科目") = Vals(0)
                    Vals(4) = Nothing
                    tr("明细科目") = Vals(1).SubString(8,Vals(1).Length - 8) & "-" & Vals(2).SubString(12,Vals(2).Length - 12) & "-" & Vals(3).SubString(17,Vals(3).Length - 17)
                    e.Form.DropDownBox.Value = tr("借方科目")
                    e.Form.DropDownBox.CloseDropdown()
                Case 4
                    tr("借方科目") = Vals(0)
                    tr("明细科目") = Vals(1).SubString(8,Vals(1).Length - 8) & "-" & Vals(2).SubString(12,Vals(2).Length - 12) & "-" & Vals(3).SubString(16,Vals(3).Length - 16) & "-" & Vals(4).SubString(21,Vals(4).Length - 21)
                    e.Form.DropDownBox.Value = tr("借方科目")
                    e.Form.DropDownBox.CloseDropdown()
            End Select
    End Select
End If
但还是不行。

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  33楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10368 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2021/4/14 12:24:00 [只看该作者]

原来只写到tr("借方科目") = Vals(0),然后  tr("明细科目") = Nothing,重新点选一级科目后已存在的明细科目不为空,改为现在的样子依然不行。

 回到顶部
帅哥,在线噢!
有点蓝
  34楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

认真看看29楼,再认真看看自己资产类科目目录树的点击代码

tr("二级科目") = Nothing

不是:

Vals(1) = Nothing


 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  35楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10368 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2021/4/14 14:07:00 [只看该作者]

不是说了收付转凭证中根本不存在二级、三级、四级科目、五级科目的,只有在保存凭证时用代码把凭证中的科目再分列保存到收付转财务数据源的中,因此收、付、转的科目目录树只去到二级节字,各级的科目用连接线相隔。

 回到顶部
帅哥,在线噢!
有点蓝
  36楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106117 积分:539696 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/4/14 14:10:00 [只看该作者]

不存在就赋值为空值

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  37楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10368 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2021/4/14 14:15:00 [只看该作者]

明细科目已经赋值为空了Nothing了,操作时只要选过有明细科目的科目重选一级科目,明细科目没清为空。

 回到顶部
帅哥,在线噢!
有点蓝
  38楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106117 积分:539696 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/4/14 14:20:00 [只看该作者]

肯定代码里没有清空

 回到顶部
美女呀,离线,留言给我吧!
采菊东篱下
  39楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1881 积分:10368 威望:0 精华:0 注册:2019/4/6 8:45:00
  发帖心情 Post By:2021/4/14 14:21:00 [只看该作者]

而且
If e.Form.DropTable IsNot Nothing Then
    Select Case e.Form.DropTable.Name
        Case "财务数据源","收付转财务数据源"
            Select Case e.Node.Level
财务数据源表和收付转财务数据源表共用同样代码,财务数据源表的负债、所有者权益、损益目录树没问题,收付转财务数据源表的负债、所有者权益、损益目录树不能用,这是何解?

 回到顶部
帅哥,在线噢!
有点蓝
  40楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

负债、所有者权益、损益目录树点击事件没有Case "财务数据源","收付转财务数据源",只有Case "财务数据源"

 回到顶部
总数 50 上一页 1 2 3 4 5 下一页