| | |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| | |
 | PNY präsentiert die neue NVIDIA RTX A400 und die A1000 Grafikkarte, eine Pressemitteilung
|
|
Autor
|
Thema: Regel reagiert nicht bei Parameteränderung (1754 mal gelesen)
|
kiri2 Mitglied Tech.Produktdesigner

 Beiträge: 34 Registriert: 13.03.2014
|
erstellt am: 01. Sep. 2014 13:54 <-- editieren / zitieren --> Unities abgeben:         
Hallo, ich brauch mal wieder euren iLogic Rat. Ein teil meines Codes funktioniert leider nicht. Code: 'Prüft ob der Parameter sich geändert hat If Not Parameter("Position_1") = Length_MemoryEL1 Then ... End If 'Speichert den eingegebenen Wert Length_MemoryEL1 = Parameter("Position_1")
Der Parameter ist nicht immer vorhanden deswegen muss ich es so: Parameter("Position_1") schreiben und halt die Fehlermeldungen ausstellen wenn er nicht gefunden wird. Jedoch reagiert die Regel nicht wenn ich den Wert für den Parameter ändere.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
muellc Ehrenmitglied V.I.P. h.c. ICT Specialist

 Beiträge: 3501 Registriert: 30.11.2006 Inventor 2017.4.12 64 bit Windows 10 Enterprise 64 bit 3DEXPERIENCE R2016x -------------------- HP Z-Book 15 G4 32 Gig Ram NVIDIA Quadro M2200 2x HP E243i
|
erstellt am: 03. Sep. 2014 10:02 <-- editieren / zitieren --> Unities abgeben:          Nur für kiri2
|
kiri2 Mitglied Tech.Produktdesigner

 Beiträge: 34 Registriert: 13.03.2014
|
erstellt am: 11. Sep. 2014 12:06 <-- editieren / zitieren --> Unities abgeben:         
Hallo, danke erstemal für deine Antwort. Damit komme ich leider nicht weiter. Ich habe ja schon eine Regel die steuert ob der Parameter da ist oder nicht. Aufgrund einer Anzahl. Hier die Regel:
Code: Imports Inventor.UnitsTypeEnumSub Main() Dim oDoc As Document oDoc = ThisApplication.ActiveDocument Dim oCompDef As ComponentDefinition oCompDef = oDoc.ComponentDefinition Dim oParams As Parameters oParams = oCompDef.Parameters Dim oUserParams As UserParameters oUserParams = oParams.UserParameters If Anzahl >= 1 Then Dim Leiste_1 As Parameter Try oTester = oUserParams.Item("Position_1") Catch oMaterialType = oUserParams.AddbyValue("Position_1", "0", kTextUnits) End Try End If If Anzahl < 1 Then Try Dim param As Parameter param = oDoc.ComponentDefinition.Parameters.Item("Position_1") param.Delete Catch End Try End If If Anzahl >= 2 Then Dim Leiste_2 As Parameter Try oTester = oUserParams.Item("Position_2") Catch oMaterialType = oUserParams.AddbyValue("Position_2", "0", kTextUnits) End Try End If If Anzahl < 2 Then Try Dim param As Parameter param = oDoc.ComponentDefinition.Parameters.Item("Position_2") param.Delete Catch End Try End If If Anzahl >= 3 Then Dim Leiste_3 As Parameter Try oTester = oUserParams.Item("Position_3") Catch oMaterialType = oUserParams.AddbyValue("Position_3", "0", kTextUnits) End Try End If If Anzahl < 3 Then Try Dim param As Parameter param = oDoc.ComponentDefinition.Parameters.Item("Position_3") param.Delete Catch End Try End If End Sub
Diese gibt an wie viele Parameter für die verschiedenen Positionen der Extrusionen im Bauteil vorhanden sind. Diese Regel: Code: Parameter.Quiet = TruePos_1 = Parameter("Position_1") Pos_2 = Parameter("Position_2") Pos_3 = Parameter("Position_3") ' Check if Position parameter has changed If Not Pos_1 = Pos_Memory_1 Then MessageBox.Show("parameter has changed do rule update again") End If ' Set memory parameter again Pos_Memory_1 = Pos_1 ' Check if Position parameter has changed If Not Pos_2 = Pos_Memory_2 Then MessageBox.Show("parameter has changed do rule update again") End If ' Set memory parameter again Pos_Memory_2 = Pos_2 ' Check if Position parameter has changed If Not Pos_3 = Pos_Memory_3 Then MessageBox.Show("parameter has changed do rule update again") End If ' Set memory parameter again Pos_Memory_3 = Pos_3
Soll nun Prüfen ob sich einer der eben erstellten Parameter noch durch eine Nutzereingabe verändert hat. Doch leider aktualisiert er die Parameter in der Regel nicht wenn der Benutzer in den Parametern einen neuen Wert eingibt. Gibt es da eine Lösung? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
muellc Ehrenmitglied V.I.P. h.c. ICT Specialist

 Beiträge: 3501 Registriert: 30.11.2006 Inventor 2017.4.12 64 bit Windows 10 Enterprise 64 bit 3DEXPERIENCE R2016x -------------------- HP Z-Book 15 G4 32 Gig Ram NVIDIA Quadro M2200 2x HP E243i
|
erstellt am: 12. Sep. 2014 08:04 <-- editieren / zitieren --> Unities abgeben:          Nur für kiri2
|

| |
kiri2 Mitglied Tech.Produktdesigner

 Beiträge: 34 Registriert: 13.03.2014
|
erstellt am: 12. Sep. 2014 08:47 <-- editieren / zitieren --> Unities abgeben:         
|