原文链接:http://adndevblog.typepad.com/manufacturing/2016/07/cable-harness-component-names.html
当遍历电缆管路部件 Cable & Harness 的时候,会看到名为“HA_VC_xxx” 的VirtualComponentDefinition。
...
Hard Drive:2
CD Ribbon Cable
CD Ribbon Cable
Ribbon Cable Connector:1
Ribbon Cable Connector:2
Ribbon Cable Connector:3
HA_VC_100:1
Power Supply Harness
Power Supply Connector:1
... 这个名字和在模型树结构中的名字并不一致。这是因为列在树结构中的实际并不是具体的部件,而仅仅是对象容器。如果选中它们,执行代码,可以看到它们是
ClientBrowserNodeDefinitionObject
VirtualComponenetDefinition的Part Number实际对应的是前面提到的部件名,执行如下的代可以看到:
Sub PrintHierarchyTreeRecursive(occs, indent)
Dim occ As ComponentOccurrence
For Each occ In occs
Dim pss As PropertySets
If TypeOf occ.Definition Is VirtualComponentDefinition Then
Set pss = occ.Definition.PropertySets
Else
Set pss = occ.Definition.Document.PropertySets
End If
Dim partNumber As String
partNumber = pss("Design Tracking Properties")("Part Number").value
Write #1, Spc(indent); occ.Name + ", " + partNumber
Call PrintHierarchyTreeRecursive(occ.SubOccurrences, indent + 2)
Next
End Sub
Sub PrintHierarchyTree()
Dim asm As AssemblyDocument
Set asm = ThisApplication.ActiveDocument
Open "C:\temp\assemblyparts.txt" For Output As #1
Call PrintHierarchyTreeRecursive(asm.ComponentDefinition.Occurrences, 0)
Close #1
End Sub
本文探讨了电缆组件(Cable&Harness)中的虚拟部件定义(VirtualComponentDefinition),解释了模型树结构中的部件名称与实际部件之间的区别,并通过示例代码展示了如何获取这些虚拟部件的实际部件编号。
483

被折叠的 条评论
为什么被折叠?



