<?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 Numbering components in Inventor Programming - iLogic, Macros, AddIns &amp; Apprentice</title>
    <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/numbering-components/m-p/10857470#M133115</link>
    <description>&lt;P&gt;I'm trying to piece a rule together that would number my placed subassemblies correctly. I have a rule where, depending on a user parameter I can change, subassemblies get added or removed if I want less. The specifics about that are not all that important I assume because it works perfectly. It works but the problem is that the number it puts behind the placed components keeps adding up with each add/remove.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="ask.PNG" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1007314i702A4397307E5CE9/image-size/medium?v=v2&amp;amp;px=400" role="button" title="ask.PNG" alt="ask.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;There are always three parts present on each side, no matter the parameter. So one of each: 1.1, 1.2 and 1.3. And its mirror too. The 1.2 part is the one that gets added depending on the user parameter.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="ask2.PNG" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1007312iC76234ED0D68A6CA/image-size/medium?v=v2&amp;amp;px=400" role="button" title="ask2.PNG" alt="ask2.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;So I've only been using iLogic since september. I was trying to write a rule that would correctly number the components but I keep getting an error and I can't help but think I'm really screwing up here.&amp;nbsp; This the rule. Inventor 22/Windows. The error also doesn't say anything useful.&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oAsmDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;AssemblyDocument&lt;/SPAN&gt;
    &lt;SPAN&gt;oAsmDoc&lt;/SPAN&gt; = &lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oAsmDef&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;AssemblyComponentDefinition&lt;/SPAN&gt;
    &lt;SPAN&gt;oAsmDef&lt;/SPAN&gt; = &lt;SPAN&gt;oAsmDoc&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;

&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oOcc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;ComponentOccurrence&lt;/SPAN&gt; 
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;i&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Integer&lt;/SPAN&gt; = 1

&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oOcc&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;oAsmDef&lt;/SPAN&gt;.&lt;SPAN&gt;Occurrences&lt;/SPAN&gt;
	&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oOcc&lt;/SPAN&gt;.&lt;SPAN&gt;Type&lt;/SPAN&gt; = &lt;SPAN&gt;ObjectTypeEnum&lt;/SPAN&gt;.&lt;SPAN&gt;kComponentOccurrenceObject&lt;/SPAN&gt;
		&lt;SPAN&gt;oOcc&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;"99991000 - CBC - Zijwang 1.2_Weld"&lt;/SPAN&gt; &amp;amp; &lt;SPAN&gt;":"&lt;/SPAN&gt; &amp;amp; &lt;SPAN&gt;i&lt;/SPAN&gt;
		&lt;SPAN&gt;i&lt;/SPAN&gt; = &lt;SPAN&gt;i&lt;/SPAN&gt; + 1
	&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
&lt;SPAN&gt;Next&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="askerror.PNG" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1007316iBB95AF9F7F093F7E/image-size/medium?v=v2&amp;amp;px=400" role="button" title="askerror.PNG" alt="askerror.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="askerror2.PNG" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1007317i33145572C716365F/image-size/medium?v=v2&amp;amp;px=400" role="button" title="askerror2.PNG" alt="askerror2.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;</description>
    <pubDate>Tue, 04 Jan 2022 15:18:10 GMT</pubDate>
    <dc:creator>alikhan.ganayev</dc:creator>
    <dc:date>2022-01-04T15:18:10Z</dc:date>
    <item>
      <title>Numbering components</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/numbering-components/m-p/10857470#M133115</link>
      <description>&lt;P&gt;I'm trying to piece a rule together that would number my placed subassemblies correctly. I have a rule where, depending on a user parameter I can change, subassemblies get added or removed if I want less. The specifics about that are not all that important I assume because it works perfectly. It works but the problem is that the number it puts behind the placed components keeps adding up with each add/remove.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="ask.PNG" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1007314i702A4397307E5CE9/image-size/medium?v=v2&amp;amp;px=400" role="button" title="ask.PNG" alt="ask.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;There are always three parts present on each side, no matter the parameter. So one of each: 1.1, 1.2 and 1.3. And its mirror too. The 1.2 part is the one that gets added depending on the user parameter.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="ask2.PNG" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1007312iC76234ED0D68A6CA/image-size/medium?v=v2&amp;amp;px=400" role="button" title="ask2.PNG" alt="ask2.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;So I've only been using iLogic since september. I was trying to write a rule that would correctly number the components but I keep getting an error and I can't help but think I'm really screwing up here.&amp;nbsp; This the rule. Inventor 22/Windows. The error also doesn't say anything useful.&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oAsmDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;AssemblyDocument&lt;/SPAN&gt;
    &lt;SPAN&gt;oAsmDoc&lt;/SPAN&gt; = &lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oAsmDef&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;AssemblyComponentDefinition&lt;/SPAN&gt;
    &lt;SPAN&gt;oAsmDef&lt;/SPAN&gt; = &lt;SPAN&gt;oAsmDoc&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;

&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oOcc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;ComponentOccurrence&lt;/SPAN&gt; 
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;i&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Integer&lt;/SPAN&gt; = 1

&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oOcc&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;oAsmDef&lt;/SPAN&gt;.&lt;SPAN&gt;Occurrences&lt;/SPAN&gt;
	&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oOcc&lt;/SPAN&gt;.&lt;SPAN&gt;Type&lt;/SPAN&gt; = &lt;SPAN&gt;ObjectTypeEnum&lt;/SPAN&gt;.&lt;SPAN&gt;kComponentOccurrenceObject&lt;/SPAN&gt;
		&lt;SPAN&gt;oOcc&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;"99991000 - CBC - Zijwang 1.2_Weld"&lt;/SPAN&gt; &amp;amp; &lt;SPAN&gt;":"&lt;/SPAN&gt; &amp;amp; &lt;SPAN&gt;i&lt;/SPAN&gt;
		&lt;SPAN&gt;i&lt;/SPAN&gt; = &lt;SPAN&gt;i&lt;/SPAN&gt; + 1
	&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
&lt;SPAN&gt;Next&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="askerror.PNG" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1007316iBB95AF9F7F093F7E/image-size/medium?v=v2&amp;amp;px=400" role="button" title="askerror.PNG" alt="askerror.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="askerror2.PNG" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1007317i33145572C716365F/image-size/medium?v=v2&amp;amp;px=400" role="button" title="askerror2.PNG" alt="askerror2.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;</description>
      <pubDate>Tue, 04 Jan 2022 15:18:10 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/numbering-components/m-p/10857470#M133115</guid>
      <dc:creator>alikhan.ganayev</dc:creator>
      <dc:date>2022-01-04T15:18:10Z</dc:date>
    </item>
    <item>
      <title>Re: Numbering components</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/numbering-components/m-p/10857692#M133121</link>
      <description>&lt;P&gt;Hi &lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/6064990"&gt;@alikhan.ganayev&lt;/a&gt;.&amp;nbsp; Actually, that second error message is telling us that the error is happening at the point we are attempting to set a new name to a ComponentOccurrence, so that is at least something.&amp;nbsp; The most likely reason that this is failing, is that the name you are attempting to assign to the component is already being used by another component, and it won't allow two components to be named identically.&amp;nbsp; So basically, it starts processing those components at the start, but there may be a component later in the list that already has the name you are trying to assign to a component earlier in the list.&amp;nbsp; Does that make sense to you?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Oh...and another thing that may help this process make more sense is that when using a For Each loop like that, it will most likely start processing those items within, starting with the ones which were first 'placed' into the assembly, not necessarily in alphabetical order by their names.&amp;nbsp; It's the same as when using the For I = 1 To oCount, then using Item(I) within...the Item index is generally determined by which ones in the group existed first, to which ones came into existence last.&lt;/P&gt;</description>
      <pubDate>Tue, 04 Jan 2022 16:48:00 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/numbering-components/m-p/10857692#M133121</guid>
      <dc:creator>WCrihfield</dc:creator>
      <dc:date>2022-01-04T16:48:00Z</dc:date>
    </item>
    <item>
      <title>Re: Numbering components</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/numbering-components/m-p/10858941#M133140</link>
      <description>&lt;P&gt;First of all I'd like to apologize for the late reply as I was already home and didn't have access to the computer I was working with. Thank you very much for the help. I did understand your explanation and the logic I used was flawed. My code would rename all components it found instead of just the necessary ones and this would conflict.&amp;nbsp;&lt;SPAN style="font-family: inherit;"&gt;&amp;nbsp;Keeping your advice in mind I have altered my code and it seems to be working correctly now. This is the working version below, one for the original piece and the other one for the mirrored version.&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oAsmDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;AssemblyDocument&lt;/SPAN&gt;
    &lt;SPAN&gt;oAsmDoc&lt;/SPAN&gt; = &lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oAsmDef&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;AssemblyComponentDefinition&lt;/SPAN&gt;
    &lt;SPAN&gt;oAsmDef&lt;/SPAN&gt; = &lt;SPAN&gt;oAsmDoc&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;

&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oOcc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;ComponentOccurrence&lt;/SPAN&gt; 
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;i&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Integer&lt;/SPAN&gt; = 1

&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oOcc&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;oAsmDef&lt;/SPAN&gt;.&lt;SPAN&gt;Occurrences&lt;/SPAN&gt;
	&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oOcc&lt;/SPAN&gt;.&lt;SPAN&gt;Type&lt;/SPAN&gt; = &lt;SPAN&gt;ObjectTypeEnum&lt;/SPAN&gt;.&lt;SPAN&gt;kComponentOccurrenceObject&lt;/SPAN&gt; &lt;SPAN&gt;AndAlso&lt;/SPAN&gt; &lt;SPAN&gt;oOcc&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt;.&lt;SPAN&gt;StartsWith&lt;/SPAN&gt;(&lt;SPAN&gt;"99991000 - CBC - Zijwang 1.2_Weld:"&lt;/SPAN&gt;)
		&lt;SPAN&gt;oOcc&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;"99991000 - CBC - Zijwang 1.2_Weld"&lt;/SPAN&gt; &amp;amp; &lt;SPAN&gt;":"&lt;/SPAN&gt; &amp;amp; &lt;SPAN&gt;i&lt;/SPAN&gt;
		&lt;SPAN&gt;i&lt;/SPAN&gt; = &lt;SPAN&gt;i&lt;/SPAN&gt; + 1
	&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
&lt;SPAN&gt;Next&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;And the MIR&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oAsmDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;AssemblyDocument&lt;/SPAN&gt;
    &lt;SPAN&gt;oAsmDoc&lt;/SPAN&gt; = &lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oAsmDef&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;AssemblyComponentDefinition&lt;/SPAN&gt;
    &lt;SPAN&gt;oAsmDef&lt;/SPAN&gt; = &lt;SPAN&gt;oAsmDoc&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;

&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oOcc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;ComponentOccurrence&lt;/SPAN&gt; 
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;i&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Integer&lt;/SPAN&gt; = 1

&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oOcc&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;oAsmDef&lt;/SPAN&gt;.&lt;SPAN&gt;Occurrences&lt;/SPAN&gt;
	&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oOcc&lt;/SPAN&gt;.&lt;SPAN&gt;Type&lt;/SPAN&gt; = &lt;SPAN&gt;ObjectTypeEnum&lt;/SPAN&gt;.&lt;SPAN&gt;kComponentOccurrenceObject&lt;/SPAN&gt; &lt;SPAN&gt;AndAlso&lt;/SPAN&gt; &lt;SPAN&gt;oOcc&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt;.&lt;SPAN&gt;StartsWith&lt;/SPAN&gt;(&lt;SPAN&gt;"99991000 - CBC - Zijwang 1.2_Weld_MIR"&lt;/SPAN&gt;)
		&lt;SPAN&gt;oOcc&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;"99991000 - CBC - Zijwang 1.2_Weld_MIR"&lt;/SPAN&gt; &amp;amp; &lt;SPAN&gt;":"&lt;/SPAN&gt; &amp;amp; &lt;SPAN&gt;i&lt;/SPAN&gt;
		&lt;SPAN&gt;i&lt;/SPAN&gt; = &lt;SPAN&gt;i&lt;/SPAN&gt; + 1
	&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
&lt;SPAN&gt;Next&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;This numbers the components correctly.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="correct.PNG" style="width: 400px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1007570iCAE7A6D28015856A/image-size/medium?v=v2&amp;amp;px=400" role="button" title="correct.PNG" alt="correct.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;</description>
      <pubDate>Wed, 05 Jan 2022 08:24:27 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/numbering-components/m-p/10858941#M133140</guid>
      <dc:creator>alikhan.ganayev</dc:creator>
      <dc:date>2022-01-05T08:24:27Z</dc:date>
    </item>
  </channel>
</rss>

