| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Creo |
Autor
|
Thema: Beziehung mit exists bearbeiten (2808 mal gelesen)
|
NicoFTB Mitglied Ingenieur Entwicklung/Konstuktion
Beiträge: 806 Registriert: 08.05.2012
|
erstellt am: 12. Jul. 2012 12:56 <-- editieren / zitieren --> Unities abgeben:
Hallo allerseits, in einer Beziehung überprüfe ich mit if exists("d1:1") ob ein Objekt vorhanden ist. Dieses Objekt zeigt auf eine übergeordnete Baugruppe und ist nicht immer geöffnet. Wenn ich jetzt aber die Beziehung bearbeiten möchte sagt ProE: "Ungültiges Symbol "d1:111" gefunden. Ist ja auch klar, da die übergeordnete Baugruppe nicht aufgerufen wurde. Kann ich in diesem Fall nur die Beziehung bearbeiten, wenn ich vorher meinen Speicher lösche und dann die komplette Baugruppe öffne, um dann in der Beziehung neue Werte zu setzen? Das kann doch nicht im Sinne des Erfinders sein. Schließlich möchte ich ja mit exists() gerade solche Fehler selbst beseitigen. Grüße Nico Code: if exists("d1:1") if d1:1111 == "auf" error Ungültiges Symbol 'd1:1111' gefunden. elektrodenwinkel = 45 else elektrodenwinkel = 0 endif endif
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
DonChunior Mitglied CAD-Systemadministrator
Beiträge: 1148 Registriert: 09.09.2004 Creo Parametric 4.0 M120 Windchill 11.1 M020-CPS11 Windows 10 Enterprise x64
|
erstellt am: 12. Jul. 2012 13:15 <-- editieren / zitieren --> Unities abgeben: Nur für NicoFTB
Ist d1:1111 ein Parameter oder ein Maß? Modellmaße können nämlich IMHO keinen String-Wert haben und somit rührt die Fehlermeldung daher. (Das hab ich jetzt aber nicht getestet und ist nur eine Vermutung.) ------------------ MfG, DonChunior Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
U_Suess Moderator CAD-Admin / manchmal Konstrukteur
Beiträge: 10560 Registriert: 14.11.2001 CREO 4 M120 (+Geniustool für Creo 6.0.2) PDMLink 11.0 M030 NTSI Contender E64 SC8 mit NVIDIA Quadro P4000 Intel Core i7-10700KF / 3,80 GHz 64GB DDR4-RAM / 2933 MHz Win 10 Prof. 64Bit (20H2)
|
erstellt am: 12. Jul. 2012 13:15 <-- editieren / zitieren --> Unities abgeben: Nur für NicoFTB
Hallo Nico, eine solche Abfrage 'nach oben' würde ich in meinen Beziehungen nicht einbauen. Die Wiederverwertbarkeit solcher Modelle ist nicht gegeben, weil es sich eben auf eine ganz bestimmte Baugruppe bezieht. Warum machst Du die Teile in der entsprechenden Baugruppe flexibel? Damit sind auch bei mehrfach verbauten identischen Teilen in einer Baugruppe unterschiedliche Teilezustände möglich. Und das sogar ohne die Verbindung über die Beziehungen. ------------------ Gruß Udo Keine Panik, Du arbeitest mit Pro/E! Und Du hast cad.de gefunden! Neu hier? Verwundert über die Antworten? Dann schnell nachfolgende Links durchlesen. • Richtig Fragen • Nettiquette • Suchfunktion • System-Info • Pro/E-Konfig • 7er-Regel • Unities Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
NicoFTB Mitglied Ingenieur Entwicklung/Konstuktion
Beiträge: 806 Registriert: 08.05.2012
|
erstellt am: 12. Jul. 2012 13:40 <-- editieren / zitieren --> Unities abgeben:
@DonChunior d1 ist eigentlich ein Parameter. Bei meiner allgemeinen Ausdrucksweise ist das natürlich untergegangen. @Udo In 'meiner' Baugruppe sind diverse Teile beweglich verbaut. Der Auftraggeber nutzt jedoch zur Umsetzung von verschiedenen Zuständen ein Skelett mit Koordinatensystemen und verändert in diesen Winkel. Damit das mit meiner Baugruppe funktioniert habe ich den Regenerierungswert meiner Rotation festgelegt und möchte diesen über den Parameter "auf" und "zu" steuern. (Ich hoffe man kann erkennen was ich meine) Ich glaube, dass ich mit meiner irreführenden Beschreibung dich auf einen falschen Pfad gelenkt habe. Der eigentliche Code sieht eher so aus:
Code: if exists("WinkelMainASM:1") if WinkelMainASM:3791 == "auf" winkel = 45 else winkel = 0 endif endif
WinkelMainASM ist ein Parameter winkel ist der Winkel in meiner Baugruppe (also sowas wie d1) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
U_Suess Moderator CAD-Admin / manchmal Konstrukteur
Beiträge: 10560 Registriert: 14.11.2001 CREO 4 M120 (+Geniustool für Creo 6.0.2) PDMLink 11.0 M030 NTSI Contender E64 SC8 mit NVIDIA Quadro P4000 Intel Core i7-10700KF / 3,80 GHz 64GB DDR4-RAM / 2933 MHz Win 10 Prof. 64Bit (20H2)
|
erstellt am: 12. Jul. 2012 14:04 <-- editieren / zitieren --> Unities abgeben: Nur für NicoFTB
|
| Konstrukteur/in Maschinenbauingenieur (m/w/d) im Bereich Lebensmitteltechnik | Wir bieten Lebensmittelherstellern maßgeschneiderte Prozessanlagen, die wirklich jeden Anspruch erfüllen! Kleine Lösungen für den Kernprozess und komplette Produktionsstraßen für die gesamte Prozesskette - vom Rohstoff bis zum fertigen Produkt. Dabei verstehen wir uns nicht nur als ?Lieferant? der Anlagen, sondern als Partner, der mit einzigartigem Know-how aktiv zur Realisierung der Produktideen des Kunden beiträgt.... | Anzeige ansehen | Konstruktion, Visualisierung |
|
NicoFTB Mitglied Ingenieur Entwicklung/Konstuktion
Beiträge: 806 Registriert: 08.05.2012
|
erstellt am: 12. Jul. 2012 15:46 <-- editieren / zitieren --> Unities abgeben:
Die Bewegung über ein Skelett steuern macht sicher Sinn. Werde ich mal umsetzen. Da jeder in seinem Bereich getrennt voneinander seine Baugruppen bearbeitet müssen sich diese auch getrennt steuern lassen. Zudem besitze ich keinen Zugriff auf die Hauptbaugruppe und kann dort keine Beziehungen erstellen sondern nur lesen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |