Announcements
Attention for Customers without Multi-Factor Authentication or Single Sign-On - OTP Verification rolls out April 2025. Read all about it here.

Get Component in subassembly without iteration

Anonymous

Get Component in subassembly without iteration

Anonymous
Not applicable

Inside my assembly I have a subassembly called "MySubAssembly", which contains a component called "MyComponent".

I want to get a reference to MyComponent WITHOUT iterating through all components in MySubAssembly and trying to match names.

 

I'm sure that there is a function along the lines of CreatePathToComponent("MySubAssembly", "MyComponent") (the syntax is obviously incorrect) and that I have even used it at some point, but I'm unable to find it in my code or anything about it online.

 

Thanks in advance

0 Likes
Reply
Accepted solutions (1)
392 Views
3 Replies
Replies (3)

bradeneuropeArthur
Mentor
Mentor

Try this:

I have not tested it yet!

Public Sub Main
	
	Dim ass As Inventor.AssemblyDocument = ThisApplication.ActiveDocument
	Dim Occurrences As Inventor.ComponentOccurrences = ass.ComponentDefinition.Occurrences
	
'Dim occ As ComponentOccurrence
Dim assocc As Inventor.AssemblyDocument = ass.ComponentDefinition.Occurrences.ItemByName("MySubAssembly").Definition.Document
Dim PartOcc As Inventor.ComponentOccurrence = assocc.ComponentDefinition.Occurrences.ItemByName("MyComponent")

Dim p As Inventor.PartDocument =PartOcc.Definition.Document

End Sub

  

Regards,

Arthur Knoors

Autodesk Affiliations:

Autodesk Software:Inventor Professional 2025 | Vault Professional 2024 | Autocad Mechanical 2024
Programming Skills:Vba | Vb.net (Add ins Vault / Inventor, Applications) | I-logic
Programming Examples:Drawing List!|Toggle Drawing Sheet!|Workplane Resize!|Drawing View Locker!|Multi Sheet to Mono Sheet!|Drawing Weld Symbols!|Drawing View Label Align!|Open From Balloon!|Model State Lock!
Posts and Ideas:Dimension Component!|Partlist Export!|Derive I-properties!|Vault Prompts Via API!|Vault Handbook/Manual!|Drawing Toggle Sheets!|Vault Defer Update!


! For administrative reasons, please mark a "Solution as solved" when the issue is solved !

WCrihfield
Mentor
Mentor
Accepted solution

@Anonymous 

FYI

The function you were trying to remember is called "MakePath()".

There is a built-in iLogic Snippet for using it listed under the System tab / Components (classic).

Here is the online help reference page that talks about it:  (you'll need to scroll to the bottom of the web page)

Component Functions Reference (iLogic) 

Wesley Crihfield

EESignature

(Not an Autodesk Employee)

Anonymous
Not applicable

@WCrihfieldYes, this is it, thanks!

I started doubting if I really remembered it existing. :grinning_face_with_big_eyes:

0 Likes