Personnalisation des paramètres dans le service de téléchargement
Délégué standard
Windchill propose un mécanisme standard permettant de transmettre des informations supplémentaires associées au document CAO en tant que paramètres système personnalisés.
Pour personnaliser les paramètres, définissez la préférence côté serveur Client Workgroup Manager > Mappage des attributs système et des propriétés du fichier personnalisés au niveau du site.
La valeur est une liste d'attributs supplémentaires d'objets associés au document CAO qui s'affichent dans l'outil CAO sous la forme de paramètres ou de propriétés.
La valeur est une liste séparée par des virgules de paires de propriétés CAO et d'attributs Windchill dans le format suivant :
<name_of_CAD_property>:<relatedObjectCode>.<WindchillAttributeName>
Où :
Valeur
Description
Valeurs possibles
name_of_CAD_property
Il s'agit du nom du paramètre ou de la propriété dans l'outil CAO.
PART_REVISION
relatedObjectCode
Il s'agit de la chaîne utilisée pour identifier l'objet associé
docMaster
associatedPart
relatedECN
promote
WindchillAttributeName
Il s'agit du nom logique ou du nom interne de l'attribut dans Windchill pour l'objet associé.
attributs de type paramétré sur le document CAO maître
Attributs de l'article
attribut de type paramétré sur l'article associé de type booléen, date, entier, réel, réel avec unités ou chaîne
lifeCycleState
lifecycleTemplate.name
name
number
orgid
view.identity
partType
Pour les avis de modification associés
number
orgid
resolutionDate
Pour la promotion
number
promotionDate
orgid
approvers
approbationDates
reviewers
reviewDates
* 
Pour les attributs de type paramétré, les valeurs envoyées à l'outil CAO correspondent aux valeurs d'affichage dans la Page d'informations de l'objet. Les valeurs d'affichage utilisent les préférences Traitement des attributs et les paramètres Gestion d'attributs et de types, mais ne prennent pas en charge les personnalisations d'affichage complexes à l'aide d'utilitaires de données pour le rendu.
Par exemple, la date de validation et la date d'approbation suivent le paramètre Gestion d'attributs et de types pour le Format d'affichage de la date jj-MM-aa.
Cette fonctionnalité ne peut être utilisée que si vous ne disposez pas d'un délégué personnalisé côté serveur CustomModeledAttributesDelegate pouvant être utilisé pour insérer des paramètres (voir la section suivante pour le délégué personnalisé).
Pour l'article associé :
Cette fonctionnalité prend en charge les articles associés au Document CAO avec les informations de propriétaire, d'image collaborative, d'image et de contenu collaboratif.
La version de l'article sélectionnée est similaire au tableau d'articles associés de la page d'informations du Document CAO.
Si plusieurs révisions du même article sont associées au document CAO, le système renvoie la dernière révision de chaque article.
Plusieurs articles peuvent être renvoyés si le système est configuré pour autoriser plusieurs associations de génération, avec la préférence côté serveur Opérations > Association automatique > Autoriser le document CAO à générer plusieurs articles définie sur Oui. Dans ce cas, les informations de chaque article associé sont renvoyées en format délimité. Le séparateur utilisé est défini par la préférence côté serveur Client Workgroup Manager > Séparateur d'attributs système personnalisés pour plusieurs objets associés.
Pour les avis de modification associés :
Lorsque la révision du document CAO intervient dans l'avis de modification en tant qu'objet résultant, les attributs relatifs à l'avis de modification sont envoyés au paramètre CAO.
Si la révision du document CAO intervient dans plusieurs Avis de modification, le séparateur utilisé est défini par la préférence côté serveur Client Workgroup Manager > Séparateur d'attributs système personnalisés pour plusieurs objets associés.
Les avis de modification rejetés ne sont pas répertoriés.
Pour la demande de promotion :
Lorsque la version du document CAO intervient dans la demande de promotion, les attributs relatifs à cette demande sont envoyés au paramètre CAO.
Si la version du document CAO intervient dans plus d'une Demande de promotion, le séparateur utilisé est défini par la préférence côté serveur Client Workgroup Manager > Séparateur d'attributs système personnalisés pour plusieurs objets associés.
La demande de promotion rejetée n'est pas répertoriée.
* 
resolutionDate est basé sur l'avis de modification associé au document CAO. Le format de date peut être configuré en définissant le format dans Gestion d'attributs et de types. Formatez l'attribut Avis de modification avec le nom interne resolutionDate.
promotionDate est basé sur la demande de promotion associée au document CAO. Le format de date peut être configuré en définissant le format dans Gestion d'attributs et de types. Formatez l'attribut Demande de promotion avec le nom interne promotionDate.
approveDates et reviewDates sont basés sur la tâche associée à la demande de promotion. Le format de date peut être configuré en définissant le format dans Gestion d'attributs et de types. Formatez l'attribut Tâche avec le nom interne thePersistInfo.modifyStamp.
Délégué personnalisé
Si votre processus métier nécessite que d'autres attributs soient communiqués à l'outil CAO, Windchill fournit un délégué côté serveur qui peut être utilisé pour insérer des paramètres dans un modèle Creo Parametric lors du téléchargement. Ce mécanisme peut servir à faire passer des informations depuis le serveur vers Creo Parametric, où elles peuvent être utilisées comme n'importe quel autre paramètre Creo Parametric (par exemple, pour donner des informations sur le traçage de formes). Les paramètres commençant par "PTC" ou "PROI" sont considérés comme des paramètres système réservés et ne peuvent être propagés en cas de personnalisation. S'ils sont ajoutés dans la personnalisation, ils sont ignorés par le service de téléchargement.
* 
Cette fonctionnalité s'applique à tous les éléments Windchill Workgroup Manager intégrés à des outils CAO tiers.
* 
Les paramètres personnalisés sont fournis au client pendant le téléchargement et, contrairement aux paramètres système tels que PTC_WM_ITERATION, ne sont pas mis à jour dans la session Creo Parametric ou dans le cache local après une opération Windchill telle qu'une intégration.
Par exemple, si un paramètre personnalisé reçoit la valeur d'un numéro de document CAO, sa valeur est fournie au client pendant le téléchargement du modèle. Si le document CAO est ensuite renuméroté, la valeur de la session Creo Parametric ou du cache client n'est pas automatiquement mise à jour.
Le mécanisme de délégué de service Windchill est utilisé pour permettre la personnalisation. Les étapes suivantes expliquent le processus de personnalisation :
1. Créez une classe Java implémentant l'interface ModeledAttributesDelegate dans un emplacement propre au client, séparé des classes PTC (par exemple, <WT_HOME>\com\acme). Voici la définition de l'interface :
package com.acme.download;
import static org.junit.Assert.assertTrue;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import com.ptc.windchill.uwgm.proesrv.c11n.DefaultModeledAttributesDelegate;
import java.util.Iterator;
import wt.epm.EPMDocument;
import wt.fc.collections.WTCollection;
import wt.fc.collections.WTHashSet;
import wt.preference.PreferenceHelper;
import wt.util.WTException;
/**
* When CustomizedModeledAttributesDelegate is configured following modeled attributes would be added to the CAD
* Document, which would be combination of custom CURRENT_DATE parameter along with Parameters configured in mentioned
* preference "Mapping Custom System Attributes and File Properties". For eg.When preference "Mapping Custom System
* Attributes and File Properties" set with value as
* -CREO_PART_REVISION:associatedPart.revision,CREO_PART_VIEW:associatedPart.view.identity,ECN_NUMBER:relatedECN.number
* Modeled attributes on CAD Document would be- CREO_PART_REVISION=A, ECN_NUMBER=00192, CREO_PART_VIEW=Design,
* CURRENT_DATE=2023/10/11 05:07
*/
public class CustomizedModeledAttributesDelegate extends DefaultModeledAttributesDelegate {
private static final String CUSTOM_SYSTEM_PARAMS_PREF = "system.attribute.mapping.custom";
private static final String PROE = "PROE";
private static final String CURRENT_DATE = "CURRENT_DATE";
// getAvailableAttributes() returns
// HashMap<String, Object> which contains
// HashMap<Attribute name, Attribute type> @Override
public HashMap getAvailableAttributes() {
System.out.println(
"Invoked CustomizedModeledAttributesDelegate extends DefaultModeledAttributesDelegate :: getModeledAttributes() :Returning an empty list of modeled Attributes.");
return new HashMap();
}
/**
* Returns a map of modeled attributes for the EPMDocument objects in the provided collection. This method retrieves
* the modeled attributes from the PTC default implementation.
*
* @param collection a collection of EPMDocument objects for which to retrieve the modeled attributes
* @return a map of modeled attributes for the provided EPMDocument objects
* @throws WTException if an exception occurs while retrieving the modeled attributes
*/
@Override
public HashMap getModeledAttributes(
final Collection collection)
throws WTException {
System.out.println(
"Invoked CustomizedModeledAttributesDelegate extends DefaultModeledAttributesDelegate :: getModeledAttributes() ");
String prefValue = (String) PreferenceHelper.service.getValue(CUSTOM_SYSTEM_PARAMS_PREF,
PROE);
System.out.println("CustomizedModeledAttributesDelegate prefValue " + prefValue);
HashMap objVsAttrNameVsValue = new HashMap();
// Fetching only EPMDocuments from input collection.
WTCollection inEPMDocs = new WTHashSet(collection).subCollection(EPMDocument.class);
Iterator persistableIterator = inEPMDocs.persistableIterator();
if (prefValue != null && (!prefValue.isBlank())) {
while (persistableIterator.hasNext()) {
EPMDocument anEPMDoc = (EPMDocument) persistableIterator.next();
objVsAttrNameVsValue = super.getModeledAttributes(collection);
Map<String, String> attrNameVsValueMap = (Map<String, String>)objVsAttrNameVsValue.get(anEPMDoc);
assertTrue(attrNameVsValueMap != null);
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm");
LocalDateTime now = LocalDateTime.now();
attrNameVsValueMap.put(CURRENT_DATE, dtf.format(now).toString());
System.out.println("CustomizedModeledAttributesDelegate attrNameVsValueMap " + attrNameVsValueMap);
return objVsAttrNameVsValue;
}
}
System.out
.println("Could not find CustomizedModeledAttributesDelegate extends DefaultModeledAttributesDelegate");
return objVsAttrNameVsValue;
}

} // end class
2. Les attributs système personnalisés fournis par PTC sont disponibles en standard dans DefaultModeledAttributesDelegate. Toutefois, le fichier site.xconf (qui se trouve dans <Windchill>) peut être modifié de manière à pointer vers votre service de personnalisation sur le serveur :
Utilisez le chemin de votre classe à la place de la valeur de serviceClass (autrement dit, remplacez com.ptc.windchill.uwgm.proesrv.c11n.DefaultModeledAttributesDelegate par le chemin de votre classe). Par exemple :
<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.acme.download.CustomizedModeledAttributesDelegate"/>
</Service>
Utilisez l'outil xconfmanager pour appliquer les modifications au fichier service.properties (exécutez xconfmanager -p).
3. Relancez le serveur de méthodes.
Est-ce que cela a été utile ?