Automatisierte Pflege von Baugruppen-Beziehungen mit der Model Processor Worker Extension
02.04.2026
von Download Admin
In vielen Entwicklungsprozessen besteht die Anforderung, Berechnungen über mehrere Komponenten einer Baugruppe hinweg konsistent und nachvollziehbar abzubilden. Typische Beispiele sind die Summierung von benetzten Flächen oder Volumina einzelner Teile. Die manuelle Pflege entsprechender Beziehungen in PTC Creo ist jedoch fehleranfällig und zeitaufwendig.
Folgend ist es sinnvoll dieses in einen vollautomatiserten Workflow auszuleiten, welcher bei jedem einchecken in Windchill die Baugruppen prüft und gegebenenfalls die Beziehungen und andere von Komponenten bestimmte Eigenschaften anpasst.
Herunterladen einer Beispiel-MPX Datei : https://download.inneo.cloud/gt_knowledge_base/20260402_MP_MPWE_Relations.zip
Zielsetzung
Ziel des Beispiels ist es, Parameterwerte aus Komponenten (z. B. WETTED_AREA oder WET_VOLUME) innerhalb einer Baugruppe nach definierten Regeln zu aggregieren und als zentrale Beziehungen bereitzustellen. Diese Beziehungen sollen:
- automatisch erzeugt bzw. aktualisiert werden
- konsistente Ergebnisse liefern
- außerhalb (Model Processor User) und innerhalb von Windchill (Model Processor Worker Extension) funktionieren
Lösungsansatz mit Model Processor Worker Extension / Model Processor User
Die bereitgestellte XML-Aktionsliste zeigt einen durchgängigen Workflow zur Umsetzung:
1. Initialisierung von Summenvariablen
Zu Beginn werden benutzerdefinierte Variablen wie WETTED_AREA_DOUBLE und WET_VOLUME_DOUBLE auf 0.0 gesetzt.
Diese dienen auch als temporäre Speicher für die spätere Aggregation.
2. Rekursive Auswertung aller Baugruppenkomponenten
Über einen rekursiven Durchlauf der Baugruppe werden die entsprechenden Parameter ALS BEZIEHUNG aller Komponenten aufsummiert. Dabei wird jede gefundene Instanz berücksichtigt und deren Parameterwert hinzuaddiert.
3. Änderungsdetektion mittels Hashwert
Ein zentrales Element ist die Generierung eines MD5-Hashwerts aus den berechneten Summen.
Dieser Hash wird im Parameter WET_RELATION_CHANGE gespeichert und dient dazu:
- Änderungen an den Berechnungswerten zu erkennen
- unnötige Modelländerungen zu vermeiden
4. Automatisches Ein- und Auschecken
Nur wenn sich der Hashwert geändert hat, wird die Baugruppe automatisch:
- ausgecheckt
- bearbeitet
- gespeichert und wieder eingecheckt
Dadurch wird sichergestellt, dass die Version nicht verändert wird wenn die Daten schon bearbeitet sind. Das beim revisualisieren keine Loops entstehen.
5. Löschen und Neuerstellen von Beziehungen
Bestehende Beziehungen werden gezielt entfernt, bevor neue generiert werden.
Anschließend werden die aktualisierten Beziehungen eingefügt, z. B.:
- Zuweisung der aufsummierten Werte
- Formatierung als String (inkl. Einheit)
Damit ist gewährleistet, dass keine veralteten oder redundanten Beziehungen bestehen bleiben.
6. Regeneration und Speicherung
Abschließend wird das Modell regeneriert und gespeichert, sodass alle Änderungen wirksam werden.
7. Nutzung im Model Processor User Kontext
Zur Nutzung im Model Processor User sollten die Aktionen
- Speichern
- Einchecken
- Auschecken
entfernt und diese entsprechend durch den Nutzer, oder den Model Processor User durchgeführt werden.
Mehrwert der Lösung
Durch den Einsatz der Model Processor Worker Extension ergeben sich klare Vorteile:
- Automatisierung: Keine manuelle Pflege von Beziehungen mehr, welche auf der Veränderbarkeit des Modells bestehen.
- Konsistenz: Einheitliche Berechnungslogik über alle Baugruppen
- Performance: Änderungen werden nur bei Bedarf durchgeführt (lokal (Model Processor User) wie automatisch (Model Processor Worker Extension))
- Nachvollziehbarkeit: Beziehungen werden strukturiert und reproduzierbar erzeugt