Personalizzazione dei parametri nel servizio di scaricamento
Windchill fornisce un meccanismo di delega sul server che può essere utilizzato per inserire parametri in un modello di Creo Parametric durante lo scaricamento. Questo meccanismo consente di trasmettere informazioni dal server fino a Creo Parametric, dove possono essere utilizzate come qualsiasi altro parametro di Creo Parametric, ad esempio per inserire informazioni nei moduli di disegno. I parametri che iniziano con "PTC" o "PROI" vengono considerati parametri di sistema riservati e non possono essere propagati con la personalizzazione. Se vengono aggiunti nella personalizzazione, vengono ignorati dal servizio di scaricamento.
|
Questa funzionalità è applicabile a tutti i Windchill Workgroup Manager che si integrano con strumenti CAD di terze parti.
|
|
I parametri personalizzati vengono forniti al client durante lo scaricamento e, diversamente dai parametri di sistema come PTC_WM_ITERATION, non vengono aggiornati nella sessione di Creo Parametric o nella cache locale dopo un'operazione in Windchill, ad esempio dopo un Check-In.
|
Se ad esempio a un parametro personalizzato viene assegnato come valore il numero del documento CAD, questo valore viene fornito al client contestualmente allo scaricamento del modello. Se successivamente il documento CAD viene rinumerato, il valore nella sessione di Creo Parametric o nella cache del client non viene aggiornato automaticamente.
Il meccanismo di delega del servizio Windchill viene utilizzato per consentire la personalizzazione. Per la personalizzazione, attenersi alla procedura descritta di seguito.
1. Creare una classe Java che implementi l'interfaccia ModeledAttributesDelegate. La definizione dell'interfaccia è la seguente:
package com.ptc.windchill.uwgm.proesrv.c11n;
import java.util.Collection;
import java.util.HashMap;
import wt.util.WTException;
public interface ModeledAttributesDelegate
{
/*
Implement this API to return list of parameters added by
customization along with it's type (customization profile of the
server). For example "WT_CADDOC_NUMBER" custom parameter will
be of type "String.class" (the java class)
*/
// getAvailableAttributes() returns
// HashMap<String, Object> which contains
// HashMap<Attribute name, Attribute type>
HashMap getAvailableAttributes();
/*
This is the API, invoked by the download service on download, to
be implemented for the customization. Create and return a
HashMap where key is input object and value is HashMap of
parameter name - value pairs that must be propagated to Pro/E
part represented by the EPMDocument (input object). Use the
getCADName() API on the EPMDocument to identify the Pro/E part
*/
// getModeledAttributes(Collection docs) returns
// HashMap<input object, HashMap<Attribute name, Attribute
value> HashMap getModeledAttributes(Collection docs) throws
WTException;
}
2. 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.ModeledAttributesDele
gate" targetFile=codebase/service.properties">
<Option cardinality="singleton"
requestor="java.lang.Object"
serviceClass="com.ptc.windchill.uwgm.proesrv.c11n.DefaultModele
dAttributesDelegate"/>
</Service>
Utilizzare quindi lo strumento xconfmanager per applicare le modifiche al file service.properties (eseguire xconfmanager -p).
Utilizzare il percorso della classe anziché il valore di serviceClass, ovvero sostituire com.ptc.windchill.uwgm.proesrv.c11n.DefaultModeledAttributesDelegate con il percorso della classe.
3. Riavviare il method server.