<?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: Ilogic code in Inventor Programming - iLogic, Macros, AddIns &amp; Apprentice</title>
    <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/ilogic-code/m-p/12398666#M160683</link>
    <description>&lt;P&gt;Hi!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;not tested, but I think an edit like this feels like it should work:&lt;/P&gt;&lt;P&gt;&lt;EM&gt;nicht getestet, aber ich denke, eine Bearbeitung wie diese sollte funktionieren:&lt;/EM&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oParam&lt;/SPAN&gt;  &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;userParams&lt;/SPAN&gt;  &lt;SPAN&gt;' Wir gehen durch die Userparameter dieses Dokuments&lt;/SPAN&gt;
	&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oParam&lt;/SPAN&gt;.&lt;SPAN&gt;comment&lt;/SPAN&gt; = &lt;SPAN&gt;"_"&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt; &lt;SPAN&gt;' Wenn der Parameter den Update-Unterstrich hat&lt;/SPAN&gt;
		
		&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oSubDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Document&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;subDocs&lt;/SPAN&gt; &lt;SPAN&gt;' Rufen wir nacheinander alle Komponenten diese Baugruppe auf&lt;/SPAN&gt;
			&lt;STRONG&gt;oSubDoc.ComponentDefinition.ModelStates.MemberEditScope = MemberEditScopeEnum.kEditAllMembers 'sets the scope to edit all components&lt;/STRONG&gt;
			
			&lt;SPAN&gt;subUserParams&lt;/SPAN&gt; = &lt;SPAN&gt;oSubDoc&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;UserParameters&lt;/SPAN&gt; &lt;SPAN&gt;' Referenzieren ihre Userparameter in einer Collection-Variable&lt;/SPAN&gt;

			&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oSubParam&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;subUserParams&lt;/SPAN&gt; &lt;SPAN&gt;' gehen auch diese durch und schauen&lt;/SPAN&gt;
				&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oSubParam&lt;/SPAN&gt;.&lt;SPAN&gt;comment&lt;/SPAN&gt; = &lt;SPAN&gt;"_"&lt;/SPAN&gt; &lt;SPAN&gt;And&lt;/SPAN&gt; &lt;SPAN&gt;oSubParam&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;oParam&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt; &lt;SPAN&gt;' ob wir den Unterstrich auch dort finden und ob der Name identisch ist&lt;/SPAN&gt;
					&lt;SPAN&gt;oSubParam&lt;/SPAN&gt;.&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;oParam&lt;/SPAN&gt;.&lt;SPAN&gt;Value&lt;/SPAN&gt; &lt;SPAN&gt;' wenn ja, übergeben wir den Wert&lt;/SPAN&gt;
				&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;			
			&lt;SPAN&gt;Next&lt;/SPAN&gt;
			
			&lt;STRONG&gt;oSubDoc.ComponentDefinition.ModelStates.MemberEditScope = MemberEditScopeEnum.kEditActiveMember 'resets the scope to edit the active component&lt;/STRONG&gt;
		&lt;SPAN&gt;Next&lt;/SPAN&gt;			
	&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;this utilises code that sets the modelstate-scope to edit all members like you would manually here&lt;/P&gt;&lt;P&gt;&lt;EM&gt;dies verwendet Code, der den Modelstate-scope so einstellt, dass alle Mitglieder bearbeitet werden können, wie Sie es hier manuell tun würden&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Jacob__with__a__k_0-1700842118478.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1296979iAF7923D21A05C234/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Jacob__with__a__k_0-1700842118478.png" alt="Jacob__with__a__k_0-1700842118478.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;(found here:&amp;nbsp;&lt;A href="http://www.hjalte.nl/73-ilogic-rules-and-modelstates" target="_blank" rel="noopener"&gt;http://www.hjalte.nl/73-ilogic-rules-and-modelstates&lt;/A&gt;)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;if this code doesn't work the alternative would be to loop trough all model states in a document but I don't like adding even more loops to your code&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Wenn dieser Code nicht funktioniert, wäre die Alternative, eine Schleife durch alle Modellzustände in einem Dokument zu ziehen, aber ich mag es nicht, noch mehr Schleifen zu Ihrem Code hinzuzufügen&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Personally I like to divide every few loops into a function or sub to increase readability, but that's preference&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Ich persönlich mag es, alle paar Loops in eine Funktion oder Unterfunktion aufzuteilen, um die Lesbarkeit zu erhöhen, aber das ist eine Vorliebe&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;hope this works, happy coding!&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Ich hoffe, das funktioniert, viel Spaß beim Codieren!&lt;/EM&gt;&lt;/P&gt;</description>
    <pubDate>Fri, 24 Nov 2023 16:12:29 GMT</pubDate>
    <dc:creator>Jacob__with__a__k</dc:creator>
    <dc:date>2023-11-24T16:12:29Z</dc:date>
    <item>
      <title>Ilogic code</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/ilogic-code/m-p/12396435#M160650</link>
      <description>&lt;P&gt;Hallo an alle!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Ich habe hier eine iLogic Code, mit der ich Parameter mit gleichem Name weiter an die Bauteile und Baugruppen gebe.&lt;/P&gt;&lt;P&gt;Funktioniert solange es keine Modelzustände in Bauteilen oder Baugruppen sind.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Kann mir jemand helfen dieses Code so umzuschreiben dass es auch mit Modellzuständen funktioniert!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Vielen Dank im Voraus!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hier ist der iLogic Code:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;iLogicVb&lt;/SPAN&gt;.&lt;SPAN&gt;UpdateWhenDone&lt;/SPAN&gt; = &lt;SPAN&gt;True&lt;/SPAN&gt; &lt;SPAN&gt;' Der Arbeitsbereich wird erst nach dem kompletten Abarbeiten &lt;/SPAN&gt;
                               &lt;SPAN&gt;' dieser Regel aktualisiert und nicht schon jedes mal wenn sich &lt;/SPAN&gt;
							   &lt;SPAN&gt;' darin ein Parameter ändert&lt;/SPAN&gt;
  
&lt;SPAN&gt;userParams&lt;/SPAN&gt; = &lt;SPAN&gt;ThisDoc&lt;/SPAN&gt;.&lt;SPAN&gt;Document&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;UserParameters&lt;/SPAN&gt; &lt;SPAN&gt;' Eine Collection mit allen UserParametern dieser Baugruppe&lt;/SPAN&gt;
&lt;SPAN&gt;RefParams&lt;/SPAN&gt; = &lt;SPAN&gt;ThisDoc&lt;/SPAN&gt;.&lt;SPAN&gt;Document&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;ReferenceParameters&lt;/SPAN&gt; 
&lt;SPAN&gt;subDocs&lt;/SPAN&gt; = &lt;SPAN&gt;ThisDoc&lt;/SPAN&gt;.&lt;SPAN&gt;Document&lt;/SPAN&gt;.&lt;SPAN&gt;AllReferencedDocuments&lt;/SPAN&gt;.&lt;SPAN&gt;OfType&lt;/SPAN&gt;(&lt;SPAN&gt;Of&lt;/SPAN&gt; &lt;SPAN&gt;Document&lt;/SPAN&gt;) &lt;SPAN&gt;' Eine Collection mit allen Komponenten dieser Baugruppe&lt;/SPAN&gt;

&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oParam&lt;/SPAN&gt;  &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;userParams&lt;/SPAN&gt;  &lt;SPAN&gt;' Wir gehen durch die Userparameter dieses Dokuments&lt;/SPAN&gt;
	
	&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oParam&lt;/SPAN&gt;.&lt;SPAN&gt;comment&lt;/SPAN&gt; = &lt;SPAN&gt;"_"&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt; &lt;SPAN&gt;' Wenn der Parameter den Update-Unterstrich hat&lt;/SPAN&gt;
		
		&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oSubDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Document&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;subDocs&lt;/SPAN&gt; &lt;SPAN&gt;' Rufen wir nacheinander alle Komponenten diese Baugruppe auf&lt;/SPAN&gt;
			&lt;SPAN&gt;subUserParams&lt;/SPAN&gt; = &lt;SPAN&gt;oSubDoc&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;UserParameters&lt;/SPAN&gt; &lt;SPAN&gt;' Referenzieren ihre Userparameter in einer Collection-Variable&lt;/SPAN&gt;

			&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oSubParam&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;subUserParams&lt;/SPAN&gt; &lt;SPAN&gt;' gehen auch diese durch und schauen&lt;/SPAN&gt;
				&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oSubParam&lt;/SPAN&gt;.&lt;SPAN&gt;comment&lt;/SPAN&gt; = &lt;SPAN&gt;"_"&lt;/SPAN&gt; &lt;SPAN&gt;And&lt;/SPAN&gt; &lt;SPAN&gt;oSubParam&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;oParam&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt; &lt;SPAN&gt;' ob wir den Unterstrich auch dort finden und ob der Name identisch ist&lt;/SPAN&gt;
					&lt;SPAN&gt;oSubParam&lt;/SPAN&gt;.&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;oParam&lt;/SPAN&gt;.&lt;SPAN&gt;Value&lt;/SPAN&gt; &lt;SPAN&gt;' wenn ja, übergeben wir den Wert&lt;/SPAN&gt;
				&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;			
			&lt;SPAN&gt;Next&lt;/SPAN&gt;						
		&lt;SPAN&gt;Next&lt;/SPAN&gt;			
	&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
&lt;SPAN&gt;Next&lt;/SPAN&gt;
&lt;SPAN&gt;'____________________&lt;/SPAN&gt;

&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oParam&lt;/SPAN&gt;  &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;RefParams&lt;/SPAN&gt;  &lt;SPAN&gt;' Wir gehen durch die Userparameter dieses Dokuments&lt;/SPAN&gt;
	
	&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oParam&lt;/SPAN&gt;.&lt;SPAN&gt;comment&lt;/SPAN&gt; = &lt;SPAN&gt;"_"&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt; &lt;SPAN&gt;' Wenn der Parameter den Update-Unterstrich hat&lt;/SPAN&gt;
		
		&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oSubDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Document&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;subDocs&lt;/SPAN&gt; &lt;SPAN&gt;' Rufen wir nacheinander alle Komponenten diese Baugruppe auf&lt;/SPAN&gt;
			&lt;SPAN&gt;subUserParams&lt;/SPAN&gt; = &lt;SPAN&gt;oSubDoc&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;UserParameters&lt;/SPAN&gt; &lt;SPAN&gt;' Referenzieren ihre Userparameter in einer Collection-Variable&lt;/SPAN&gt;

			&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oSubParam&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;subUserParams&lt;/SPAN&gt; &lt;SPAN&gt;' gehen auch diese durch und schauen&lt;/SPAN&gt;
				&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oSubParam&lt;/SPAN&gt;.&lt;SPAN&gt;comment&lt;/SPAN&gt; = &lt;SPAN&gt;"_"&lt;/SPAN&gt; &lt;SPAN&gt;And&lt;/SPAN&gt; &lt;SPAN&gt;oSubParam&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;oParam&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt; &lt;SPAN&gt;' ob wir den Unterstrich auch dort finden und ob der Name identisch ist&lt;/SPAN&gt;
					&lt;SPAN&gt;oSubParam&lt;/SPAN&gt;.&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;oParam&lt;/SPAN&gt;.&lt;SPAN&gt;Value&lt;/SPAN&gt; &lt;SPAN&gt;' wenn ja, übergeben wir den Wert&lt;/SPAN&gt;
				&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;			
			&lt;SPAN&gt;Next&lt;/SPAN&gt;						
		&lt;SPAN&gt;Next&lt;/SPAN&gt;			
	&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
&lt;SPAN&gt;Next&lt;/SPAN&gt;


&lt;SPAN&gt;'_______________________&lt;/SPAN&gt;
&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oSubDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Document&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;subDocs&lt;/SPAN&gt; &lt;SPAN&gt;' Wir gehen nochmal alle Unterkomponenten durch...&lt;/SPAN&gt;
	&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;iLogicVb&lt;/SPAN&gt;.&lt;SPAN&gt;Automation&lt;/SPAN&gt;.&lt;SPAN&gt;Rules&lt;/SPAN&gt;(&lt;SPAN&gt;oSubDoc&lt;/SPAN&gt;) &lt;SPAN&gt;Is&lt;/SPAN&gt; &lt;SPAN&gt;Nothing&lt;/SPAN&gt; = &lt;SPAN&gt;False&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt; &lt;SPAN&gt;' ...und schauen ob diese Regeln haben. Wenn ja,...&lt;/SPAN&gt;
		&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;myRule&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;iLogicVb&lt;/SPAN&gt;.&lt;SPAN&gt;Automation&lt;/SPAN&gt;.&lt;SPAN&gt;Rules&lt;/SPAN&gt;(&lt;SPAN&gt;oSubDoc&lt;/SPAN&gt;) &lt;SPAN&gt;' ...gehen wir diese alle durch.&lt;/SPAN&gt;
			&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;myRule&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;"ParameterUpdate"&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt; &lt;SPAN&gt;' Wenn wir eine mit dem Namen "ParameterUpdate" finden...&lt;/SPAN&gt;
				&lt;SPAN&gt;iLogicVb&lt;/SPAN&gt;.&lt;SPAN&gt;Automation&lt;/SPAN&gt;.&lt;SPAN&gt;RunRuleDirect&lt;/SPAN&gt;(&lt;SPAN&gt;myRule&lt;/SPAN&gt;) &lt;SPAN&gt;' ...führen wir diese aus!&lt;/SPAN&gt;
			&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;				
		&lt;SPAN&gt;Next&lt;/SPAN&gt;					
	&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;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 23 Nov 2023 13:10:08 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/ilogic-code/m-p/12396435#M160650</guid>
      <dc:creator>zimmermannLRX9U</dc:creator>
      <dc:date>2023-11-23T13:10:08Z</dc:date>
    </item>
    <item>
      <title>Re: Ilogic code</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/ilogic-code/m-p/12398666#M160683</link>
      <description>&lt;P&gt;Hi!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;not tested, but I think an edit like this feels like it should work:&lt;/P&gt;&lt;P&gt;&lt;EM&gt;nicht getestet, aber ich denke, eine Bearbeitung wie diese sollte funktionieren:&lt;/EM&gt;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oParam&lt;/SPAN&gt;  &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;userParams&lt;/SPAN&gt;  &lt;SPAN&gt;' Wir gehen durch die Userparameter dieses Dokuments&lt;/SPAN&gt;
	&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oParam&lt;/SPAN&gt;.&lt;SPAN&gt;comment&lt;/SPAN&gt; = &lt;SPAN&gt;"_"&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt; &lt;SPAN&gt;' Wenn der Parameter den Update-Unterstrich hat&lt;/SPAN&gt;
		
		&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oSubDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Document&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;subDocs&lt;/SPAN&gt; &lt;SPAN&gt;' Rufen wir nacheinander alle Komponenten diese Baugruppe auf&lt;/SPAN&gt;
			&lt;STRONG&gt;oSubDoc.ComponentDefinition.ModelStates.MemberEditScope = MemberEditScopeEnum.kEditAllMembers 'sets the scope to edit all components&lt;/STRONG&gt;
			
			&lt;SPAN&gt;subUserParams&lt;/SPAN&gt; = &lt;SPAN&gt;oSubDoc&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;UserParameters&lt;/SPAN&gt; &lt;SPAN&gt;' Referenzieren ihre Userparameter in einer Collection-Variable&lt;/SPAN&gt;

			&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oSubParam&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;subUserParams&lt;/SPAN&gt; &lt;SPAN&gt;' gehen auch diese durch und schauen&lt;/SPAN&gt;
				&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oSubParam&lt;/SPAN&gt;.&lt;SPAN&gt;comment&lt;/SPAN&gt; = &lt;SPAN&gt;"_"&lt;/SPAN&gt; &lt;SPAN&gt;And&lt;/SPAN&gt; &lt;SPAN&gt;oSubParam&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;oParam&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt; &lt;SPAN&gt;' ob wir den Unterstrich auch dort finden und ob der Name identisch ist&lt;/SPAN&gt;
					&lt;SPAN&gt;oSubParam&lt;/SPAN&gt;.&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;oParam&lt;/SPAN&gt;.&lt;SPAN&gt;Value&lt;/SPAN&gt; &lt;SPAN&gt;' wenn ja, übergeben wir den Wert&lt;/SPAN&gt;
				&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;			
			&lt;SPAN&gt;Next&lt;/SPAN&gt;
			
			&lt;STRONG&gt;oSubDoc.ComponentDefinition.ModelStates.MemberEditScope = MemberEditScopeEnum.kEditActiveMember 'resets the scope to edit the active component&lt;/STRONG&gt;
		&lt;SPAN&gt;Next&lt;/SPAN&gt;			
	&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;this utilises code that sets the modelstate-scope to edit all members like you would manually here&lt;/P&gt;&lt;P&gt;&lt;EM&gt;dies verwendet Code, der den Modelstate-scope so einstellt, dass alle Mitglieder bearbeitet werden können, wie Sie es hier manuell tun würden&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Jacob__with__a__k_0-1700842118478.png" style="width: 600px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1296979iAF7923D21A05C234/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Jacob__with__a__k_0-1700842118478.png" alt="Jacob__with__a__k_0-1700842118478.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;(found here:&amp;nbsp;&lt;A href="http://www.hjalte.nl/73-ilogic-rules-and-modelstates" target="_blank" rel="noopener"&gt;http://www.hjalte.nl/73-ilogic-rules-and-modelstates&lt;/A&gt;)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;if this code doesn't work the alternative would be to loop trough all model states in a document but I don't like adding even more loops to your code&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Wenn dieser Code nicht funktioniert, wäre die Alternative, eine Schleife durch alle Modellzustände in einem Dokument zu ziehen, aber ich mag es nicht, noch mehr Schleifen zu Ihrem Code hinzuzufügen&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Personally I like to divide every few loops into a function or sub to increase readability, but that's preference&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Ich persönlich mag es, alle paar Loops in eine Funktion oder Unterfunktion aufzuteilen, um die Lesbarkeit zu erhöhen, aber das ist eine Vorliebe&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;hope this works, happy coding!&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Ich hoffe, das funktioniert, viel Spaß beim Codieren!&lt;/EM&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 24 Nov 2023 16:12:29 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/ilogic-code/m-p/12398666#M160683</guid>
      <dc:creator>Jacob__with__a__k</dc:creator>
      <dc:date>2023-11-24T16:12:29Z</dc:date>
    </item>
  </channel>
</rss>

