検査応答に関するレポートを実行する
たとえば、Power BI でレポートまたはダッシュボードを作成し、技術者から提供された検査応答に基づいて分析して対応します。
検査の応答を理解、表示、および報告する
検査のために入力されたすべての応答は、Microsoft Dataverse に保存されます。 検査応答は、個々の質問回答に解析できます。
まず、Dataverse で検査応答を解析および整理する頻度を構成する必要があります。
応答の解析を有効にするには、Field Service アプリ>設定>Field Service 設定>検査タブに移動します。
有効な分析 が はい に設定されていることを確認します。 分析の頻度 については、次のオプションを検討してください:
- 毎日: この設定を使用して、検査応答を 1 日 1 回個々の質問の回答に解析します。 毎日 レコード生成開始時刻 に、すぐに使用できるフローがトリガーされ、個々の質問の回答が Dataverse テーブルに入力されます。
- 即時: 検査が完了とマークされたらすぐに Dataverse で質問の回答を使用できるようにする必要がある場合は、この設定を使用します。
- カスタム: 解析を実行する必要がある日数を提供することにより、独自の頻度を定義します。 例として次のスクリーンショットを参照してください。
注意
分析頻度が 即時 に設定されている場合、サービス タスクが完了するとすぐに、検査応答が解析され、保存されます。技術者が変更を加えて検査を再度完了しても、解析された応答は更新されません。 ただし、分析頻度が 毎日 または カスタム に設定されている場合、応答はフロー開始時間より 前 のサービス タスクの直近の完了から保存されます。
分析が構成されたので、質問と回答を Dataverse の 3 つのテーブルに保存する準備が完了しました。
- Customer Voice 調査質問または msfp_question: 各検査質問を保存。
- Customer Voice 回答または msfp_surveyresponse: 検査への回答。
- Customer Voice 調査質問の回答および msfp_questionresponse: 各検査質問に対する個々の応答。
これで、検査を作成して公開する準備が完了しました。 例として次のスクリーンショットを参照してください。
検査に関する質問は Dataverse に保存され、Power Apps の Customer Voice 調査質問 テーブルで見つけることができます。 ここでは、検査の各質問のエントリを確認できます。
検査が完了する前に、Customer Voice 調査質問の回答 テーブルは空になります。
サンプル検査に戻り、次のスクリーンショットに示すように、質問に対する回答をいくつか追加して、検査を完了しました。
Customer Voice 調査質問の回答 テーブルでもう一度チェックすると、検査から送信された各応答の値が表示されます。
既定フロー
前のセクションで説明したすべてのロジックは、Power Automate フローを使用し、検査機能が用意されています。
次のフローが含まれます。
検査定義の逆シリアル化フロー: このフローは、検査の公開時にトリガーされ、検査質問を
msfp_question
テーブルに入力します。検査応答の逆シリアル化 – 繰り返しフロー: このフローは、頻度が日ごとまたはカスタムに設定されている場合にトリガーされ、解析された検査応答 JSON を
msfp_surveyresponse
に更新し、msfp_questionresponse
テーブルに応答と対応する質問の新しいレコードを作成します。検査応答の逆シリアル化フロー: 頻度が即時に設定されている場合、このフローは応答の解析を処理します。
次のスクリーンショットに示すように、フローの状態を確認できます。
応答内の添付ファイルまたは画像
検査でアップロードされた各画像は、注釈として 検査の添付ファイル テーブルに格納されます。 フローを使用して取得 することができます。
構成の考慮事項
Power Automate フローを使用した検査応答の解析 (応答の逆シリアル化)
技術者が検査に記入すると、各検査の質問に対する回答が JSON 形式でとして 検査応答エンティティに保存されます。
Power Automate のフローを使用して、検査の応答でワークフローを実行します。 詳細については、検査応答でのワークフローの実行 に関するビデオを参照してください。
次の例では、技術者が検査の質問「フォローアップが必要ですか?」に「はい」と答えた場合、新しいフォローアップ作業指示サービスタスクが関連する作業指示書に追加されます。
Note
すぐに使用できるフローはカスタマイズできません。 カスタマイズするには、Power Automate フローを作成またはコピーする必要があります。
フローの作成
https://flow.microsoft.com に移動し、ご利用の環境を選択して新たなフローを作成します。
最初から自動化するを選択します。
フローに名前を付けて、スキップを選択し、フロー エディター ページでトリガーを選択します。
トリガーを作成する
コネクターで「Dynamics 365」を検索し、トリガーにレコードが作成または更新されたときを選択します。
技術者はこのエンティティからの検査を表示して対応しているため、このフローは、作業指示書サービス タスク エンティティに関連しています。 エンティティ名に作業指示書のサービス タスクを選択します。
データベースから応答を取得する
続いて、検査の応答を取得する必要があります。
「Dynamics 365」でレコードを取得するアクションを使用して手順を追加します。
エンティティに検査の応答を選択して取得を行い、このフィールドには検査応答レコードの ID が含まれているため、項目の識別子には検査応答 IDを選択します。
JSON を抽出する
変数を初期化するアクションを追加して、ResponseJsonContentフィールドの応答を取得します。
応答のデコード
次に、応答の JSON を使用可能な形式に変換する必要があります。
変数を初期化 アクションを追加し、URL をデコードし、base 64 が応答の JSON をデコードします :
decodeUriComponent(decodeBase64(variables('responseJson')))
スキーマの更新
ワークフローを実行する質問の名前をスキーマに提供します。
この例では、スキーマは次のとおりです :
{
"type": "object",
"properties": {
"Followup": {
"type": "string"
}
}
}
スキーマの生成に問題がある場合は、サンプルから生成するオプションを選択して、検査の質問と回答の名前とサンプル回答を入力します。
この例では、次のように入力できます :
{"Followup":"Yes"}
"フォローアップ" は、以下のスクリーンショットに示すように、検査質問の名前の値に基づいています:
条件に基づくアクション
次に、検査の質問に対する応答に基づく条件とアクションを追加します。
この例では、"フォローアップ" の検査質問の答えが "はい" である場合、同じ作業指示書内で 作業指示書サービス タスク と他の サービス タスク タイプ を作成します。
フローを保存してテストします。