サポート情報の検索コントロール (クライアント側の参照)
公開日: 2017年1月
対象: Dynamics 365 (online)、Dynamics 365 (on-premises)、Dynamics CRM 2016、Dynamics CRM Online
サポート情報管理機能が有効化されている Dynamics 365 インスタンスのエンティティ フォームにサポート情報の検索コントロールを追加できます。 このコントロールを使うと、ユーザーがコントロールを使用してDynamics 365のナレッジを使用する場合にユーザーの検索エクスペリエンスのプログラムでの自動化または強化を行うことができます。詳細:ナレッジ マネージメント エンティティ
注意
-
ナレッジ マネージメントおよび検索のソースとして、ネイティブの Dynamics 365 サポート情報または Parature サポート情報を選択できます。Parature をサポート情報ソースとして使用し、サポート情報の検索コントロールがフォームに存在する場合、Parature との接続は既に確立されているはずなので、セキュリティ トークンなしで、Parature API を直接呼び出すことができます。 ただし、これはクロス ドメイン要求なので、クロス オリジン リソース共有 (CORS) を使用する必要があります。
サポート情報のソースとしてParatureを使用している場合、CRM Online 2016 更新プログラム 1およびDynamics 365 Service Pack 1 (設置型) に導入された次の新しいクライアント API は未サポートです: PostSearchイベント、addOnPostSearch、removeOnPostSearch、getTotalResultCount、およびopenSearchResult。
-
CRM Online 2016 更新プログラム 1およびDynamics 365 SP1 (設置型) リリースでは、サポート情報の検索コントロールも、Dynamics 365モバイル クライアント (電話やタブレット) でサポートされます。
サポート情報の検索コントロールは、Xrm.Page.ui コントロールなので、コントロールが所有するすべての標準メソッドをサポートします。 しかし、追加のイベントとメソッドもサポートします。 標準のコントロール メソッドについては、「Xrm.Page.ui コントロール (クライアント側の参照)」を参照してください。
コントロールの名前がわかっている場合は、次のコードを使用してそのコントロールにアクセスできます。ここで、<name> はコントロールの名前を表します。
kbSearchControl = Xrm.Page.getControl("<name>");
注意
サポート情報の検索コントロールがソーシャル ウィンドウに追加されると、その名前は searchwidgetcontrol_notescontrol となります。 この名前は変更できません。
このトピックのすべての例では、フォーム内のサポート情報の検索コントロールを表すために kbSearchControl が使用されています。
このトピックの内容
サポート情報検索コントロールのイベント
サポート情報検索コントロールのメソッド
サポート情報検索コントロールのイベント
このコントロールのイベントを使用して、コードを選択した項目または開いた項目に対応させることができます。
OnResultOpened
このイベントは、サポート技術情報の記事が、インラインで、またはポップアップ操作によって、サポート情報の検索コントロールで開かれたときに発生します。addOnResultOpened と removeOnResultOpened メソッドを使用して、このイベントのイベント ハンドラーを管理します。
OnSelection
このイベントは、サポート技術情報の記事がサポート情報の検索コントロールで選択されているときに発生します。addOnSelection と removeOnSelection メソッドを使用して、このイベントのイベント ハンドラーを管理します。
PostSearch
このイベントは検索完了時に発生し、結果が表示されます。 新しい addOnPostSearch と removeOnPostSearch メソッドを使用して、このイベントのイベント ハンドラーを管理します。
サポート情報検索コントロールのメソッド
サポート情報の検索コントロールのメソッドを使用して、イベント ハンドラーの設定または除去と、検索のクエリおよび結果結果とのやり取りを行います。
addOnPostSearch
このメソッドを使用して、イベント ハンドラーを PostSearch イベントに追加します。
パラメーター: 関数。 追加する関数。
例: myFunction という名前の関数を PostSearch イベントに追加します。
kbSearchControl.addOnPostSearch(myFunction);
addOnResultOpened
このメソッドを使用して、イベント ハンドラーを OnResultOpened イベントに追加します。
パラメーター: 関数。 追加する関数。
例: myFunction という名前の関数を OnResultOpened イベントに追加します。
kbSearchControl.addOnResultOpened(myFunction);
addOnSelection
このメソッドを使用して、イベント ハンドラーを OnSelection イベントに追加します。
パラメーター: 関数。 追加する関数。
例: myFunction という名前の関数を OnSelection イベントに追加します。
kbSearchControl.addOnSelection(myFunction);
getSearchQuery
このメソッドを使用して、サポート情報管理のコントロールの検索条件として使用するテキストを取得します。
戻り値: 文字列。 検索クエリのテキスト。
例: searchQuery 変数を検索クエリのテキストに設定します。
var searchQuery = kbSearchControl.getSearchQuery();
getSelectedResults
このメソッドを使用して、検索コントロールの現在選択した結果を取得します。 現在選択した結果も、現在開かれている結果を表します。
戻り値: KBSearchResult。 現在選択されている結果。
例: 変数 kbSearchResult を現在選択されている結果に設定します。
var kbSearchResult = kbSearchControl.getSelectedResults();
KBSearchResult プロパティ
次の表に、KBSearchResult オブジェクトのプロパティを説明します。
プロパティ |
種類 |
説明 |
---|---|---|
answer |
String |
記事のコンテンツを含む HTML マークアップ。 このコンテンツは、顧客に送信する電子メールにそのコンテンツを組み込むことができるユーザー定義アクションに渡すことができます。 |
articleId |
String |
Dynamics 365 または Parature の部署内の記事 ID この値は、代替キーとして使用されます。 この値を使用して、この記事が Dynamics 365 内に既に存在するかどうかを確認できます。 |
articleUid |
String |
Dynamics 365 または Parature システムの一意の記事 ID。 Parature をサポート情報ソースとして使用する場合、これには Parature アカウント ID と部署 ID も含まれます (たとえば、"7924/8112/Article/25")。 この値は、代替キーとして使用されます。 この ID は、記事がまだ存在しない場合に、記事の関連付けの間に新しい サポート情報レコードを作成するために必要です。 |
attachmentCount |
数値 |
記事の添付ファイルの数です。 これは、Paratureをサポート情報ソースとして使用する場合にのみ適用されます。 |
createdOn |
Date |
記事が作成された日付。 この値では、ユーザーの現在のタイム ゾーンと形式が使用されます。 記事の経過年数をビジネス ロジックで使用する場合は、使用することもできます。 |
expiredDate |
Date |
記事の期限が切れた日付、また切れる日付。 サポート情報ソースとして Dynamics 365 を使用する場合は null になります。 この日付と現在の日付を比較して、記事が期限切れになったかどうかを比較できます。 この値では、ユーザーの現在のタイム ゾーンと形式が使用されます。 |
folderHref |
文字列 |
Parature 内の記事のフォルダーのパスへのリンクです。 これは、Parature をサポート情報ソースとして使用する場合にのみ適用されます。 |
href |
文字列 |
記事の内容を直接取得するために使用できる、Parature API での記事への直接リンク。 これは、Parature をサポート情報ソースとして使用する場合にのみ適用されます。 |
isAssociated |
Boolean |
記事が親レコードに関連付けられているかどうかを示します。 フォーム スクリプトを使用して、またはフォーム スクリプトによって起動された別のプロセスで、記事を現在のレコードに関連付ける前に、この値を確認できます。 |
lastModifiedOn |
Date |
記事が最後に修正された日付。 この値では、ユーザーの現在のタイム ゾーンと形式が使用されます。 |
publicUrl |
String |
記事のポータル URL をサポートします。 [ポータル URL] オプションをオフにすると、空白になります。 ユーザー定義アクションを使用して、これを、顧客に送信する電子メールのコンテンツ内のリンクに組み込みます。 |
published |
Boolean |
記事が公開済みの状態にあるかどうかを示します。 公開されている場合には True で、その他の場合には False。 記事に関する情報を顧客に送信する前に、記事が公開されているかどうかを確認する必要があります。 |
question |
String |
記事のタイトル。 どのビジネス プロセスにおいても記事を参照する場合に、この値を使用して名前で記事を参照できます。 |
rating |
Number |
記事の評価。 |
searchBlurb |
String |
検索クエリで見つかった領域を含む、記事のコンテンツの短い断片。 これを使用して、検索リスト内でユーザーに記事を少しだけ見せて、これが探している記事であるかどうかの判断を助けます。 |
serviceDeskUri |
String |
Dynamics 365 または Parature サービス デスク内の記事へのリンク。 Dynamics 365 または Parature サービス デスクを使用して記事を開くには、このリンクを使用します。 |
timesViewed |
Number |
顧客によって ポータルで記事が閲覧された回数。 |
getTotalResultCount
検索コントロールで見つけられる結果の数を取得します。
戻り値: 整数。 検索結果の数。
例: 変数 searchCount を検索コントロールの検索結果の数に設定します。
var searchCount = kbSearchControl.getTotalResultCount();
openSearchResult
結果の数を指定することによって検索コントロールの検索結果を開きます。
var openResultStatus = kbSearchControl.openSearchResult(resultNumber, mode);
引数
resultNumber (Integer): 開く結果の数を指定する数値。 結果の数は 1 から始まります。 必須。
mode (String): "Inline" または "Popout" を指定します。 省略可。 引数の値を指定しない場合、既定 ("Inline") のオプションが使用されます。
"Inline" モードは、参照パネルの場合の参照パネル タブまたはコントロールの閲覧ウィンドウのいずれかで結果インラインを開きます。 "Popout" モードはポップアップ ウィンドウで結果を開きます。
戻り値:: ブール値。 指定した検索結果の開始の状態。 成功の場合には 1 を返し、失敗の場合には 0 を返します。 メソッドが -1 を返すのは、指定された resultNumber 値が存在しない場合、または指定された mode 値が無効な場合です。
removeOnPostSearch
このメソッドを使用して、イベント ハンドラーを PostSearch イベントから取り外します。
パラメーター: 関数。 取り外す関数。
例: myFunction という名前の関数を PostSearch イベントから取り外します。
kbSearchControl.removeOnPostSearch(myFunction);
removeOnResultOpened
このメソッドを使用して、イベント ハンドラーを OnResultOpened イベントから取り外します。
パラメーター: 関数。 取り外す関数。
例: myFunction という名前の関数を OnResultOpened イベントから取り外します。
kbSearchControl.removeOnResultOpened(myFunction);
removeOnSelection
このメソッドを使用して、イベント ハンドラーを OnSelection イベントから取り外します。
パラメーター: 関数。 取り外す関数。
例: myFunction という名前の関数を OnSelection イベントから取り外します。
kbSearchControl.removeOnSelection(myFunction);
setSearchQuery
このメソッドを使用して、サポート情報管理のコントロールの検索条件として使用するテキストを設定します。
パラメーター: 文字列。 検索クエリ用テキスト。
例: 検索クエリのテキストを How to solve the problem に設定します。
kbSearchControl.setSearchQuery("How to solve the problem");
関連項目
Dynamics 365 でのサポート情報記事に関する作業
Dynamics 365 で Parature サポート情報を使用
クライアント側のプログラミング リファレンス
Microsoft Dynamics 365 フォームのコードを記述する
クライアントの Microsoft Dynamics 365 の拡張
Microsoft Dynamics 365
© 2017 Microsoft. All rights reserved. 著作権