ソリューションの階層
ソリューションの階層化はコンポーネント レベルで実装されます。 管理ソリューションとアンマネージド ソリューションは、Microsoft Dataverse 環境内で異なるレイヤ―に存在します。 Dataverse には、2 つの異なるレイヤーがあります。
アンマネージド レイヤー インポートされたすべてのアンマネージド ソリューションとアドホック カスタマイズは、この レイヤー に存在します。 すべてのアンマネージド ソリューションは、単一のアンマネージド レイヤーを共有しています。
管理対象レイヤー インポートされたすべての管理対象ソリューションとシステム ソリューションがこのレベルに存在します。 複数の管理ソリューションがインストールされている場合、最後にインストールされたのソリューションは、以前にインストールされた管理ソリューションの上にあります。 これは、インストールされている 2 番目のソリューションが前にインストールされたものをカスタマイズできるという意味です。 2 つの管理ソリューションに競合する定義がある場合、ランタイムの動作は "最新のものが優先"、または結合ロジックが実装されます。 管理ソリューションをアンインストールすると、その下の管理ソリューションが有効になります。 すべての管理ソリューションをアンインストールした場合、システム ソリューション内に定義された既定の動作が適用されます。 管理レイヤ― レベルのベースはシステム レイヤ―です。 システム レイヤーには、プラットフォームが機能するために必要なエンティティとコンポーネントが含まれています。
管理ソリューション内の階層化
各マネージド コンポーネントには、ソリューション内に階層があり、1 つ以上の修正プログラムまたはソリューションへの保留中のアップグレードがインポートされたかどうかに応じて、以下の階層を含めることができます。
ベース ソリューション レイヤー「スタック」の一番下には、ベース レイヤー があります。 このレイヤーには、コンポーネントの所有者とそれに関連付けられているマネージド プロパティを識別するソリューション発行者が含まれています。
上部 上部の レイヤー は現在の レイヤー とみなされ、コンポーネントの実行時の動作を定義します。 最上位層がアップグレードまたは修正プログラムの可能性があるか、または、ソリューションに修正プログラムもしくはアップグレードが適用されていない場合、基本ソリューションがコンポーネントのランタイム動作を決定します。
更新で追加された階層:
パッチ コンポーネントに1つ以上のソリューション パッチがインポートされている場合、それらはベースの レイヤー の上に積み重ねられ、最新のパッチが前のパッチの上に配置されます。
保留中のアップグレード 段階的なアップグレード (_Upgradeという名前) がインポートされると、ベース レイヤーとパッチ レイヤー (存在する場合) の上に配置されます。
重要
修正プログラムの使用はお勧めしません。 詳細: ソリューション修正プログラムの作成
次の画像は、基本ソリューション、パッチ、および保留中のアップグレードを表示するカスタム列のソリューション レイヤーの例を示しています。
ソリューション内のコンポーネントの階層を表示する方法については、ソリューションの階層 を参照してください。
統合動作
ソリューション メーカーは、ソリューションが更新されたとき、または同じコンポーネントに影響する複数のソリューションがインストールされたときの統合動作を理解しておく必要があります。 統合されるのは、モデル駆動型のアプリ、フォーム、およびサイト マップ コンポーネントの種類のみであることに注意してください。 他のすべてのコンポーネントは "最上位優先" の動作を使用します。
"上位優先" の動作
モデル駆動型アプリ、フォーム、サイト マップ コンポーネントを除き、他のソリューション コンポーネントは "上位優先" の動作を使用し、最上位にあるレイヤーがアプリの実行時にコンポーネントがどのように機能するかを決定します。 トップ レイヤーは、段階的な (保留中の) アップグレードによって導入できます。
保留中のアップグレードによって導入されたトップ レイヤー
これは、ソリューションへのアップグレード更新のステージで導入された上位優先コンポーネントの動作の例です。 詳細: ターゲット環境でのアップグレードまたは更新の適用
現在のトップ (ベース) レイヤーでは、既定の設定である 100 を使用したアカウント テーブルに対する コメント テキスト列の 最大長 プロパテがあります。
ソリューション アップグレードは、アップグレードのステージ オプションを使用してインポートされ、新しいトップ レイヤーが作成されます。 保留中のアップグレードには、最大長 プロパティ値が 150 に変更されたアカウント テーブルの コメント テキスト列が含まれます。
この場合、アカウント レコードの コメント 列には、アプリの実行時に最大 150 文字まで使用できます。
ソリューションの更新と統合動作のアップグレード
前のセクションで説明したように、修正プログラムと段階的アップグレードは、基本ソリューションの上にスタックされます。 これらは Power Apps のソリューション領域からアップグレードを適用を選択することで統合でき、これにより階層をフラット化し、新しい基本ソリューションを作成します。
複数のソリューションの統合動作
管理ソリューションの配布の準備をするときは、環境に複数のソリューションがインストールされている可能性や、将来、別のソリューションがインストールされる可能性があることを考慮します。 ソリューションをベスト プラクティスに従って構築して、他のソリューションと競合しないようにします。 詳細: セグメント化されたソリューションを使用する
Dataverse のカスタマイズをマージするプロセスは、ソリューションの機能を保持することに重点が置かれています。 プレゼンテーションを保持するためにあらゆる処理が行われても、カスタマイズ間に非互換性があると、カスタマイズの機能を保持することが優先されて、プレゼンテーションの細部が変更されることがあります。