Benennungsdienst anpassen
Der Benennungsdienst verwendet den Windchill Dienst-Delegate-Mechanismus, um das Festlegen der folgenden Einstellungen für das neu zu erstellende EPMDocument zu ermöglichen:
• Nummer des EPMDocument festlegen
• Name des EPMDocument festlegen
|
Die Benennungsdienstanpassung beim Hochladen kann vor Windchill 10.0 verwendet werden, um Namen und Nummer mit angepasstem Code zu generieren. Parameter aus Versionen vor Windchill 10.0 sind jedoch nicht in einer Hochlade-Anfrage für die Benennungsdienstanpassung verfügbar.
|
|
Der Benennungsdienst wird nur für die Hochladen-Aktion verwendet. Bei Benennungsrichtlinien und Anpassungen gilt folgende Reihenfolge.
• Name:
1. Anpassung des Benennungsdiensts
2. Im Creo Parametric Fenster > ausdrücklich zugewiesener üblicher Name
3. Namensparameter ( > > > = <beliebiger Zeichenfolgenparameter>)
4. Dateiname (Die Einstellung > > > ist nur wirksam, wenn der Name basierend auf dem Dateinamen (CAD-Namen) zugewiesen wird.)
• Nummer:
1. Anpassung des Benennungsdiensts
2. Nummerierungsparameter ( > > > )
3. Dateiname (Die Einstellung > > > ist nur wirksam, wenn die Nummer basierend auf dem Dateinamen (CAD-Namen) zugewiesen wird.)
|
So passen Sie den Benennungsdienst an:
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 in der neuen Klasse die Geschäftslogik für die Benennung/Nummerierung des EPMDocument in der Methode:
public void validateDocumentIdentifier(DocIdentifier docIdentifier)
◦ Das DocumentIdentifier-Objekt verfügt über die EPMDocument Namens- und Nummerninformationen für das EPMDocument, das vom Hochladedienst erstellt wird.
Rufen Sie mit DocIdentifier.getModelName() den CAD-Namen des von diesem DocIdentifier-Objekt dargestellten EPMDocument ab.
◦ Die ausgewiesenen Creo Parametric Parameter können verwendet werden, um die Nummerierung/Benennung des EPMDocument festzulegen.
Rufen Sie mit DocIdentifier.getParameters() die zugeordneten Parameter ab.
Verwenden Sie die "set"-Methoden von DocIdentifier, um die neuen Namens-/Nummernwerte festzulegen. Der Hochladedienst verwendet diese Vorschläge, sofern sie umsetzbar sind.
3. Bearbeiten Sie die Datei site.xconf (im <Windchill> Verzeichnis), und fügen Sie die folgende Eigenschaft hinzu, um die Verfügbarkeit des Anpassungsdienstes auf dem Server anzuzeigen:
◦ <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>
Verwenden Sie anschließend das Tool "xconfmanager", um die Änderungen auf die Datei "service.properties" anzuwenden (führen Sie "-xconfmanager p" aus).
Geben Sie den Pfad Ihrer Klasse als Wert für serviceClass an (d.h. ersetzen Sie "com.ptc.windchill.uwgm.proesrv.c11n.EPMDefaultDocumentNamingDelegate" durch den Pfad Ihrer Klasse).
4. Starten Sie den Methodenserver neu.