次の方法で共有


Microsoft Dynamics 365 でソリューションを削除しようとすると、他のコンポーネントによる依存関係のため、システムエラーが発生し、ソリューションを削除できません。

この記事では、Microsoft Dynamics 365 でソリューションを削除しようとしたときに発生するエラーの解決策について説明します。

適用対象: Microsoft Dynamics 365
元の KB 番号: 4345785

症状

Dynamics 365 でソリューションを削除しようとすると、次のエラーが表示されます。

"ソリューション [ソリューション名] は、システム内の他のコンポーネントからの依存関係のため削除できません。 ソリューションの削除を許可するすべての依存関係を削除します。"

エラー コード 8004f01d への参照が表示される場合もあります。

エラー ダイアログに依存関係が表示されない場合は、追加のエラーの詳細が含まれている可能性がある Solution History を確認します。

原因

このエラーは、Dynamics 365 組織内の他のコンポーネントによって参照されているソリューションを削除しようとすると発生します。 ソリューションに対するすべての依存関係が削除されるまで、ソリューションを削除することはできません。

解決策

エラー ダイアログには、ソリューションを正常に削除する前に削除する必要がある依存関係の一覧が表示されます。 Required By 列のリンクを選択して、依存コンポーネントを表示します。 コンポーネントが不要になった場合は削除するか、削除しようとしているソリューションへの参照を削除するように変更します。

例示

  • アンマネージド カスタマイズ

    ソリューションをインポートし、既定のソリューション内の 1 つ以上のコンポーネントへの参照を追加する場合は、それらの参照を削除してソリューションを正常に削除する必要があります。

    重要

    参照を削除した後、変更を有効にするためにカスタマイズを発行します。

    一般的な例をいくつか次に示します。

    • プロセス (ワークフローなど)

      削除しようとしているソリューションに Widget という名前のカスタム エンティティが含まれており、ウィジェット エンティティを参照するワークフロー プロセスを作成した場合は、ワークフローを削除するか (不要になった場合)、またはワークフローを更新して Widget エンティティへの参照を削除します。 たとえば、ワークフローに複数のステップが含まれており、いずれかのステップでウィジェット レコードを作成または更新する場合は、ワークフローからこのステップを削除して変更を保存します。

    • サイト マップ (ナビゲーション)

      削除しようとしているソリューションに Widget という名前のカスタム エンティティが含まれており、このカスタム エンティティを表示するようにサイト マップ (ナビゲーション) を変更した場合は、ソリューションを正常に削除する前に、サイト マップからこのエンティティへの参照を削除する必要があります。 この参照が既定のソリューションで行われた場合は、次の手順に従います。

      1. Settingsに移動し、Customizationを選択し、システムをカスタマイズするを選択します。

      2. エンティティを展開します。

      3. カスタム エンティティの名前を見つけて選択します。

      4. このエンティティを表示する Areas セクションからチェックマークを削除します。

      5. 保存 を選び、そして 公開 を選択します。

        サイト マップの変更の詳細については、「SiteMap を使用したアプリケーション ナビゲーションの変更を参照してください。

    • システム フォーム

      削除しようとしているソリューションでユーザー設定フィールド (NewField など) が連絡先エンティティに追加され、このフィールドを表示するようにいずれかの連絡先フォームを変更した場合は、ソリューションを正常に削除する前に、フォームからこのフィールドへの参照を削除する必要があります。

    • 表示

      削除しようとしているソリューションでユーザー設定フィールド (NewField など) が連絡先エンティティに追加され、このフィールドを表示するように連絡先ビューの 1 つを変更した場合は、ソリューションを正常に削除する前に、ビューからこのフィールドへの参照を削除する必要があります。

  • 親/子ソリューション

    ソリューションが他のソリューションに依存する可能性があります。 たとえば、複数のソリューションを含む、Contoso から ISV パッケージをインストールしたとします。 ソリューション A には Widget という名前の新しいカスタム エンティティが導入され、ソリューション B では他のエンティティが導入され、ウィジェット エンティティにいくつかの変更が加えられます。 ソリューション B はソリューション A に依存します。ソリューション B を削除する前にソリューション A を削除しようとすると、依存関係が原因でソリューションの削除に失敗します。