说明:
我有两个表:“单位表” 字段:[单位编号]、[单位名称] 、[级码],(父表,以前两个字段与下面子表关联)
“员工表”字段:[单位编号]、[工作单位]
单位编号的格式:111222333444555,其中111为一级单位,222为二级单位,依此类推。
意图:
单位表通过
GenerateTree建立目录树,实现了以下目录显示,但111与222级在子表中无记录,我需要在点击222时,将子表[单位编号]前6个字符为“111222”的均显示。
111
+222
+333
在treeview事件中的nodemouseclick加入如下代码:
Dim tj As String
Dim dr As DataRow = e.Node.DataRow '获取生成此节点的行
tj=DR("单位编号").substring(1,(e.Node.Level+1)*3)
Dim Filter As String = "[单位编号].substring(1," & (e.Node.Level+1)*3 & ")='" & tj & "'"
DataTables("员工表").LoadFilter = Filter
DataTables("员工表").Load()
运行后点击"222"等任何节点,均出现如下错误提示:
IErrorInfo.GetDescription 因 E_FAIL(0x80004005) 而失败