Naming Service anpassen
Der Benennungsdienst verwendet den Windchill Dienst-Delegat-Mechanismus, um Ihnen die Möglichkeit zu geben, für das neue zu erstellende CAD-Dokument Folgendes festzulegen:
Eine Nummer für das CAD-Dokument festlegen.
Einen Namen für das CAD-Dokument festlegen.
* 
Der Benennungsdienst wird nur beim Hochladen verwendet.
Bei Benennungsrichtlinien und Anpassungen gilt folgende Reihenfolge.
Name
1. Anpassung durch den Benennungsdienst.
2. Für Benennung festgelegter Parameter (Namensparameter).
3. Dateiname. Die Einstellung Namens-Dateierweiterung beim Hochladen weglassen ist nur wirksam, wenn der Name auf Grundlage eines Dateinamens (CAD-Name) zugewiesen wird).
Nummer
1. Anpassung durch den Benennungsdienst.
2. Für Nummerierung festgelegter Parameter (Nummerierungsparameter).
3. Dateiname (Die Einstellung Nummern-Dateierweiterung beim Hochladen weglassen ist nur wirksam, wenn der Name auf Grundlage eines Dateinamens (CAD-Name) zugewiesen wird).
Wenn die standardmäßigen Benennungs- und Nummerierungsrichtlinien in Windchill den Anforderungen Ihres Unternehmens nicht entsprechen, können Sie diesen Dienst benutzerdefiniert anpassen, sodass Name und Nummer eines CAD-Dokuments auf dieser angepassten Logik basieren. Gehen Sie wie folgt vor, um den Benennungsdienst anzupassen:
1. Erstellen Sie eine Java-Klasse, die die Schnittstelle EPMDocumentNamingDelegate implementiert. Die Schnittstellendefinition lautet folgendermaßen.
package com.ptc.windchill.uwgm.proesrv.c11n;
public interface EPMDocumentNamingDelegate
{
public void validateDocumentIdentifier

(DocIdentifier docIdentifier);
}
Die Definition der DocIdentifier-Klasse lautet folgendermaßen:
package com.ptc.windchill.uwgm.proesrv.c11n;
import java.util.HashMap;
public class DocIdentifier
{
private String m_modelName;

private String m_docName;

private String m_docNumber;

private HashMap m_parameters;
public DocIdentifier(String modelName, String docName,

String docNumber, HashMap params)
{ m_modelName = modelName; m_docName= docName;
m_docNumber= docNumber;
m_parameters= params; }
/** get the CAD Name for the model **/
public String getModelName()
{ return m_modelName; }
/** get the EPMDocument name for the model **/
public String getDocName()
{ return m_docName; }
/** set the EPMDocument name for the model **/
public void setDocName(String docname)
{ m_docName = docname; }
/** set the EPMDocument number for the model **/
public void setDocNumber(String docnumber)
{ m_docNumber = docnumber; }
/** get the EPMDocument number for the model **/
public String getDocNumber()
{ return m_docNumber; }
/** get the Pro/E designated parameters for the model.

These are name-value pairs indexed by the name **/
public HashMap getParameters()
{ return m_parameters; }
}
2. Implementieren Sie mithilfe der folgenden Methode in der neuen Klasse die Geschäftslogik zum Benennen/Nummerieren von CAD-Dokumenten (EPMDocuments):
public void validateDocumentIdentifier(DocIdentifier docIdentifier)
Das DocumentIdentifier-Objekt enthält den Namen und die Nummer des CAD-Dokuments, das vom Hochladedienst erstellt wird.
Verwenden Sie die Funktion
DocIdentifier.getModelName()
, um den CAD-Namen des CAD-Dokuments abzurufen, die dieses DocIdentifier-Objekt darstellt.
Die von der CAD-Anwendung ausgewiesenen Parameter können zum Einstellen der Nummerierung/Benennung von CAD-Dokumenten verwendet werden.
Rufen Sie mit
DocIdentifier.getParameters()
die zugeordneten Parameter ab.
Verwenden Sie die im DocIdentifier festgelegten Methoden, um die neuen Namens-/Nummernwerte einzustellen. Diese Vorschläge werden vom Hochladedienst verwendet, falls sie praktikabel sind. Die Beispielimplementierung befindet sich an folgendem Speicherort:
<Windchill home>/codebase/com/ptc/windchill/uwgm/proesrv/

c11n/EPMDefaultDocumentNamingDelegate.java
3. Bearbeiten Sie die Datei site.xconf (in <Windchill>), und fügen Sie die folgende Eigenschaft hinzu, um die Verfügbarkeit des Anpassungsdiensts auf dem Server anzugeben:
<Service context="default" name="com.ptc.windchill.uwgm.proesrv.c11n.

EPMDocumentNamingDelegate" targetFile="codebase/service.properties">
<Option cardinality="singleton" requestor="wt.epm.EPMDocument"

serviceClass="com.ptc.windchill.uwgm.proesrv.c11n.EPMDefaultDocument

NamingDelegate"/>
</Service>
Übernehmen Sie die Änderungen danach mit dem Tool xconfmanager für die Datei service.properties (führen Sie Folgendes aus:
xconfmanager -p
)
Geben Sie den Pfad Ihrer Klasse als Wert für serviceClass an (d.h. ersetzen
com.ptc.windchill.uwgm.proesrv.c11n.EPMDefaultDocumentNami ngDelegate
Sie durch den Pfad Ihrer Klasse).
4. Starten Sie den Methodenserver neu.
War dies hilfreich?