次の方法で共有


オフライン プロファイルを最適化する

モデル駆動型アプリのオフライン プロファイルを作成、または更新する際には、注意すべき点が多くあります。 オフライン プロファイルには、アプリのユーザーがフィールドでタスクを完了するために必要なすべてのデータを含める必要があります。 しかし、データ量が多すぎると、アプリ利用者がデータのダウンロードを長い時間帯記することになりかねません。 デバイスのスペース不足につながる場合もあります。 アプリのユーザーが持っているデバイスやデータ プランを考慮し、素晴らしい体験を提供できるようにする必要があります。

次のガイドラインは、組織の正確なニーズを満たすオフライン プロファイル作成に役立ちます。

ユーザーに大量のデータをダウンロードさせないでください

各ユーザーは、異なるデータセットにアクセスできます。 さまざまなグループのユーザーがどれだけのデータを見ることになるかを考え、テストすることが重要です。 たとえば、グループの営業マネージャーは、地域の営業マネジャーよりも多くの販売機会にアクセスできる場合があります。

オフライン プロファイルを作成し、実際のデータまたは代表的なデータを使用してテストするときは、次のベスト プラクティスを念頭に置いてください:

  • パフォーマンスを向上させるには、レコード数を 200,000 未満に制限します。 3,000,000 を超えるレコードは、オフライン同期ではサポートされません。
  • テーブルの数を 100 未満に制限します。
  • 合計データサイズを 1 GB 未満に制限します。
  • ファイルと画像の合計サイズを 4GB 未満に制限します。 フィルタを適用して、ダウンロードの合計サイズを減らします。
  • ステータス、グループ、地域、所有者、割り当て先などのフィールドでフィルタリングすることで、頻繁に変更されるテーブルにダウンロードされるレコードの数を減らします。

アプリのオフライン データがこれらの推奨値を超えると、同期が遅くなり、データ使用量やバッテリー使用量が増加し、アプリのパフォーマンスが低下します。

オフラインのプロフィールを最適化する

以下のベスト プラクティスを適用して、ユーザーが必要なデータのみをダウンロードするようにしてください。 ダウンロードするデータを最適化することで、推奨される制限内に収めやすくなります。

作業を一からやり直すことを避ける

Field Service、または Sales をカスタマイズする場合は、既定のオフライン プロファイルから開始します。 コアな機能が使えることはもちろん、標準的なフォームで使われているテーブルを見逃すこともありません。

既定のオフラインプロファイルには、既成のソリューションに必要なものがすべて含まれています。 ビジネスにとって重要なテーブルをさらに追加できます。

ただし、 デフォルト プロファイルからテーブルを削除しないでください 。 これらのテーブルがないと、フォームやビューの実行時に失敗する可能性があります。 既定のプロファイルに含まれるデータ行数が多すぎる、または少なすぎる場合は、最大テーブルのフィルタを調整して、ユーザーのデータサイズを最適化します。

各フォームで参照されているすべてのテーブルを追加し、アプリで表示します

モデル駆動型アプリにフォーム、またはビューを追加するときは、ルックアップを含む他のテーブルへの参照を探します。 これらの各テーブルが、対応する関連テーブルやフィルターとともにオフライン プロファイルに含まれていることを確認してください。 Web リソース スクリプトで使用されるすべてのテーブルも必ず追加してください。

オフライン プロファイルにテーブルを追加する際、どの行をダウンロードするかを 4 つのオプションから 1 つ選択することができます。

  • 組織の行
  • すべての行
  • 関連する行のみ
  • カスタム

それぞれのテーブルに最適なオプションを選ぶには、おテーブルが以下のどのカテゴリーに属するかを考慮してください:

  • スタンドアロン テーブル: 連絡先など、アプリ内でグリッドとして表示されるテーブル。

  • 関連テーブル: Unitなどの別のテーブルのフォームまたは グリッド ビューで参照されるテーブル。

  • リソース テーブル: 通貨や地域などのリソース データが含まれるテーブル。

追加するテーブルのカテゴリに基づいて行オプションを選択します:

テーブルの種類 組織の行 すべての行 関連する行のみ カスタム
スタンドアロン
関連
リソース

フィルタを使用してデータのダウンロード サイズを減らします

ユーザーがオンライン時に大量のデータにアクセスする場合、フィルターを適用してオフライン時にダウンロードするデータを制限します。

重要

関連する行をダウンロードするように設定されているテーブルにカスタム フィルターを追加した場合、フィルターは OR として扱われます。 これは、フィルターで指定された行に加えて、関連するすべての行がダウンロードされることを意味します。 ユーザーは、意図したよりも多くのデータをダウンロードする可能性があります。 関連する行をダウンロードし、追加のフィルターを適用する場合は、関連する行のみをクリアし、AND を使ったカスタム フィルターで関連と追加の制限を指定します。

  • スタンドアロン テーブル: アプリの グリッド ビューに必要なレコードを含むカスタム フィルターを使用します。 既定では、アプリ デザイナーでテーブルを追加すると、すべてのビューが含まれます。 ユーザーがオンラインとオフラインで同じデータを持つようにするには、オフラインのプロファイルに含めるデータをフィルターするビューを明示的に選択します。

    明示的な EQUALS 条件を持つカスタム フィルターを示すスクリーンショット。

  • 関連テーブル: 関連する行を かつ 他のフィルター条件に一致する行をユーザーにダウンロードさせたい場合は、カスタム フィルターを使用します。

    明示的な AND 条件を持つカスタム フィルターを示すスクリーンショット。

  • リソース テーブル: アクティブ ステータスの行など、条件に一致する行のみをユーザーにダウンロードさせたい場合は、カスタム フィルターを使用します。

    ステータスがアクティブに等しいカスタム フィルターを示すスクリーンショット。

一般的なカスタム フィルター

予約やタイムライン項目などの時間中心のデータに対して、時間や日付のフィールドでフィルターします。 将来と過去の両方の日付を考慮してください。 たとえば、一般的なフィルターでは、過去 1 ヶ月と今後 3 ヶ月の予定が含まれる場合があります。

開始時間と終了時間に基づいて、OR 条件で複数のフィルターを表示するスクリーンショット。

ステータスでフィルタリング して、特定のステータスの行にダウンロードを制限します。

ステータスがアクティブに等しい複数のフィルターを示すスクリーンショット。

カスタム カテゴリまたは役割フィールドでフィルターすることで、大きなテーブルをアプリに必要なデータまで縮小します。 たとえば、連絡先を役割でフィルターすることで、データを利害関係者に制限できます。

ロールに基づくフィルターを示すスクリーンショット。

ダウンロードを遅くする可能性のあるこれらのフィルターの落とし穴を避けましょう

カスタム フィルターの結果が遅くなる場合は、Dataverse クエリ、ダウンロードに時間がかかります。 以下のベスト プラクティスに従って、一般的なパフォーマンスのボトルネックを回避してください:

  • 部分的な文字列一致や、 含むで始まる、または で終わる は使用しないでください。

  • カスタム フィルターでリレーションシップの多層化を避けてください。 このようなフィルターを使用すると、ダウンロードが遅くなる可能性があります。

    リレーションシップがネストされた複数のフィルターを示すスクリーンショット。

  • 多くの OR 条件の使用は避けてください。

  • 頻繁に変更されるテーブルのデータのダウンロードを減らすために、短い時間枠の使用は避けてください。 オフライン プロファイル内のテーブルが大きく、頻繁に変更される場合は、ステータス、グループ、地域、所有者、割り当て先などのフィールドでフィルター処理して、ダウンロードされるレコードの数を減らします。

オフライン テーブル列選択を使用してダウンロードしたデータを最適化します (プレビュー)

重要

  • これはプレビュー機能です。
  • プレビュー機能は運用環境での使用を想定しておらず、機能が制限されている可能性があります。 これらの機能を公式リリースの前に使用できるようにすることで、顧客が一足先にアクセスし、そこからフィードバックを得ることができます。

特に遠隔地にある非常に大規模なデータセットを持つ組織では、最初の同期が完了するまでに時間がかかることがあります。 オフライン テーブル列選択 (選択) を使用すると、デバイスにダウンロードする列を 選択 して、アプリで使用されない列をダウンロードしないようにすることができます。 これにより、ネットワークとディスクの使用量の両方が節約され、同期時間が短縮されます。 これは最初の同期とデルタ同期の両方に影響しますが、ダウンロードするレコードが多いため、最初の同期の影響がより大きくなります。

  1. Power Apps Studio の左側のパネルで、選択 アプリ を選択します。

  2. モデル駆動型アプリを選択し、 編集を選択します。

  3.  設定 を選択します。

  4.  全般 を選択します。

  5. 選択 オフライン モードとプロファイル セクションで、ドロップダウン メニューから 選択 選択したプロファイルを編集 します。

  6. [プロファイルの編集] ペインが表示されます。 オフラインで使用するデータ セクションで、最適化するテーブルに対して、 その他のアクション (...) アイコンを 選択 して、 編集 を選択します。

  7. アカウントの編集 ページが表示されます。 [選択した列] セクションで、 [列の管理] オプションを選択します。

  8. [選択した列の管理] ペインで、 [選択 必要な列のみ] オプションを選択 し、必要に応じてさらに列を選択 します。

    重要

    アプリにカスタムJavaScriptコードがある場合は、カスタム コードで使用される列がオフライン プロファイルで選択されていることを確認してください。

  9. 戻るを選択します。

  10. 保存 を選択します。

  11. 選択 保存 + 閉じる

  12. 閉じる で 設定 を選択し、選択 で 公開 します。

注意

  • 自動生成されたオフライン プロファイルを使用するキャンバス アプリの場合、システムはデバイスにダウンロードされた列を自動的に最適化します。
  • 未使用の列が多いテーブルでは列を選択することをお勧めします。
  • 列の管理 オプションは、 プレビューPower Platform オフライン構成 では有効になっていません。

参照

注意

ドキュメントの言語設定についてお聞かせください。 簡単な調査を行います。 (この調査は英語です)

この調査には約 7 分かかります。 個人データは収集されません (プライバシー ステートメント)。