Benutzer-Werkzeuge

Webseiten-Werkzeuge


primus:setparenttostatus

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
primus:setparenttostatus [2023/07/19 08:48] – Klärung mit PostCalls mgrasprimus:setparenttostatus [2023/07/20 11:55] (aktuell) – Warnung zu PreCalls mgras
Zeile 1: Zeile 1:
 ====== SetParentToStatus ====== ====== SetParentToStatus ======
-Bei **SetParentToStatus** handelt es sich um eine [[Method]]e, die mit [[Call]] aufgerufen werden kann. Damit können z.B. in einem [[Workflow]] die übergeordneten Elemente zu einem Dokument, wie Zeichnungen zum 3D-Modell, auf einen bestimmten Status gesetzt werden. Es wird dabei nicht nur der Wert des Datenfelds geändert, sondern die komplette Workflowdefinition für das Parentdokument durchlaufen. Es ist sinnvoll SetParentToStatus in den [[Status#PostCalls]] einzutragen, damit die Parentdokumente vor dem Childrendokument verarbeitet werden.+Bei **SetParentToStatus** handelt es sich um eine [[Method]]e, die mit [[Call]] aufgerufen werden kann. Damit können z.B. in einem [[Workflow]] die übergeordneten Elemente zu einem Dokument, wie Zeichnungen zum 3D-Modell, auf einen bestimmten Status gesetzt werden. Es wird dabei nicht nur der Wert des Datenfelds geändert, sondern die komplette Workflowdefinition für das Parentdokument durchlaufen. Wenn SetParentToStatus verwendet werden soll, **__muss__** es in den [[Status#PostCalls]] eingetragen werden, damit die Parentdokumente **__nach__** dem Childrendokument verarbeitet werden. Ein Aufruf in den [[Status#PreCalls]] führt zu einer Endlosschleife durch die Primus abgebrochen wird.
  
 ===== Aufrufparameter ===== ===== Aufrufparameter =====
Zeile 13: Zeile 13:
 Im Beispiel wird innerhalb des Freigabeworkflows (003), die zum 3D-Modell zugehörige Zeichnungsdatei (.dft) mit freigegeben, wenn diese nicht schon einen der Status (003, 004, 005) hat. Mit dem Attribut ''condition'' wird sichergestellt das diese Aktion nur bei 3D-Modellen ausgeführt wird. Im Beispiel wird innerhalb des Freigabeworkflows (003), die zum 3D-Modell zugehörige Zeichnungsdatei (.dft) mit freigegeben, wenn diese nicht schon einen der Status (003, 004, 005) hat. Mit dem Attribut ''condition'' wird sichergestellt das diese Aktion nur bei 3D-Modellen ausgeführt wird.
 <code xml><Call method="SetParentToStatus" parameter="%FILEPATH%|WorkflowStatus|.003.004.005.|.dft" condition="'$(Condition.isSEModel)'" /></code> <code xml><Call method="SetParentToStatus" parameter="%FILEPATH%|WorkflowStatus|.003.004.005.|.dft" condition="'$(Condition.isSEModel)'" /></code>
 +
 +===== Zusammenspiel mit SetChildrenToStatus =====
 +SetParentToStatus bezieht sich nur auf Zeichnungen (siehe Parameter .dft). Dadurch geben die Teile nur eigene Zeichnungen frei. Sollte in einer Zeichnung ein weiteres Teil abgeleitet sein, dann wir der durch [[SetChildrenToStatus]] freigegeben. Das führt aber nicht zu einer Rekursion. Falls in der Rekursion die gleiche Zeichnung wieder auftaucht, wird diese ignoriert und nicht ein zweites mal verarbeitet. {{tag>CADAdaptApproved}}
  
 ===== Siehe auch ===== ===== Siehe auch =====
primus/setparenttostatus.1689756486.txt.gz · Zuletzt geändert: von mgras