Naming Service anpassen
Der Benennungsdienst verwendet den Windchill Dienst-Delegate-Mechanismus, um beim Erstellen eines neuen CAD-Dokuments Folgendes anzugeben:
Eine Nummer für das CAD-Dokument festlegen.
Einen Namen für das CAD-Dokument festlegen.
* 
Der Benennungsdienst wird nur beim Hochladen verwendet.
Die Benennungsdienstanpassung beim Hochladen kann vor Windchill 10.0 verwendet werden, um Namen und Nummer mit angepasstem Code zu generieren. Vor Windchill 10.0 sind Parameter jedoch nicht in einer Hochlade-Anfrage für die Benennungsdienstanpassung verfügbar
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 Windchill Richtlinien für Benennung und Nummerierung nicht den Anforderungen Ihres Unternehmens entsprechen, können Sie den Benennungs- und Nummerierungsdienst anpassen, sodass einem CAD-Dokument der Name und die Nummer entsprechend der Anpassung zugewiesen werden. 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 den folgenden Code, um den CAD-Namen des CAD-Dokuments abzurufen, die dieses DocIdentifier-Objekt darstellt.
DocIdentifier.getModelName()
Die von der CAD-Anwendung ausgewiesenen Parameter können zum Einstellen der Nummerierung/Benennung von CAD-Dokumenten verwendet werden.
Rufen Sie mit dem folgenden Code die zugeordneten Parameter ab.
DocIdentifier.getParameters()
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>
Um die Änderungen auf die Datei service.properties anzuwenden, geben Sie den folgenden Befehl ein, um das xconfmanager-Tool zu verwenden.
xconfmanager –p
Geben Sie den Pfad Ihrer Klasse als Wert für serviceClass an (d.h. ersetzen Sie Folgenden durch den Pfad Ihrer Klasse).
com.ptc.windchill.uwgm.proesrv.c11n.EPMDefaultDocumentNami ngDelegate
4. Starten Sie den Methodenserver neu.
War dies hilfreich?