セグメント化されたソリューションとパッチを作成して、選択したエンティティ資産をエクスポートします
このトピックは、Dynamics 365 Customer Engagement (on-premises) に適用されます。 このトピックの Power Apps バージョンについては、以下を参照してください。 セグメント化されたソリューションおよび修正プログラムの使用
ソリューションおよびソリューションの修正プログラムで配布する内容をより厳格にコントロールするには、ソリューションのセグメント化を使用します。 ソリューションのセグメント化では、すべての資産を含むエンティティ全体ではなく、選択したエンティティ資産 (エンティティ フィールド、フォーム、ビューなど) をソリューションと共にエクスポートできます。 セグメント化したソリューションおよび修正プログラムを作成するには、コードを書かないで、ソリューション ユーザー インターフェイスを使用することができます。
ソリューション内の内容のコントロールの強化に加えて、修正プログラムの記述の内容もコントロールできます。 上位のソリューションの修正プログラムを作成して、それをマイナー更新プログラムとして基本ソリューションにエクスポートできます。 ソリューションを複製するときは、システムは基本ソリューションに関連するすべての修正プログラムをロールバックして、新しいバージョンを作成します。
修正プログラムおよび複製されたソリューションを使用するとき、以下の点に注意してください。
修正プログラムは、上位のソリューションへの逐次のマイナーな更新プログラムを表しています。 修正プログラムは、ターゲット システムへのインストール時に、コンポーネントおよび資産を上位のソリューション内で追加または更新できますが、上位ソリューションからコンポーネントまたは資産を削除することはできません。
修正プログラムは 1 つの上位のソリューションにしか対応できませんが、上位のソリューションは 1 つ以上の修正プログラムに対応できます。
修正プログラムはアンマネージド ソリューションに対して作成されます。 管理ソリューションに対して修正プログラムを作成することはできません。
ターゲット システムに修正プログラムをエクスポートするときは、マネージド修正プログラムとしてエクスポートする必要があります。 運用環境では、アンマネージド修正プログラムを使用しないでください。
修正プログラムをインストールするには、ターゲット システムに上位のソリューションが存在している必要があります。
修正プログラムを削除または更新できます。
上位のソリューションを削除すると、すべての子の修正プログラムも削除されます。 システムは、削除操作は元に戻すことができませんという警告メッセージを表示します。 削除は単一のトランザクションで実行されます。 修正プログラムの 1 つまたは親のソリューションを削除できなかった場合、トランザクション全体がロールバックされます。
上位のソリューションの最初の修正プログラムを作成すると、そのソリューションはロックされ、このソリューションを変更することまたはエクスポートすることはできません。 ただし、その子の修正プログラムをすべて削除すると、上位のソリューションのロックが解除されます。
基本ソリューションを複製するとき、すべての子の修正プログラムはその基本ソリューションにロールアップされて、その基本ソリューションが新しいバージョンになります。 複製されたソリューション内のコンポーネントおよび資産を追加、編集、または削除することができます。
複製されたソリューションは、ターゲット システムにマネージド ソリューションとしてインストールされたときの基本ソリューションの置き換えを示します。 通常、複製されたソリューションを使用して、前のソリューションの重要な更新プログラムを配布します。
複製されたソリューションおよびと修正プログラムのバージョン番号について
ソリューションのバージョンの形式は major.minor.build.revision です。 修正プログラムのビルド番号またはリビジョン番号は、上位のソリューションよりも大きくする必要があります。 それよりも上位のメジャーまたはマイナー バージョンは使用できません。 たとえば、基本ソリューションのバージョンが 3.1.5.7 の場合、修正プログラムはバージョン 3.1.5.8 またはバージョン 3.1.7.0 になることはできますが、バージョン 3.2.0.0 になることはできません。 複製されたソリューションのバージョン番号は、基本ソリューションのバージョン番号以上になる必要があります。 たとえば、基本ソリューションのバージョンが 3.1.5.7 の場合、複製されたソリューションはバージョン 3.2.0.0 またはバージョン 3.1.5.7 になることができます。 UI で設定できるのは、複製ソリューションのメジャーおよびマイナー バージョンの値と、修正プログラムのビルドまたはリビジョンの値のみです。
セグメント化したソリューションを必要なエンティティ資産を使用して作成
セグメント化したソリューションを作成するには、アンマネージド ソリューションの作成と既存のリソースの追加から開始します。 複数のシステムやユーザー定義エンティティを追加できます。それらのエンティティごとに、ソリューションに含める資産を選択します。 ウィザード風のセットアップにより、エンティティ資産の追加のプロセスを段階的に進みます。
設定>ソリューションに移動します。
新規を選択してソリューションを作成します。 必須フィールドに情報を入力します。 保存して閉じるを選択します。
作成したばかりのソリューションを開きます。 既存の追加ドロップダウン リストで、エンティティを選択します。
ソリューション コンポーネントの選択ダイアログ ボックスで、ソリューションに追加する 1 つ以上のエンティティを選択します。 OK を選びます。
ウィザードが開きます。 ウィザードの指示に従って、選択した各エンティティの資産をソリューションに追加します。
変更を反映するには公開を選択します。
次の図に、エンティティ資産を
Account
エンティティ、Case
エンティティ、およびContact
エンティティから選択してセグメント化したソリューションを作成した例を示します。エンティティコンポーネントの選択から開始します。
次に、ソリューション コンポーネントを選択します。
ウィザードに従います。 手順 1 で、アルファベット順に開始して、次のように、最初のエンティティである
Account
エンティティの資産を選択します。フィールドタブを開き、取引先企業番号フィールドを選択します。
手順 2 で、サポート案件エンティティについて、すべての資産を追加します。
手順 3 で、取引先担当者エンティティの記念日フィールドを追加します。
その結果、作成したセグメント化されたソリューションには、
Account
、Case
、およびContact
の 3 つのエンティティが含まれます。 各エンティティには選択した資産のみが含まれます。
ソリューション修正プログラムの作成
修正プログラムには、コンポーネントおよび資産の追加または編集などの、上位のソリューションへの変更が含まれています。 上位のコンポーネントを編集する場合でない限り、上位コンポーネントを含める必要はありません。
アンマネージド ソリューションに対して修正プログラムを作成する
設定>ソリューションに移動します。
グリッドで、修正プログラムを作成する対象のアンマネージド ソリューションを選択します。 修正プログラムの複製を選択します。 開いたダイアログ ボックスに、基本ソリューションの名前と修正プログラムのバージョン番号が含まれています。 保存を選びます。
グリッドで、新しく作成された修正プログラムを見つけて開きます。 基本ソリューションの場合とまったく同様に、ウィザードに従って、必要な資産とコンポーネントを追加します。
変更を反映するには、公開を選択します。
次の図に、既存のソリューションの修正プログラムを作成する例を示します。 修正プログラムの複製を選択して開始します (圧縮されたビューでは、修正プログラムの複製アイコンは、次に示すように、2 つの小さい正方形として表示されます)。
修正プログラムに対する複製ダイアログ ボックスで、修正プログラムのバージョン番号は上位のソリューションのバージョン番号が基になっているが、ビルド番号は 1 つずつ増加することが分かります。 後続の各修正プログラムのビルドまたはリビジョン番号は、直前の修正プログラムよりも大きくなっています。
次のスクリーンショットは、基本ソリューション SegmentedSolutionExample のバージョン 1.0.1.0 と、修正プログラム SegmentedSolutionExample_Patch のバージョン 1.0.2.0 を示しています。
修正プログラムでは、
Book
という名前の新しいユーザ定義エンティティを追加して、Book
エンティティのすべての資産をその修正プログラムに含めました。
ソリューションの複製
アンマネージド ソリューションを複製すると、このソリューションに関連するすべての修正プログラムが元のソリューションの新しく作成したバージョンにロールアップされます。
設定>ソリューションに移動します。
リストから、複製するアンマネージド ソリューションを選択します。 ソリューションの複製を選択します。 開いたダイアログ ボックスには、基本ソリューションの名前と新しいバージョン番号が含まれています。 保存を選びます。
変更を反映するには、公開を選択します。
例を続行すると、新しいバージョン番号を示すソリューションに対する複製ダイアログ ボックスが表示されます。
複製が完了すると、ソリューションの新しいバージョンに 3 つの元のエンティティ (
Account
、Case
、およびContact
) と、修正プログラムに追加したBook
という名前のユーザー定義エンティティが格納されています。 各エンティティには、この例で追加した資産のみが含まれます。