Personalizzazione del naming service
Il naming service utilizza il meccanismo di delega del servizio Windchill per consentire di specificare quanto segue per la creazione del nuovo documento CAD.
• Impostare un numero per il documento CAD.
• Impostare un nome per il documento CAD.
|
La personalizzazione del naming service di caricamento può essere utilizzata nelle versioni precedenti a Windchill 10.0 per generare nome e numero mediante il codice personalizzato. Nelle versioni precedenti a Windchill 10.0, non è tuttavia possibile utilizzare i parametri in una richiesta di caricamento per la personalizzazione del naming service.
|
|
Il naming service può essere utilizzato solo con l'azione di caricamento.
|
Di seguito viene illustrato l'ordine di precedenza utilizzato dal sistema per le regole di denominazione e le personalizzazioni.
• Nome
1. Personalizzazione del naming service.
2. Nome file (la preferenza Caricamento elimina l'estensione dal nome file viene applicata solo se il nome è assegnato in base a un nome di file, ovvero al nome CAD).
• Numero
1. Personalizzazione del naming service.
2. Nome file (la preferenza Caricamento elimina l'estensione dal numero file viene applicata solo se il nome è assegnato in base a un nome di file, ovvero al nome CAD).
Se le regole di denominazione e di numerazione standard di Windchill non soddisfano le specifiche esigenze aziendali, è possibile personalizzare il servizio in modo che nome e numero vengano assegnati a un documento CAD in base a questa logica personalizzata. Per personalizzare il naming service, attenersi alla procedura descritta di seguito.
1. Creare una classe Java che implementi l'interfaccia EPMDocumentNamingDelegate. Di seguito è riportata la definizione dell'interfaccia.
package com.ptc.windchill.uwgm.proesrv.c11n;
public interface EPMDocumentNamingDelegate
{
public void validateDocumentIdentifier
(DocIdentifier docIdentifier);
}
La definizione di Class DocIdentifier è la seguente:
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. Implementare nella nuova classe la logica aziendale per la denominazione e la numerazione del documento CAD (EPMDocument) utilizzando il metodo riportato di seguito.
public void validateDocumentIdentifier(DocIdentifier docIdentifier)
◦ L'oggetto DocumentIdentifier contiene informazioni sul nome e sul numero del documento CAD che verrà creato dal servizio di caricamento.
Utilizzare
DocIdentifier.getModelName()
per ottenere il nome CAD del documento CAD rappresentato dall'oggetto DocIdentifier.
◦ Per impostare la numerazione o la denominazione del documento CAD, è possibile utilizzare i parametri designati dell'applicazione CAD.
Utilizzare
DocIdentifier.getParameters()
per ottenere i parametri associati.
Utilizzare i metodi set sull'oggetto DocIdentifier per impostare i nuovi valori del nome e del numero. Il servizio di caricamento utilizza questi suggerimenti, se applicabili. L'implementazione di esempio si trova nella seguente posizione:
<Windchill home>/codebase/com/ptc/windchill/uwgm/proesrv/
c11n/EPMDefaultDocumentNamingDelegate.java
3. Modificare il file site.xconf, disponibile in <Windchill>, per aggiungere la proprietà riportata di seguito in modo da indicare la disponibilità del servizio di personalizzazione nel server.
<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>
Utilizzare quindi lo strumento xconfmanager per applicare le modifiche al file service.properties (eseguire
xconfmanager –p
)
Utilizzare il percorso della classe al posto del valore di serviceClass, ovvero sostituire
com.ptc.windchill.uwgm.proesrv.c11n.EPMDefaultDocumentNami ngDelegate
con il percorso della classe.
4. Riavviare il method server.