Naming Service anpassen
Der Benennungsdienst verwendet den Windchill Dienst-Delegate-Mechanismus, um das Festlegen der folgenden Einstellungen für das zu erstellende neue CAD-Dokument zu ermöglichen.
• Eine Nummer für das CAD-Dokument festlegen.
• Einen Namen für das CAD-Dokument festlegen.
|
Der Benennungsdienst wird nur beim Hochladen verwendet.
|
Das System verarbeitet die Benennungsrichtlinien und Anpassungen in der folgenden 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 von Windchill den Anforderungen Ihres Unternehmens nicht entsprechen, können Sie diesen Dienst 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 den folgenden Befehl, um den CAD-Namen des CAD-Dokuments abzurufen, das 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 Befehl 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>
Übernehmen Sie die Änderungen danach mit dem Tool "xconfmanager" für die Datei service.properties:
xconfmanager –p
Geben Sie den Pfad Ihrer Klasse als Wert für serviceClass an (d.h. ersetzen Sie Folgendes durch den Pfad Ihrer Klasse):
com.ptc.windchill.uwgm.proesrv.c11n.EPMDefaultDocumentNami ngDelegate
4. Starten Sie den Methodenserver neu.