Automatisierte Pflege von Baugruppen-Beziehungen mit der Model Processor Worker Extension

02.04.2026

von

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

Zurück zur Übersicht