Zusätzliche Funktionen > Serviceinformationsverwaltung > Windchill Service Information Manager und Windchill Service Parts anpassen > Benutzerdefinierte Inhalte oder Dateien zu einem Übersetzungspaket hinzufügen
Benutzerdefinierte Inhalte oder Dateien zu einem Übersetzungspaket hinzufügen
Die Anpassung kann nur von einem Windchill Administrator mit Java-Kenntnissen durchgeführt werden.
Sie können den Prozess zum Erstellen eines Übersetzungspakets anpassen, um weitere Dateien in ein Übersetzungspaket einzuschließen. Beispielsweise Metadaten wie das Fälligkeitsdatum in einem Text- oder XML-Dateiformat. Durch das Anpassen der Workflow-Vorlage Kern-Übersetzungsprozess können Sie weitere Dateien zu Übersetzungspaketen hinzufügen. Die Anpassung erfolgt folgendermaßen:
1. Öffnen Sie die Workflow-Vorlage Kern-Übersetzungsprozess in einem Workflow-Vorlagen-Editor.
2. Fügen Sie einen Ausdruck-Robot nach dem Build Translation Package-Knoten ein.
3. Konfigurieren Sie den Ausdruck dieses Robot-Knotens für den Aufruf von benutzerdefiniertem Code, der den Inhalt des Übersetzungspakets gemäß Ihren Geschäftsanforderungen ändert.
Wenn Sie ein Upgrade auf eine neue Version von Windchill durchführen, wird die Anpassung der Workflow-Prozessvorlage überschrieben. Sie müssen die Anpassung auf dem aktualisierten System erneut durchführen.
Nachfolgend sehen Sie ein Beispiel für Workflow-Code, der benutzerdefinierten Code für den Zugriff auf die Übersetzungspaketdatei oder die Änderung der Datei nach ihrer Erstellung aufruft:
String oldUser = null;
try {
String wfCreator = com.ptc.tml.utils.TMLUtils.getUserName(main.getCreator());
oldUser = com.ptc.tml.utils.TMLUtils.switchSessionPrincipal(wfCreator);
wt.fc.Persistable sourceObj = wt.primaryBusinessObject;
wt.vc.baeline.ManagedBaseline baseline = (wt.vc.baeline.ManagedBaseline) com.ptc.tml.utils.TMLUtils.getPersistable(baselineOid);
java.io.File packageFile = new java.io.File(newTranslationPackageName);

custom.doSomething(sourceObj, baseline, packageFile);

} catch (java.lang.Throwable t) {
Log.addError(t);
} finally {
com.ptc.tml.utils.TMLUtils.switchSessionPrincipal(oldUser);
}
Der Sitzungshauptbenutzer muss im Workflow-Robot zugewiesen werden, damit der Workflow Zugriff auf die relevanten Windchill Objekte hat. Der Workflow wird standardmäßig als Administrator ausgeführt; wenn kein Zugriff auf Windchill Objekte erforderlich ist, muss der Sitzungshauptbenutzer nicht geändert werden.
Nachfolgend finden Sie einen Beispielcode für das Iterieren durch den Inhalt der Übersetzungs-Baseline, um zusätzliche Inhalte oder Metadaten zu suchen, die zum Übersetzungspaket hinzugefügt werden können:
void doSomething(Persistable sourceObj, ManagedBaseline baseline, File packageFile) {
// open zip
for (EPMDocument doc : com.ptc.tml.utils.TranslationBaselineUtils.getBaselineDocuments(baseline))
Object extra = custom.traverse(doc);
custom.addToZip(zipFile, extra);
}
//close zip
}
Es ist nicht möglich, Dateien mit Standard-Java-APIs zu einer vorhandenen Übersetzungs-ZIP-Datei hinzuzufügen. Um die ZIP-Datei mit dem Übersetzungspaket zu ändern, kopieren Sie den ganzen Inhalt des Übersetzungspakets in eine neue ZIP-Datei, in der der Inhalt geändert werden kann oder Inhalte hinzugefügt werden können. Sobald die neue ZIP-Datei mit dem Übersetzungspaket fertig ist, kann die ursprüngliche Datei über den benutzerdefinierten Code durch die neue Übersetzungspaketdatei ersetzt werden.
War dies hilfreich?