<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Get all occurrences from assembly with respect to the browser pane order in Inventor Programming - iLogic, Macros, AddIns &amp; Apprentice</title>
    <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/get-all-occurrences-from-assembly-with-respect-to-the-browser/m-p/10844852#M132982</link>
    <description>&lt;P&gt;I'm not sure what you think is too slow or what you have now. the following rule will find everything 10 times. on average it takes 300 milliseconds to find 1000+ occurrences. I think that is reasonable. My output in the log:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="JelteDeJong_0-1640618099099.png" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1005199iA74D58B2E31DF096/image-size/medium?v=v2&amp;amp;px=400" role="button" title="JelteDeJong_0-1640618099099.png" alt="JelteDeJong_0-1640618099099.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN style="color: #ce5c95;"&gt;Public&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Sub&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;Main&lt;/SPAN&gt;()

    &lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;doc&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;AssemblyDocument&lt;/SPAN&gt; = &lt;SPAN style="color: #9d6bce;"&gt;ThisDoc&lt;/SPAN&gt;.&lt;SPAN style="color: #9d6bce;"&gt;Document&lt;/SPAN&gt;
    &lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;topNode&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;doc&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;BrowserPanes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Item&lt;/SPAN&gt;(&lt;SPAN style="color: #35b173;"&gt;"Model"&lt;/SPAN&gt;).&lt;SPAN style="color: #db9652;"&gt;TopNode&lt;/SPAN&gt;

    &lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;Stopwatch&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;New&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;Stopwatch&lt;/SPAN&gt;()
    
	
	&lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;tries&lt;/SPAN&gt; = 10
	&lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;totalTime&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Double&lt;/SPAN&gt; = 0
	&lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;nodesCount&lt;/SPAN&gt; = 0
	
	&lt;SPAN style="color: #ce5c95;"&gt;For&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;i&lt;/SPAN&gt; = 1 &lt;SPAN style="color: #ce5c95;"&gt;To&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;tries&lt;/SPAN&gt;
		&lt;SPAN style="color: #db9652;"&gt;Stopwatch&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Reset&lt;/SPAN&gt;()
		&lt;SPAN style="color: #db9652;"&gt;Stopwatch&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Start&lt;/SPAN&gt;()
		
		&lt;SPAN style="color: #b2b2b5;"&gt;' This line does all the work&lt;/SPAN&gt;
		&lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;topNode&lt;/SPAN&gt;)
		
		&lt;SPAN style="color: #db9652;"&gt;Stopwatch&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Stop&lt;/SPAN&gt;()
    	&lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;ts&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;Stopwatch&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Elapsed&lt;/SPAN&gt;
		&lt;SPAN style="color: #db9652;"&gt;totalTime&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;totalTime&lt;/SPAN&gt; + &lt;SPAN style="color: #db9652;"&gt;ts&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Milliseconds&lt;/SPAN&gt;
		&lt;SPAN style="color: #db9652;"&gt;nodesCount&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Count&lt;/SPAN&gt;
		&lt;SPAN style="color: #9d6bce;"&gt;Logger&lt;/SPAN&gt;.&lt;SPAN style="color: #9d6bce;"&gt;Info&lt;/SPAN&gt;(&lt;SPAN style="color: #35b173;"&gt;"RunTime "&lt;/SPAN&gt; &amp;amp; &lt;SPAN style="color: #db9652;"&gt;i&lt;/SPAN&gt; &amp;amp; &lt;SPAN style="color: #35b173;"&gt;": "&lt;/SPAN&gt; &amp;amp;  &lt;SPAN style="color: #db9652;"&gt;ts&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Milliseconds&lt;/SPAN&gt;)
	&lt;SPAN style="color: #ce5c95;"&gt;Next&lt;/SPAN&gt;
	
    &lt;SPAN style="color: #9d6bce;"&gt;Logger&lt;/SPAN&gt;.&lt;SPAN style="color: #9d6bce;"&gt;Info&lt;/SPAN&gt;(&lt;SPAN style="color: #35b173;"&gt;"RunTime mean: "&lt;/SPAN&gt; &amp;amp; (&lt;SPAN style="color: #db9652;"&gt;totalTime&lt;/SPAN&gt;/&lt;SPAN style="color: #db9652;"&gt;tries&lt;/SPAN&gt;))
	&lt;SPAN style="color: #9d6bce;"&gt;Logger&lt;/SPAN&gt;.&lt;SPAN style="color: #9d6bce;"&gt;Info&lt;/SPAN&gt;(&lt;SPAN style="color: #35b173;"&gt;"Occurences found: "&lt;/SPAN&gt; &amp;amp; &lt;SPAN style="color: #db9652;"&gt;nodesCount&lt;/SPAN&gt;)

&lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Sub&lt;/SPAN&gt;

&lt;SPAN style="color: #ce5c95;"&gt;Public&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Function&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;node&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;BrowserNode&lt;/SPAN&gt;) &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;List&lt;/SPAN&gt;(&lt;SPAN style="color: #ce5c95;"&gt;Of&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;BrowserNode&lt;/SPAN&gt;)
    &lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;New&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;List&lt;/SPAN&gt;(&lt;SPAN style="color: #ce5c95;"&gt;Of&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;BrowserNode&lt;/SPAN&gt;)

    &lt;SPAN style="color: #ce5c95;"&gt;For&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Each&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;BrowserNode&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;In&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;node&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;BrowserNodes&lt;/SPAN&gt;
        &lt;SPAN style="color: #ce5c95;"&gt;Try&lt;/SPAN&gt;
            &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt; (&lt;SPAN style="color: #ce5c95;"&gt;TypeOf&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;NativeObject&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Is&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;ComponentOccurrence&lt;/SPAN&gt;) &lt;SPAN style="color: #ce5c95;"&gt;Then&lt;/SPAN&gt;
                &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Add&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;)
                &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;AddRange&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;))
            &lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt;
            &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt; (&lt;SPAN style="color: #ce5c95;"&gt;TypeOf&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;NativeObject&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Is&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;OccurrencePattern&lt;/SPAN&gt;) &lt;SPAN style="color: #ce5c95;"&gt;Then&lt;/SPAN&gt;
                &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;AddRange&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;))
            &lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt;
            &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt; (&lt;SPAN style="color: #ce5c95;"&gt;TypeOf&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;NativeObject&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Is&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;OccurrencePatternElement&lt;/SPAN&gt;) &lt;SPAN style="color: #ce5c95;"&gt;Then&lt;/SPAN&gt;
                &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;AddRange&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;))
            &lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt;
        &lt;SPAN style="color: #ce5c95;"&gt;Catch&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;ex&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;Exception&lt;/SPAN&gt;
        &lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Try&lt;/SPAN&gt;
    &lt;SPAN style="color: #ce5c95;"&gt;Next&lt;/SPAN&gt;
    &lt;SPAN style="color: #ce5c95;"&gt;Return&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;
&lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Function&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Mon, 27 Dec 2021 15:16:01 GMT</pubDate>
    <dc:creator>JelteDeJong</dc:creator>
    <dc:date>2021-12-27T15:16:01Z</dc:date>
    <item>
      <title>Get all occurrences from assembly with respect to the browser pane order</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/get-all-occurrences-from-assembly-with-respect-to-the-browser/m-p/10843982#M132978</link>
      <description>&lt;P&gt;When getting all parts and sub assemblies with 'all occurrences' it's hard to get the browser pane order.&lt;/P&gt;&lt;P&gt;Especially component patterns kept there place where they are created.&lt;/P&gt;&lt;P&gt;I'm trying to get the exact order as represented in the browser.&lt;/P&gt;&lt;P&gt;I'm able to do that by traverse the browser pane but then all browser modes are passed which takes too much time with a big assembly compared to use 'all occurrences'.&lt;/P&gt;&lt;P&gt;What is the best way to traverse the browser pane and get the parts and sub assemblies?&lt;/P&gt;&lt;P&gt;Or is there a smarter way to get this data in the order the browser pane is organised?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 27 Dec 2021 02:16:33 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/get-all-occurrences-from-assembly-with-respect-to-the-browser/m-p/10843982#M132978</guid>
      <dc:creator>checkcheck_master</dc:creator>
      <dc:date>2021-12-27T02:16:33Z</dc:date>
    </item>
    <item>
      <title>Re: Get all occurrences from assembly with respect to the browser pane order</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/get-all-occurrences-from-assembly-with-respect-to-the-browser/m-p/10844852#M132982</link>
      <description>&lt;P&gt;I'm not sure what you think is too slow or what you have now. the following rule will find everything 10 times. on average it takes 300 milliseconds to find 1000+ occurrences. I think that is reasonable. My output in the log:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="JelteDeJong_0-1640618099099.png" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1005199iA74D58B2E31DF096/image-size/medium?v=v2&amp;amp;px=400" role="button" title="JelteDeJong_0-1640618099099.png" alt="JelteDeJong_0-1640618099099.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN style="color: #ce5c95;"&gt;Public&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Sub&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;Main&lt;/SPAN&gt;()

    &lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;doc&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;AssemblyDocument&lt;/SPAN&gt; = &lt;SPAN style="color: #9d6bce;"&gt;ThisDoc&lt;/SPAN&gt;.&lt;SPAN style="color: #9d6bce;"&gt;Document&lt;/SPAN&gt;
    &lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;topNode&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;doc&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;BrowserPanes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Item&lt;/SPAN&gt;(&lt;SPAN style="color: #35b173;"&gt;"Model"&lt;/SPAN&gt;).&lt;SPAN style="color: #db9652;"&gt;TopNode&lt;/SPAN&gt;

    &lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;Stopwatch&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;New&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;Stopwatch&lt;/SPAN&gt;()
    
	
	&lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;tries&lt;/SPAN&gt; = 10
	&lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;totalTime&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Double&lt;/SPAN&gt; = 0
	&lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;nodesCount&lt;/SPAN&gt; = 0
	
	&lt;SPAN style="color: #ce5c95;"&gt;For&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;i&lt;/SPAN&gt; = 1 &lt;SPAN style="color: #ce5c95;"&gt;To&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;tries&lt;/SPAN&gt;
		&lt;SPAN style="color: #db9652;"&gt;Stopwatch&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Reset&lt;/SPAN&gt;()
		&lt;SPAN style="color: #db9652;"&gt;Stopwatch&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Start&lt;/SPAN&gt;()
		
		&lt;SPAN style="color: #b2b2b5;"&gt;' This line does all the work&lt;/SPAN&gt;
		&lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;topNode&lt;/SPAN&gt;)
		
		&lt;SPAN style="color: #db9652;"&gt;Stopwatch&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Stop&lt;/SPAN&gt;()
    	&lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;ts&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;Stopwatch&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Elapsed&lt;/SPAN&gt;
		&lt;SPAN style="color: #db9652;"&gt;totalTime&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;totalTime&lt;/SPAN&gt; + &lt;SPAN style="color: #db9652;"&gt;ts&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Milliseconds&lt;/SPAN&gt;
		&lt;SPAN style="color: #db9652;"&gt;nodesCount&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Count&lt;/SPAN&gt;
		&lt;SPAN style="color: #9d6bce;"&gt;Logger&lt;/SPAN&gt;.&lt;SPAN style="color: #9d6bce;"&gt;Info&lt;/SPAN&gt;(&lt;SPAN style="color: #35b173;"&gt;"RunTime "&lt;/SPAN&gt; &amp;amp; &lt;SPAN style="color: #db9652;"&gt;i&lt;/SPAN&gt; &amp;amp; &lt;SPAN style="color: #35b173;"&gt;": "&lt;/SPAN&gt; &amp;amp;  &lt;SPAN style="color: #db9652;"&gt;ts&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Milliseconds&lt;/SPAN&gt;)
	&lt;SPAN style="color: #ce5c95;"&gt;Next&lt;/SPAN&gt;
	
    &lt;SPAN style="color: #9d6bce;"&gt;Logger&lt;/SPAN&gt;.&lt;SPAN style="color: #9d6bce;"&gt;Info&lt;/SPAN&gt;(&lt;SPAN style="color: #35b173;"&gt;"RunTime mean: "&lt;/SPAN&gt; &amp;amp; (&lt;SPAN style="color: #db9652;"&gt;totalTime&lt;/SPAN&gt;/&lt;SPAN style="color: #db9652;"&gt;tries&lt;/SPAN&gt;))
	&lt;SPAN style="color: #9d6bce;"&gt;Logger&lt;/SPAN&gt;.&lt;SPAN style="color: #9d6bce;"&gt;Info&lt;/SPAN&gt;(&lt;SPAN style="color: #35b173;"&gt;"Occurences found: "&lt;/SPAN&gt; &amp;amp; &lt;SPAN style="color: #db9652;"&gt;nodesCount&lt;/SPAN&gt;)

&lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Sub&lt;/SPAN&gt;

&lt;SPAN style="color: #ce5c95;"&gt;Public&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Function&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;node&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;BrowserNode&lt;/SPAN&gt;) &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;List&lt;/SPAN&gt;(&lt;SPAN style="color: #ce5c95;"&gt;Of&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;BrowserNode&lt;/SPAN&gt;)
    &lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;New&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;List&lt;/SPAN&gt;(&lt;SPAN style="color: #ce5c95;"&gt;Of&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;BrowserNode&lt;/SPAN&gt;)

    &lt;SPAN style="color: #ce5c95;"&gt;For&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Each&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;BrowserNode&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;In&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;node&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;BrowserNodes&lt;/SPAN&gt;
        &lt;SPAN style="color: #ce5c95;"&gt;Try&lt;/SPAN&gt;
            &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt; (&lt;SPAN style="color: #ce5c95;"&gt;TypeOf&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;NativeObject&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Is&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;ComponentOccurrence&lt;/SPAN&gt;) &lt;SPAN style="color: #ce5c95;"&gt;Then&lt;/SPAN&gt;
                &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Add&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;)
                &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;AddRange&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;))
            &lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt;
            &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt; (&lt;SPAN style="color: #ce5c95;"&gt;TypeOf&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;NativeObject&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Is&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;OccurrencePattern&lt;/SPAN&gt;) &lt;SPAN style="color: #ce5c95;"&gt;Then&lt;/SPAN&gt;
                &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;AddRange&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;))
            &lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt;
            &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt; (&lt;SPAN style="color: #ce5c95;"&gt;TypeOf&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;NativeObject&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Is&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;OccurrencePatternElement&lt;/SPAN&gt;) &lt;SPAN style="color: #ce5c95;"&gt;Then&lt;/SPAN&gt;
                &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;AddRange&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;))
            &lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt;
        &lt;SPAN style="color: #ce5c95;"&gt;Catch&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;ex&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;Exception&lt;/SPAN&gt;
        &lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Try&lt;/SPAN&gt;
    &lt;SPAN style="color: #ce5c95;"&gt;Next&lt;/SPAN&gt;
    &lt;SPAN style="color: #ce5c95;"&gt;Return&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;
&lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Function&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 27 Dec 2021 15:16:01 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/get-all-occurrences-from-assembly-with-respect-to-the-browser/m-p/10844852#M132982</guid>
      <dc:creator>JelteDeJong</dc:creator>
      <dc:date>2021-12-27T15:16:01Z</dc:date>
    </item>
    <item>
      <title>Re: Get all occurrences from assembly with respect to the browser pane order</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/get-all-occurrences-from-assembly-with-respect-to-the-browser/m-p/10849237#M133010</link>
      <description>&lt;P&gt;Thank you Jelte for your response, very instructive.&lt;BR /&gt;How can I best do this in VBA?&lt;BR /&gt;And how can I get to the path of the file itself?&lt;BR /&gt;I've tried subNode.FullPath which gives the path of the node instead of the final file.&lt;/P&gt;</description>
      <pubDate>Wed, 29 Dec 2021 22:46:34 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/get-all-occurrences-from-assembly-with-respect-to-the-browser/m-p/10849237#M133010</guid>
      <dc:creator>checkcheck_master</dc:creator>
      <dc:date>2021-12-29T22:46:34Z</dc:date>
    </item>
    <item>
      <title>Re: Get all occurrences from assembly with respect to the browser pane order</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/get-all-occurrences-from-assembly-with-respect-to-the-browser/m-p/10849256#M133011</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;How can I best do this in VBA?&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Probably not the answer that you would expect but, I think you should not use VBA at all. I wrote a blog post "&lt;A href="http://www.hjalte.nl/44-is-vba-obsolete" target="_blank" rel="noopener"&gt;Is VBA in Inventor obsolete?&lt;/A&gt;". In that post, I explain why I think you should not use VBA. (And maybe you want to read the follow-up post "&lt;A href="http://www.hjalte.nl/47-writing-and-debugging-ilogic-rules" target="_blank" rel="noopener"&gt;Writing and debugging iLogic rules&lt;/A&gt;" as well)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;HR /&gt;And how can I get to the path of the file itself?&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Have a look at the following rule:&lt;/P&gt;&lt;PRE&gt;&lt;SPAN style="color: #ce5c95;"&gt;Public&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Sub&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;Main&lt;/SPAN&gt;()

    &lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;doc&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;AssemblyDocument&lt;/SPAN&gt; = &lt;SPAN style="color: #9d6bce;"&gt;ThisDoc&lt;/SPAN&gt;.&lt;SPAN style="color: #9d6bce;"&gt;Document&lt;/SPAN&gt;
    &lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;topNode&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;doc&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;BrowserPanes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Item&lt;/SPAN&gt;(&lt;SPAN style="color: #35b173;"&gt;"Model"&lt;/SPAN&gt;).&lt;SPAN style="color: #db9652;"&gt;TopNode&lt;/SPAN&gt;
    &lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;topNode&lt;/SPAN&gt;)

    &lt;SPAN style="color: #ce5c95;"&gt;For&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Each&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;node&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;BrowserNode&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;In&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;
		&lt;SPAN style="color: #ce5c95;"&gt;Try&lt;/SPAN&gt;
			&lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;occ&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;ComponentOccurrence&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;node&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;NativeObject&lt;/SPAN&gt;
            &lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;refDoc&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;Document&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;occ&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Definition&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Document&lt;/SPAN&gt;
            &lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;fileName&lt;/SPAN&gt; = &lt;SPAN style="color: #db9652;"&gt;refDoc&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;FullFileName&lt;/SPAN&gt;
            &lt;SPAN style="color: #9d6bce;"&gt;logger&lt;/SPAN&gt;.&lt;SPAN style="color: #9d6bce;"&gt;Info&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;fileName&lt;/SPAN&gt;)
		&lt;SPAN style="color: #ce5c95;"&gt;Catch&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;ex&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;Exception&lt;/SPAN&gt;
			&lt;SPAN style="color: #b2b2b5;"&gt;' exceptions get thrown when a occurence is suppressed.&lt;/SPAN&gt;
			&lt;SPAN style="color: #9d6bce;"&gt;logger&lt;/SPAN&gt;.&lt;SPAN style="color: #9d6bce;"&gt;Info&lt;/SPAN&gt;(&lt;SPAN style="color: #35b173;"&gt;"Someting went wrong on node: "&lt;/SPAN&gt; &amp;amp; &lt;SPAN style="color: #db9652;"&gt;node&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;FullPath&lt;/SPAN&gt;)
		&lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Try&lt;/SPAN&gt;
        
    &lt;SPAN style="color: #ce5c95;"&gt;Next&lt;/SPAN&gt;

&lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Sub&lt;/SPAN&gt;

&lt;SPAN style="color: #ce5c95;"&gt;Public&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Function&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;node&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;BrowserNode&lt;/SPAN&gt;) &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;List&lt;/SPAN&gt;(&lt;SPAN style="color: #ce5c95;"&gt;Of&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;BrowserNode&lt;/SPAN&gt;)
    &lt;SPAN style="color: #ce5c95;"&gt;Dim&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;New&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;List&lt;/SPAN&gt;(&lt;SPAN style="color: #ce5c95;"&gt;Of&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;BrowserNode&lt;/SPAN&gt;)

    &lt;SPAN style="color: #ce5c95;"&gt;For&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Each&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;BrowserNode&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;In&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;node&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;BrowserNodes&lt;/SPAN&gt;
        &lt;SPAN style="color: #ce5c95;"&gt;Try&lt;/SPAN&gt;
            &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt; (&lt;SPAN style="color: #ce5c95;"&gt;TypeOf&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;NativeObject&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Is&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;ComponentOccurrence&lt;/SPAN&gt;) &lt;SPAN style="color: #ce5c95;"&gt;Then&lt;/SPAN&gt;
                &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;Add&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;)
                &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;AddRange&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;))
            &lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt;
            &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt; (&lt;SPAN style="color: #ce5c95;"&gt;TypeOf&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;NativeObject&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Is&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;OccurrencePattern&lt;/SPAN&gt;) &lt;SPAN style="color: #ce5c95;"&gt;Then&lt;/SPAN&gt;
                &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;AddRange&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;))
            &lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt;
            &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt; (&lt;SPAN style="color: #ce5c95;"&gt;TypeOf&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;NativeObject&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Is&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;OccurrencePatternElement&lt;/SPAN&gt;) &lt;SPAN style="color: #ce5c95;"&gt;Then&lt;/SPAN&gt;
                &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;.&lt;SPAN style="color: #db9652;"&gt;AddRange&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;GetModelsRecursive&lt;/SPAN&gt;(&lt;SPAN style="color: #db9652;"&gt;subNode&lt;/SPAN&gt;))
            &lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;If&lt;/SPAN&gt;
        &lt;SPAN style="color: #ce5c95;"&gt;Catch&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;ex&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;As&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;Exception&lt;/SPAN&gt;
        &lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Try&lt;/SPAN&gt;
    &lt;SPAN style="color: #ce5c95;"&gt;Next&lt;/SPAN&gt;
    &lt;SPAN style="color: #ce5c95;"&gt;Return&lt;/SPAN&gt; &lt;SPAN style="color: #db9652;"&gt;nodes&lt;/SPAN&gt;
&lt;SPAN style="color: #ce5c95;"&gt;End&lt;/SPAN&gt; &lt;SPAN style="color: #ce5c95;"&gt;Function&lt;/SPAN&gt;

&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 29 Dec 2021 23:12:43 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/get-all-occurrences-from-assembly-with-respect-to-the-browser/m-p/10849256#M133011</guid>
      <dc:creator>JelteDeJong</dc:creator>
      <dc:date>2021-12-29T23:12:43Z</dc:date>
    </item>
    <item>
      <title>Re: Get all occurrences from assembly with respect to the browser pane order</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/get-all-occurrences-from-assembly-with-respect-to-the-browser/m-p/10853066#M133039</link>
      <description>&lt;P&gt;Thanks again Jelte for your contribution, very instructive again.&lt;BR /&gt;I have read your blogs, very interesting, nice site by the way with many nice topics.&lt;BR /&gt;It's been a desire of mine to do everything in iLogic for some time, but the comfort and habituation of VBA is exactly as you describe.&lt;BR /&gt;The last IV updates have brought good things to the iLogic editor, I commit myself to moving forward with iLogic.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for the code, it takes me a little further.&lt;BR /&gt;Would you like to shed some light on the following:&lt;BR /&gt;I am talking about a composition with about 2200 items.&lt;BR /&gt;When I use the browser nodes method I have quite a difference from the first time the assembly is run or the times after that.&lt;BR /&gt;The first time takes about 22 seconds, the subsequent times about 6 seconds.&lt;BR /&gt;When I apply the method based on the occurrences it stays below 1 second and the first time makes no difference compared to the following times.&lt;BR /&gt;Ideally I would like to use the browser node method because of the order that corresponds to that of the browser pane.&lt;BR /&gt;I find the 6 seconds for such a composition entirely acceptable, but it only works after the composition is run through for the second time, as said, the first time lasts 22 seconds.&lt;BR /&gt;Can this be improved?&lt;/P&gt;</description>
      <pubDate>Sun, 02 Jan 2022 01:02:47 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/get-all-occurrences-from-assembly-with-respect-to-the-browser/m-p/10853066#M133039</guid>
      <dc:creator>checkcheck_master</dc:creator>
      <dc:date>2022-01-02T01:02:47Z</dc:date>
    </item>
  </channel>
</rss>

