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 EPMDocument.
• Impostare un numero per l'EPMDocument.
• Impostare un nome per l'EPMDocument.
|
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 si applica esclusivamente all'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 comune assegnato in modo esplicito tramite la finestra > di Creo Parametric
3. parametro nome ( > > > = <parametro stringa>)
4. nome file (la preferenza > > > viene applicata solo se il nome è assegnato in base al nome file, ovvero il nome CAD
• Numero:
1. personalizzazione del naming service
2. parametro numero ( > > > )
3. nome file (la preferenza > > > viene applicata solo se il numero è assegnato in base al nome file, ovvero il nome CAD
|
Per personalizzare il naming service, attenersi alla procedura descritta di seguito.
1. Creare una classe Java che implementi l'interfaccia EPMDocumentNamingDelegate. La definizione dell'interfaccia è la seguente:
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/numerazione dell'EPMDocument nel metodo:
public void validateDocumentIdentifier(DocIdentifier docIdentifier)
◦ L'oggetto DocumentIdentifier contiene informazioni sul nome e sul numero dell'EPMDocument che verrà creato dal servizio di caricamento.
Utilizzare DocIdentifier.getModelName() per ottenere il nome CAD dell'EPMDocument rappresentato da questo oggetto DocIdentifier.
◦ È possibile utilizzare gli appositi parametri di Creo Parametric per impostare la numerazione/denominazione dell'EPMDocument.
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.
3. Modificare il file site.xconf contenuto in <Windchill> in modo da aggiungere la proprietà riportata di seguito per 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.EPMDefaultDocumentNamingDelegate" con il percorso della classe.
4. Riavviare il method server.