ソリューション チェッカーを使用した Power Apps でのモバイル駆動型アプリの検証

複雑なビジネス要件を満たすため、モデル駆動型アプリの作成者はCommon Data Service プラットフォームをカスタマイズして拡張できるという非常に高度なソリューションを作成することになりがちです。 高度な実装により、パフォーマンス、安定性、信頼性の問題が生じるリスクが増加し、ユーザーの作業に悪影響を与える可能性があります。 これらの問題を解決する方法を特定して理解することは、複雑で時間がかかることがあります。 ソリューション チェッカー機能を使用すると、一連のベスト プラクティス ルールに対してソリューションで機能豊富なスタティック分析チェックを実行し、これらの問題となるパターンを識別できます。 チェックが完了すると、特定された問題、影響を受けるコンポーネントとコード、各問題を解決する方法が説明されたするドキュメントへのリンクが一覧になった詳細なレポートを受け取ります。

ソリューション チェッカーは、これらのソリューション コンポーネントを分析します:

  • Common Data Serviceプラグイン
  • Common Data Serviceユーザー定義のワークフロー活動
  • Common Data Service Web リソース (HTML および JavaScript)
  • SDK メッセージ手順などの Common Data Service 構成

ソリューション チェッカーは、環境からエクスポートできるアンマネージド ソリューションを使用します。

注意

  • このトピックでは、Power Apps メーカー ポータルのソリューション チェッカーを実行する方法を説明します。 サービスと直接やりとりしても使用できる PowerShell モジュールもご用意しています。 Microsoft.PowerApps.Checker.PowerShell モジュールは、オンプレミスおよびオンライン環境のサポート バージョンに関するマネージド ソリューションおよびアンマネージド ソリューションの分析用途でのみ使用でき、自動化またはサービスをお使いのビルドに統合してパイプラインを解放することができます。 詳細: Microsoft.PowerApps.Checker.PowerShell の概要
  • ソリューション チェッカーでは、ECMAScript 6 (2015) 以降のバージョンを使用した JavaScript を含むソリューションを使用しません。 これらのバージョンのいずれかを使用した JavaScript が検出されると、Web リソースの JS001 構文は問題報告されます。

ソリューション チェッカーを有効にする

すべての Common Data Service 環境では、既定でソリューションチェッカーが有効となっています。 ソリューション チェッカーのメニュー項目は、Power Apps の ソリューション 領域で非管理ソリューションを選択した場合に使用することができます。 ソリューション チェッカー メニューで、実行 オプションが使用できない場合は、Power Apps のチェッカーソリューションをインストールすることで有効にすることができます。 これをインストールするには、次の手順を実行します。

  1. Power Apps にサインインし、ソリューション チェッカーを有効にする Common Data Service 環境を選択します。

  2. 左のナビゲーション ウィンドウで、ソリューション を選択します。

  3. ツール バーで、ソリューション チェッカー を選択し、インストール を選択します。これにより、Microsoft AppSource ページが開きます。 ブラウザーでページがブロックされた場合、ポップアップ ウィンドウを許可する必要があります。

    ソリューション チェッカーのインストール

  4. AppSource ページで 無料試用版 を選択します。

  5. 同意した場合、契約条件に同意し、Power Apps チェッカー ソリューションをインストールする環境を選択します。

  6. インストールが完了したら、Power Apps サイトの ソリューション リストを更新して、リューション チェッカーが使用可能であることを確認してください。

  7. ソリューションを確認するには、ソリューション チェッカーを実行します

ソリューション チェッカーを実行する

環境に Power Apps チェッカーをインストールしたら、Power Apps の ソリューション 領域でアンマネージド ソリューションを選択すると ソリューション チェッカー メニュー項目が利用可能になります。

  1. Power Apps にサインインします。

  2. 左側のウィンドウで、ソリューションを選択します。

  3. 分析するアンマネージド ソリューションの横で、... を選択し、ソリューション チェッカーをポイントして実行を選択します。

    ソリューション チェッカー コマンドを実行する

  4. ソリューション ページの右上にあるステータス ウィンドウに、ソリューション チェッカーの実行 が表示されます。

    ソリューション チェッカーのステータス

    以下に注意します。

    • ソリューション チェッカーが分析を完了するまで、数分間かかる場合があります。

    • この間、実行… 状態と、ソリューション リストの ソリューション チェック 列に表示されます。

    • チェックが完了したら、電子メール通知を受け取り、Power Apps サイトの 通知 領域に通知が表示されます。

  5. チェックが完了したら、レポートを表示します

チェックを取り消す

環境でソリューション チェックを送信すると、ソリューションページの右上領域の状態ウィンドウでチェックを取り消すことができます。

チェックを取り消すと、ソリューション チェックが実行を停止し、ソリューション チェック状態が以前の状態に戻ります。

ソリューション チェッカーの状態

環境にソリューション チェッカーをインストールすると、ソリューション チェック 列が ソリューション リストで使用可能になります。 この列には、ソリューションのソリューション分析状態が表示されます。

都道府県 説明
実行されていない ソリューションはまったく分析されていません。
実行中 ソリューションが分析されています。
完了できなかった ソリューションの分析が要求されましたが、分析が正常に完了しませんでした。
日時 現在の結果 ソリューションの分析が完了し、結果をダウンロードできます。
完了できなかった。 日時 現在の結果 最新の分析要求が正常に完了しませんでした。 最後の正常な結果をダウンロードできます。
Microsoft がチェック これは、Microsoft の管理ソリューションです。 ソリューションの分析は、これらのソリューションで使用できません。
発行元がチェック これは、サードパーティの管理ソリューションです。 現在、ソリューション分析は、これらのソリューションで利用できません。

ソリューション チェッカー レポートを確認

解析チェックが完了すると、ポータルで解析レポートを表示したり、Webブラウザからレポートをダウンロードすることができます。 ポータルでは、 問題場所重大度 別に結果をフィルタリング、グループ化し、ソリューションで検出された問題の詳細情報を表示することができます。

  1. 左側のウィンドウで、ソリューションを選択します。

  2. ソリューション チェッカーレポートを表示する非管理ソリューションの横に配置されている、 ... を選択し、 ソリューション チェッカー をポイントして 結果を表示する を選択します。

  3. 問題を選択すると、解決方法の詳細およびガイダンスが表示されます。

ソリューションチェックの結果は、ダウンロードすることも可能です。 ソリューションのチェッカーのzipファイルが、Webブラウザで指定したフォルダにダウンロードされます。ダウンロードレポートは Excel 形式で、ソリューションで検出された問題の影響度、種類、場所の特定に有用な視覚化情報が含まれています。 問題の解決方法に関する詳細なガイダンスへのリンクも提供されます。

  1. 左側のウィンドウで、ソリューションを選択します。
  2. ソリューション チェッカー レポートをダウンロードするアンマネージドソリューションの横に配置されている、 ... を選択し、 ソリューション チェッカー をポイントして 結果のダウンロード を選択します。
  3. ソリューション チェッカーの ZIP ファイルは、Web ブラウザーによって指定されたフォルダーにダウンロードされます。

レポート内の各列の概要を以下に示します。

レポート フィールド 説明 コンポーネントに適用
問題 ソリューションで識別される問題のタイトル。 すべて
カテゴリ 問題の分類が識別されます。パフォーマンス使用状況、または サポート可能性 などです。 すべて
重要度 検出された問題の潜在的な影響を表します。 使用可能な影響の種類は、、および情報です。 すべて
ガイダンス 問題、影響、推奨されるアクションの詳細が記載された記事へのリンク。 すべて
コンポーネント 問題が特定されたソリューション コンポーネントです。 すべて
Location アセンブリや JavaScript ファイル名など、特定された問題が発生したコンポーネントの場所やソース ファイルです。 すべて
行番号 影響を受ける Web リソース コンポーネントの問題の行番号参照。 Web リソース
モジュール アセンブリで特定された問題が検出されたモジュール名。 プラグインまたはユーザー定義ワークフロー活動
アセンブリで識別された問題の種類。 プラグインまたはユーザー定義ワークフロー活動
メンバー アセンブリで識別された問題のメンバー。 プラグインまたはユーザー定義ワークフロー活動
ステートメント 問題が発生したコード ステートメントまたは構成。 すべて
コメント 高レベルな解決手順が含まれる問題に関する詳細。 すべて

ソリューション チェッカーにより使用される推奨事項ルール

ソリューション コンポーネント ルール名 ルールの説明
プラグインまたはワークフロー活動 il-specify-column Common Data Service クエリ API を通じてすべての列を選択しないでください。
プラグインまたはワークフロー活動 meta-remove-dup-reg 重複する Common Data Service プラグインの登録を避けてください。
プラグインまたはワークフロー活動 il-turn-off-keepalive Common Data Service プラグインで外部ホストを操作するときは、キープアライブを false に設定します。
プラグインまたはワークフロー活動 il-avoid-unpub-metadata 非公開 Common Data Service メタデータの取得を避けてください。
プラグインまたはワークフロー活動 il-avoid-batch-plugin Common Data Service プラグインおよびワークフロー活動では、バッチ要求の型は使用しないでください。
プラグインまたはワークフロー活動 meta-avoid-reg-no-attribute Common Data Service プラグイン登録にフィルター属性を含めます。
プラグインまたはワークフロー活動 meta-avoid-reg-retrieve Retrieve および RetrieveMultiple メッセージ用に登録された Common Data Service プラグインを使用するときは注意してください。
プラグインまたはワークフロー活動 meta-remove-inactive Common Data Service で非アクティブ構成を削除します。
プラグインまたはワークフロー活動 il-meta-avoid-crm2011-depr-message Microsoft Dynamics CRM 2011 の削除済みメッセージを使用しないでください。
プラグインまたはワークフロー活動 meta-avoid-crm4-event Microsoft Dynamics CRM 4.0 プラグイン登録ステージを使用しないでください。
プラグインまたはワークフロー活動 il-avoid-specialized-update-ops Common Data Service で特殊な更新操作要求を使用しないでください。
プラグインまたはワークフロー活動 il-use-autonumber-feature カスタム自動付番ではなく、自動付番機能ソリューションを使用します。
プラグインまたはワークフロー活動 il-avoid-parallel-plugin 並列パターンは、プラグイン内では使用しないでください。
プラグインまたはワークフロー活動 il-avoid-lock-plugin プラグインの静的メンバーのロックをしないでください。
プラグインまたはワークフロー活動 meta-avoid-retrievemultiple-annotation アノテーションの RetrieveMultiple でプラグインを登録しないでください。
Web リソース web-use-async HTTP および HTTPS リソースを非同期に操作します。
Web リソース meta-remove-invalid-form-handler 無効な Common Data Service フォーム イベント登録を修正するか、または削除します。
Web リソース meta-remove-orphaned-form-element 孤立した Common Data Service フォーム イベント登録を修正するか、または削除します。
Web リソース web-avoid-modals モーダル ダイアログを使用しないでください。
Web リソース web-avoid-crm2011-service-odata Microsoft Dynamics CRM 2011 OData 2.0 エンドポイントをターゲットにしないでください。
Web リソース web-avoid-crm2011-service-soap Microsoft Dynamics CRM 2011 SOAP サービスをターゲットにしないでください。
Web リソース web-avoid-browser-specific-api Internet Explorer レガシー API またはブラウザーのプラグインを使用しないでください。
Web リソース web-avoid-2011-api 廃止された Microsoft Dynamics CRM 2011 オブジェクト モデルを使用しないでください。
Web リソース web-use-relative-uri 絶対 Common Data Service エンドポイント URL を使用しないでください。
Web リソース web-use-client-context クライアント コンテキストを使用してください。
Web リソース web-use-dialog-api-param ダイアログ API パラメーターを使用します。
Web リソース web-use-org-setting 組織設定を使用します。
Web リソース web-use-grid-api グリッド API を使用します。
Web リソース web-avoid-isActivityType Xrm.Utility.isActivityType メソッドを新しい Xrm.Utility.getEntityMetadata に置き換えます。リボン ルールは使用しないでください。
Web リソース meta-avoid-silverlight Silverlight Web リソースの使用は廃止されました。
Web リソース web-remove-debug-script 非開発環境にデバッグのスクリプトを追加することは避けてください。
Web リソース web-use-strict-mode 可能な場合は厳密なモードを使用します。
Web リソース web-use-strict-equality-operators 厳密等価演算子の使用。
Web リソース web-avoid-eval 「eval」 関数または同等の機能を使用しないでください。

関連項目

Common Data Serviceに関するベスト プラクティスとガイダンス
モデル駆動型アプリのベスト プラクティスとガイダンス
ソリューション チェッカーの一般的な問題と解決策