SPScriptedFacetService - スコープ指定
詳細検索ソースの複数選択肢または単一選択肢のファセットオブジェクトを生成します。
SPScriptedFacetService API は、サービスポータル検索ソースのファセット生成スクリプトでのみ使用できます。ファセット生成スクリプトは、[ スクリプト化済みソースである] が選択されている場合にのみ表示されます。
このクラスにはコンストラクターはありません。代わりに、 createFacet() メソッドまたは createMultiChoiceFacet() メソッドを使用してファセットオブジェクトを生成します。
SPScriptedFacetService - createFacet(文字列ラベル, 文字列 ID)
単一選択肢ファセットオブジェクトを作成します。
ファセット オブジェクトを作成したら、SPScriptedFacet クラスの addFacetItem() メソッドを使用して、ファセット項目またはマップされたクエリをファセットに追加します。
| 名前 | タイプ | 説明 |
|---|---|---|
| label | 文字列 | ファセットのラベル。 |
| ID | 文字列 | ファセットの ID。 |
| タイプ | 説明 |
|---|---|
| オブジェクト | 単一選択肢ファセットオブジェクト。次の場合にエラーを返します。
|
サービスポータルの詳細検索ソースのファセット生成スクリプトでのみ使用できます。
var stateFacet = facetService.createFacet("State", "state");
SPScriptedFacetService - createMultiChoiceFacet(String label, String id)
複数選択肢ファセットオブジェクトを作成します。
ファセット オブジェクトを作成したら、SPScriptedFacet クラスの addFacetItem() メソッドを使用して、ファセット項目またはマップされたクエリをファセットに追加します。
| 名前 | タイプ | 説明 |
|---|---|---|
| label | 文字列 | ファセットのラベル。 |
| ID | 文字列 | ファセットの ID。 |
| タイプ | 説明 |
|---|---|
| オブジェクト | 複数選択肢ファセットオブジェクト。 次の場合にエラーを返します。
|
function createMultiChoiceFacetFromKB(label, variable, values, orderBy){
if(!values || values.length == 0)
return;
var kbFacet = facetService.createMultiChoiceFacet(label, variable);
var kbMap = {};
for(var i in values) {
var key = values[i].label;
var value = values[i].id;
var parent = new KBParentData().getParentCategory(value, key);
key = parent.join(' > ');
kbMap[key] = value;
}
var labels = Object.keys(kbMap).sort();
for (i = 0; i < labels.length; i++) {
var currentLabel = labels[i];
kbFacet.addFacetItem(currentLabel, kbMap[currentLabel]);
//adds facet search options for each kbMap entry
}
}