以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 科目编码编码中科目类别的用户自定义 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=55020) |
||||
-- 作者:blsu33 -- 发布时间:2014/8/8 22:31:00 -- 科目编码编码中科目类别的用户自定义 老师好,烦您看一下,修改的编码,执行有错误,劳烦您帮我改改,多谢。
科目目录树递归中数组的自定义问题
教材中实例“科目类别”是数组:Dim rts() As String = {"全部","资产","负债","权益","成本","损益"} 而实际工作中是经常变化的,有的公司是 {"全部","资产","负债","权益","生产成本","收入"","成本"。。。。}
我的构造是做了一个数据表(科目类别)来反映编码名称列内容“科目类型”,如下图:
将教材中实例Dim rts() As String = {"全部","资产","负债","权益","成本","损益"}
更换为下列代码: Dim KMLX As new List(of String)
全部代码如下, Dim tr As WinForm.TreeView = e.Form.Controls("会计科目.TV") [此贴子已经被作者于2014-8-8 22:33:44编辑过]
|
||||
-- 作者:y2287958 -- 发布时间:2014/8/9 6:56:00 -- 试试这个: Dim tr As WinForm.TreeView = e.Form.Controls("会计科目.TV") Dim nd As WinForm.TreeNode
Dim dt As DataTable = DataTables("会计科目") tr.StopRedraw() tr.Nodes.Clear For Each rt As String In DataTables("科目类别").GetComboListString("编码名称").split("|") tr.Nodes.Add(rt) Next Dim gz As String = DataTables("分类编码方案").Find("基础档案名称 = \'会计科目\'")("编码规则") For Each dr As DataRow In dt.Select("","编码规则") If dr.IsNull("编码规则") = False AndAlso dr("编码规则").Length = val(gz(0)) Then Dim i As Integer = CInt(dr("编码规则").Substring(0,1)) nd = tr.Nodes(i).Nodes.Add(dr("编码规则"),dr("编码规则") & " " & dr("编码名称")) Functions.Execute("AddChildren",nd,dt,gz) End If Next tr.ResumeRedraw() |
||||
-- 作者:blsu33 -- 发布时间:2014/8/9 9:36:00 -- 老师 还是有错误
目录树的命令是下面的 是不是 有问题
Dim trv As WinForm.TreeView = e.Form.Controls("会计科目.TV") |
||||
-- 作者:Bin -- 发布时间:2014/8/9 9:39:00 -- If dr.IsNull("编码规则") = False AndAlso dr("编码规则").Length = val(gz(0)) Then Dim i As Integer = CInt(dr("编码规则").Substring(0,1)) 编码规则有空值吧
|
||||
-- 作者:blsu33 -- 发布时间:2014/8/11 8:08:00 -- 顶一个 |
||||
-- 作者:blsu33 -- 发布时间:2014/8/11 8:45:00 -- 还是有错误提示 |
||||
-- 作者:有点甜 -- 发布时间:2014/8/11 9:09:00 -- 出错的例子发上来 |
||||
-- 作者:blsu33 -- 发布时间:2014/8/11 21:31:00 --
麻烦您了 有点甜老师 |
||||
-- 作者:有点甜 -- 发布时间:2014/8/11 21:34:00 -- 怎么操作出错? |
||||
-- 作者:blsu33 -- 发布时间:2014/8/12 20:21:00 -- 教材中实例“科目类别”是数组:Dim rts() As String = {"全部","资产","负债","权益","成本","损益"} 而实际工作中是经常变化的,有的公司是 {"全部","资产","负债","权益","生产成本","收入"","成本"。。。。}
我的构造是做了一个数据表(科目类别)来反映编码名称列内容“科目类型”,如下图:
将教材中实例Dim rts() As String = {"全部","资产","负债","权益","成本","损益"}
更换为下列代码: Dim KMLX As new List(of String)
全部代码如下, Dim tr As WinForm.TreeView = e.Form.Controls("会计科目.TV") |