| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Autodesk AutoCAD: Crashkurs, ein Seminar am 28.04.2025
|
Autor
|
Thema: Externe Regel aus Formular ausführen (286 / mal gelesen)
|
RP4711 Mitglied Technischer Produktdesigner
Beiträge: 42 Registriert: 01.03.2024 Inventor 2024
|
erstellt am: 07. Dez. 2024 23:20 <-- editieren / zitieren --> Unities abgeben:
Guten Tag, ich brauche oder suche eine Regel, die wenn möglich folgendes macht: Externe Regel Nr.1 wird ausgeführt und öffnet ein globales Formular, in dem Laserteil (als Multi-Parameter S235JR,S355J2, 1.4301 und 1.4571 oder Brennzuschnitt als Multi-Parameter S235JR,S355J2,1.4301 und 1.4571) angewählt werden kann. Wenn in diesem Formular beispielsweise Laserteil S235JR angewählt wird, soll dieser Parameter mit der externen Regel "Laserteil" angelegt werden. Doppelte Parameter sollten Laserteil_1 etc. sollten nicht vorkommen. Die Regel wird in einer ipt ausgeführt. Vielen Dank im voraus. Auch für die erste Anfrage am heutigen Tag. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2696 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 08. Dez. 2024 11:38 <-- editieren / zitieren --> Unities abgeben: Nur für RP4711
Moin Die Auswahllisten in globalen Formularen basieren auf Multivalueparametern. Den Parameter erst auf Basis der Auswahl in der Liste zu erstellen kann nicht funktionieren. Die beiden Parameter mitsamt ihren Multivaluelisten müßten demzufolge bereits existieren oder in der externen Regel 1 erzeugt werden. Die beiden Auswahllisten im Formular stehen in keiner Beziehung zueinander. Es ist nicht möglich logische Bedingungen und Ausschlüsse zu definieren. Es kann in beiden Listen ein Wert gewählt werden und der muss nicht identisch sein. Man könnte es eher so drehen, dass es mit zwei Hilfsparametern gemacht wird. "H1" ist ein Multivalue mit "Laserteil" und "Brennzuschnitt" und "H2" ist ein Multivalue mit "S235JR", "S355J2", "1.4301" und "1.4571". Eventuell bei beiden noch einen Leerwert vorsehen, falls das erforderlich ist. Beim Schließen des Formulars kann man die zweite Regel auslösen, die mit den Werten der beiden Hilfsparameter den endgültigen generiert. Soll der Parameter dann entweder Laserteil oder Brennzuschnitt heißen und den Materialwert als Wert enthalten?
------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RP4711 Mitglied Technischer Produktdesigner
Beiträge: 42 Registriert: 01.03.2024 Inventor 2024
|
erstellt am: 08. Dez. 2024 12:25 <-- editieren / zitieren --> Unities abgeben:
Moin moin, vielen Dank für Ihre Antwort. Regel Laserteil legt den Parameter Laserteil an, wenn hier S235JR oder ähnlich ausgewählt wird. Regel Brennzuschnitt legt den Parameter Brennzuschnitt an wenn hier S235JR oder ähnlich ausgewählt wird. Wenn möglich, soll nur der im Formular ausgewählte Parameter angelegt werden. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2696 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 09. Dez. 2024 20:34 <-- editieren / zitieren --> Unities abgeben: Nur für RP4711
Moin Nochmal, du kannst in einem iLogicformular keine frei definierte Auswahlliste anzeigen. Die Dropdowns holen ihren Inhalt aus einem bereits vorher bestehenden Multivalue Parameter. Du kannst höchstens den aktuellen Wert des Parameters über das Dropdown wählen. Das was du beschreibst ist mit einer iLogicform nicht realisierbar, sondern erfordert z.B. eine Windows Form. Die kann frei definierte Listen als Inhalt eines Dropdown anzeigen und sie kann die selektierten Werte des Dropdowns an eine weitere Funktion übergeben bzw. die Arbeit als Backcode hinter dem Button gleich selbst ausführen. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RP4711 Mitglied Technischer Produktdesigner
Beiträge: 42 Registriert: 01.03.2024 Inventor 2024
|
erstellt am: 24. Dez. 2024 14:52 <-- editieren / zitieren --> Unities abgeben:
Frohe Weihnachten, ich habe nun eine externe Regel (angewendet in einer ipt Datei) die ein globales Formular öffnet, in dem ich entweder Laserteile in S235JR, S355J2 oder 1.4301 färben (Bauteil hat dann die Farbe) kann oder Brennzuschnitte in S235JR, S355J2 oder 1.4301 färben kann. Beides also Brennzuschnitte und Laserteile sollen oder können nicht für eine ipt Datei angewendet werden. Es kann sein, dass ein Brennzuschnitt zum Laserteil wird oder andersrum. Laserteil und Brennzuschnitte werden als fx-Parameter in der ipt angelegt mit jeweils "", S235JR, S355J2 und 1.4301. "" ist der Startwert vom multi value. Sobald ich quasi Laserteile S235JR und Brennzuschnitte S235JR ausgewählt habe, wird die Farbe nicht mehr übernommen. Beispiel wenn Laserteil S235JR ausgewählt wird oder wieder wird, muss Brennzuschnitte auf "" stehen. Wenn ich den Wert im Formular händisch Brennzuschnitte auf "" stelle, ist die Farbe wieder gemäß der Auswahl übernommen. Select case habe ich schon probiert Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RP4711 Mitglied Technischer Produktdesigner
Beiträge: 42 Registriert: 01.03.2024 Inventor 2024
|
erstellt am: 24. Dez. 2024 14:59 <-- editieren / zitieren --> Unities abgeben:
|
RP4711 Mitglied Technischer Produktdesigner
Beiträge: 42 Registriert: 01.03.2024 Inventor 2024
|
erstellt am: 24. Dez. 2024 15:03 <-- editieren / zitieren --> Unities abgeben:
Zum Bild externe Regel Test 2222 färbt eine ipt gemäß der Vorgabe dem Farbschema Laserteile die externe Regel Test 3333 färbt eine ipt gemäß der Vorgabe dem Farbschema Brennzuschnitte. Die externen Regeln Test 2222pa und Test 3333pa waren gedacht um den Parameterwert wenn nicht benötigt wieder auf "" zu stellen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2696 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 24. Dez. 2024 21:16 <-- editieren / zitieren --> Unities abgeben: Nur für RP4711
Moin Ich weiß gar nicht wo ich anfangen soll, was an deinem Plan alles nicht funktionieren wird. 1. In einer externen Regel gibt es das Parameterobjekt so nicht. Man kann daher nicht einfach über die Parameternamen auf den Inhalt zugreifen. Das erkennt man auch daran, dass Brennzuschnitt und Laserteil in deinem Select nicht blau gefärbt sind. 2. Dadurch wird bei einer Änderung der beiden Parameter durch dein Formular, diese Regel nie ausgeführt. 3. Selbst wenn das funktionieren würde, hättest du in sauberes Endlos Ping Pong gebaut. Parameter Laserzuschnitt wird im Formular von dir geändert. Deine Regel springt an und stellt die Farbe um. Soweit korrekt. Aber, dann stellt sie auch den Parameter Brennzuschnitt auf "" um. Also springt die Regel wieder an, da jetzt Parameter Brennzuschnitt geändert wurde, usw usw usw. 4. Als Benutzer würde ich erwarten, dass wenn ich in einem Parameter einen Wert ungleich "" einstelle, das andere Wert von allein auf "" umgestellt wird. Das bedingt aber Events im Formular und die gibt es in iLogic einfach nicht. Das führt zu undefinierten Zuständen, in denen beide Parameter einen Wert ungleich "" haben. 5. Du könntest in das Formualr deine Regel zum Farbe umstellen als Button einfügen und manuell starten nachdem du die Werte eingestellt hast. Das funktioniert solange du selbst sicher stellst, dass immer nur einer der beiden Parameter ungleich "" ist. Ansonst wird immer der zuerst abgeprüfte Parameter gewinnen. 6. Sollte das Formular von einer Baugruppe aus aufgerufen werden, besteht im Formular kein Zugriff mehr auf die Parameter des Bauteiles. Gibt sicher noch mehr. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |