ファセットされたサーチのカスタマイズ
ファセットでのモデル化属性の表示
モデル属性は SearchableAttributesByType.properties.xconf で指定されている場合にファセットとして表示されます。
デフォルトで、SearchableAttributesByType.properties.xconf にはプロパティ advancedSearch の定義が含まれています。以下に例を示します。
<Property name="advancedSearch.wt.part.WTPart"
default=
"thePersistInfo.createStamp,iterationInfo.creator,defaultUnit,lock.locker,state.state,partType,thePersistInfo.modifyStamp,
iterationInfo.modifier,defaultTraceCode,genericType"
/>
モデル属性が advancedSearch のプロパティ値で指定されている場合、結果のファセットとして表示されます。
ただし、プロパティ facetSearchSearchableAttributesByType.properties.xconf に追加することによって、モデル属性が表示されないように明示的に設定できます。追加した場合、プロパティ facetSearch にリストされているモデル属性のみが表示されます。以下に例を示します。
<Property name="facetSearch.wt.part.WTPart"
default=
"defaultUnit,thePersistInfo.createStamp,thePersistInfo.modifyStamp,"
/>
このエントリはタイプに固有です。複数のタイプに属する特定の属性を非表示にする場合は、これらすべてのタイプについて個別にエントリを追加する必要があります。
IBA をファセットで非表示にするためのカスタマイズ
ファセットに表示される IBA の表示をカスタマイズできます。
FacetService インタフェースを実装する。service.properties のカスタムクラスでサービスエントリを更新します。
エレメント
パッケージ
タイプ
説明
FacetService
Com.ptc.windchill.enterprise.search.facet
インタフェース
ファセットでの IBA の表示はインタフェースによって制御されます。
カスタマイズポイント
サンプルコードに示すように、"service.properties" のカスタムクラスでサービスエントリを更新します。この例では、facetCustomClass がカスタムクラスの名前です。
wt.services/svc/default/com.ptc.windchill.enterprise.search.facet.FacetService/null/null/0=com.ptc.windchill.enterprise.search.facet.FacetCustomClass/duplicate
継承されたメソッド FacetService.isAttributeVisible(AttributeTypeIdentifier) を実装します。isAttributeVisible API が、デフォルトで true に設定されているブール値を返します。ファセットで IBA を非表示にする場合は、false を返すように theisAttributeVisible API をカスタマイズできます。
例:
public booleanisAttributeVisible(AttributeTypeIdentifier ibaAttribute){
if(ibaAttribute.getAttributeName().equals("name of attribute")){
return false;
}
return true;
}
これは役に立ちましたか?