Dienstgültigkeit anpassen
Führen Sie die folgenden Schritte aus, um angepasste Typen und Attribute der Dienstgültigkeitsobjekte in der Liste hinzuzufügen, die im Dropdown-Menü Typ im Dialogfenster Anwendbarkeit verwalten und auf der Registerkarte Dienstgültigkeit des Dialogfensters Filter bearbeiten angezeigt wird.
1. Weitere Informationen finden Sie in der Konfigurationsdatei:
codebase/com/ptc/arbortext/windchill/serviceEffectivityFilter
/server/serviceEffectivityConfig.xml
In dieser Datei wird eine Liste mit Attributen definiert, die der Liste mit Objekten entspricht, die für die Auswahl aus dem Menü Typ für Dienstgültigkeitseinstellungen und die Filterung verfügbar sind.
|
Bevor Sie diese Datei bearbeiten, fügen Sie sie in dem sicheren Bereich für anpassbare Dateien hinzu, um sicherzustellen, dass sie nicht überschrieben wird, wenn zu einem späteren Zeitpunkt ein Upgrade oder eine Installation durchgeführt wird.
|
3. Deklarieren Sie das Attribut in serviceEffectivityConfig.xml, indem Sie einen ServiceEffectivtyType-Eintrag im nachfolgend angezeigten Format vornehmen:
<ServiceEffectivityType name="seLotNumber" renderer="com.ptc.arbortext.windchill.serviceEffectivityFilter.client.ui.
renderers.configTypes.DefaultCustomConfigType" effectivityType="com.ptc.arbortext.windchill.siscore.serviceeff.
ServiceEffectivity"/>
Wobei in diesem Beispiel Folgendes gilt:
◦ name ist der interne Name des Servicegültigkeitsattributs. Er muss dem internen Namen des Attributs entsprechen, das in der Typ- und Attribut-Verwaltung definiert ist.
◦ renderer ist die Java-Klasse, die bestimmt, welche Felder für den Typ angezeigt und wie sie in der Benutzeroberfläche gehandhabt werden. Standardmäßig ist das der generische DefaultCustomConfigType. Dieser Renderer generiert eine einfache Darstellung – den Anzeigenamen des Attributs und ein Value-Textfeld.
Sie können einen angepassten Renderer erstellen, um ServiceEffectivityConfigType zu implementieren und unter diesem Attribut zu deklarieren.
Der Renderer bestimmt auch, wie die angepassten Attribute an den Filter innerhalb des JSON-Objekts übergeben werden.
◦ effectivityType ist der interne Name des Dienstgültigkeitstyps (Objekts), unter dem das angepasste Attribut erstellt wurde. Dabei kann es sich um einen Untertyp von ServiceEffectivity handeln. Er muss dem internen Namen des Typs entsprechen, der in der Typ- und Attribut-Verwaltung definiert ist.
4. Erstellen Sie in serviceEffectivityConfig.xml einen Eintrag für das Attribut im Kontext des Objekttyps des Stammknotens der Struktur, z.B. WTPart. Dieser Eintrag ist erforderlich, damit das Attribut in der Dropdown-Liste Typ für das relevante Objekt angezeigt wird.
Nehmen Sie den csvalid-Eintrag für das relevante ServiceEffectivityInstance-Element im nachfolgend angezeigten Format vor:
<csvalid serviceeffectivitytype="seLotNumber"/>
Im Folgenden finden Sie ein Beispiel einer kompletten ServiceEffectivityInstance-Eingabe für WTPart:
<ServiceEffectivityInstance objectType="wt.part.WTPart,wt.part.WTPartMaster,wt.part.alternaterep.WTPartAlternateRep"
objectMaster="wt.part.WTPartMaster">
<csvalid serviceeffectivitytype="serialNumber"/>
<csvalid serviceeffectivitytype="date"/>
<csvalid serviceeffectivitytype="seLotNumber"/>
</ServiceEffectivityInstance>
Wobei serialNumber und date die Standardeinträge für die Datei sind undseLotNumber Ihr angepasstes Attribut ist.
|
Die Reihenfolge dercsvalid-Einträge in dieser Datei bestimmt die Reihenfolge der Typen in den Dropdown-Menüs.
|
Damit die angepassten Attribute beim Filtern nach der Dienstgültigkeit effektiv verwendet werden, erstellen Sie einen angepassten Filter-Delegate für den Vergleich zwischen dem Filterobjekt und den Dienstgültigkeitsobjekten. Weitere Information erhalten Sie unter
Angepasste Filter-Delegates erstellen.
Angepasste Filter-Delegates für angepasste Dienstgültigkeitsattribute erstellen
Windchill stellt einen Delegate für die Verwendung von Dienstgültigkeitsattributen beim Filtern bereit (ignorieren Sie den Zeilenumbruch):
com.ptc.arbortext.windchill.siscore.serviceeff.filterDelegates.
DefaultServiceEffectivityDelegate
Sie können diesen Delegate mit einem angepassten Delegate überschreiben, der eine Diensteigenschaft in Windchill verwendet:
1. Erstellen Sie eine XCONF-Datei, die den entsprechenden neuen Wert für die Eigenschaft enthält:
com.ptc.arbortext.windchill.siscore.serviceeff.filterDelegates.
DefaultServiceEffectivityDelegate
Das folgende XML-Dokument ist ein XCONF-Befehl für die Handhabung von Dienstgültigkeitsobjekten beim Filtern:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE Configuration
SYSTEM "xconf.dtd">
<Configuration targetFile="codebase/typedservices.properties">
<Service context="default" name="com.ptc.arbortext.windchill.siscore.serviceeff.ServiceEffectivityFilterFactory">
<Option requestor="WCTYPE|com.ptc.arbortext.windchill.siscore.serviceeff.ServiceEffectivity"
serviceClass="com.ptc.arbortext.windchill.siscore.serviceeff.filterDelegates.DefaultServiceEffectivityDelegate"/>
</Service>
<Service context="default" name="wt.filter.NavigationFilterDelegate2">
<Option cardinality="singleton" requestor="null"
serviceClass="com.ptc.arbortext.windchill.siscore.serviceeff.filterDelegates.DefaultServiceEffectivityDelegate"
selector="com.ptc.arbortext.windchill.siscore.serviceeff.ServiceEffectivityFilter"/>
</Service>
</Configuration>
Ändern Sie entsprechend dem neuen angepassten Delegate die DefaultServiceEffectivityDelegate-Referenz unter dem serviceClass-Attribut.
2. Verwenden Sie das Dienstprogramm xconfmanager, um Windchill Diensteigenschaften zu aktualisieren. Mit dem folgenden Befehl werden die neue Datei und ihr Inhalt registriert:
xconfmanager -i codebase/custom/myServiceXconfFile.properties.xconf -p