Here is the WORKING!!! code:
VB Code:
'TreeView Functions/Subs Public Sub Create_Tree() Dim TreeRec As ADODB.Recordset Dim TreeStr As String Dim TreeNode As Node Dim TreeKey As String Dim TreeText As String Dim gbtxtPartName As String Set TreeCon = CreateObject("ADODB.Connection") TreeCon.ConnectionString = "Provider=OraOLEDB.Oracle;" & _ "Data Source=QSDB;" & _ "User ID=QSDB_USER;" & _ "Password=5star5;" 'Open Connection TreeCon.Open tvPS.Nodes.Clear gbtxtPartName = "2ND TRIAL" tvPS.Nodes.Add , , gbtxtPartName & "_PART", gbtxtPartName Set TreeRec = New ADODB.Recordset TreeStr = "SELECT RT_IMKEY,RT_WCKEY Item,RT_SEQNUM SeqNum,RT_OP_NUM OpNum,'_PRO' IconType FROM RT WHERE RT_IMKEY = '" & gbtxtPartName & "'" & _ "UNION " & _ "SELECT PS_IMKEY,PS_CPKEY Item,PS_SEQNUM SeqNum,PS_OP_NUM OpNum,'_MAT' IconType FROM PS WHERE PS_IMKEY = '" & gbtxtPartName & "' Order By OpNum" TreeRec.Open TreeStr, TreeCon, adOpenStatic, adLockOptimistic, adCmdText TreeRec.MoveFirst Do While Not TreeRec.EOF Set TreeNode = tvPS.Nodes.Add((gbtxtPartName & "_PART"), tvwChild, gbtxtPartName & "_" & TreeRec!Item & "_" & TreeRec!OpNum & TreeRec!IconType, TreeRec!Item) TreeKey = TreeNode.Key TreeText = TreeNode.Text TreeRec.MoveNext Loop Call Walk_Tree(TreeNode) Call Select_Expand Call Assign_Icons End Sub Private Sub Walk_Tree(ByVal TreeNode As Node) Dim i As Integer Set TreeNode = TreeNode.Parent Set TreeNode = TreeNode.Child Do Call Query_Node(TreeNode) Set TreeNode = TreeNode.Next Loop Until TreeNode Is Nothing End Sub Private Sub Query_Node(ByVal TreeNode As Node) Dim TreeNode1 As Node Dim NodeRec As ADODB.Recordset Dim NodeStr As String Set NodeRec = New ADODB.Recordset NodeStr = "SELECT RT_IMKEY,RT_WCKEY Item,RT_SEQNUM SeqNum,RT_OP_NUM OpNum,'_PRO' IconType FROM RT WHERE RT_IMKEY = '" & TreeNode.Text & "'" & _ "UNION " & _ "SELECT PS_IMKEY,PS_CPKEY Item,PS_SEQNUM SeqNum,PS_OP_NUM OpNum,'_MAT' IconType FROM PS WHERE PS_IMKEY = '" & TreeNode.Text & "' Order By OpNum" NodeRec.Open NodeStr, TreeCon, adOpenStatic, adLockOptimistic, adCmdText If NodeRec.RecordCount = 0 Then NodeRec.Close Exit Sub Else NodeRec.MoveFirst Do While Not NodeRec.EOF Set TreeNode1 = tvPS.Nodes.Add(TreeNode.Key, tvwChild, TreeNode.Text & "_" & NodeRec!Item & "_" & NodeRec!OpNum & NodeRec!IconType, NodeRec!Item) NodeRec.MoveNext Loop End If Set TreeNode = TreeNode1 Call Walk_Tree(TreeNode) End Sub
Take care, Jeremy




Reply With Quote