-- 作者:kaiyu
-- 发布时间:2016/10/12 10:29:00
-- [求助]帮我看看这代码是什么问题
这个是自定义函数代码
Dim pnd As WinForm.TreeNode = args(0) Dim pdr As DataRow = args(1)
For Each dr As DataRow In DataTables("GY物料清单明细表").Select("bom码 = \'" & pdr("_Identify") & "\'") Dim nd As WinForm.TreeNode = pnd.Nodes.Add(dr("物料编码")) If dr.IsNull("父键") = False Then Dim fdr As DataRow = DataTables("GY物料清单表").Find("_Identify = \'" & dr("父键") & "\'") If fdr IsNot Nothing Then Functions.Execute("bom递归", nd, fdr) End If End If Next
这个是按钮代码
Dim g As String InputValue(g,"需加载的计划信息","请输入相应的计划信息!") If g > "" Then Dim bm As String =DataTables("GY单品种bom表").sqlGetComboListString("码","物料名称 =\'" & g & "\' and 码 <> 0") bm =bm.Replace("|","\',\'") DataTables("GY物料清单表").LoadFilter ="_Identify in (\'" & bm & "\')" DataTables("GY物料清单表").Load Dim trv As WinForm.TreeView = Forms("GY物料清单表").Controls("TreeView1") trv.Visible =True trv.Nodes.Clear For Each dr As DataRow In DataTables("GY物料清单表").Select("物料名称 = \'" & g & "\'","品名,物料名称") Dim nd As WinForm.TreeNode= trv.Nodes.Add(dr("物料名称")) Functions.Execute("bom递归", nd, dr) Next trv.Nodes.Insert("显示所有",0) End If
这个按钮要点两次才行,
第一次执行的效果
第二次执行的效果
此主题相关图片如下:第二次.png
此主题相关图片如下:点一次效果.png
我就想问一下我这代码有什么问题,为什么要执行两次,我就是要第二次的效果。
|