Condividi tramite


Errore di eliminazione non riuscita della soluzione a causa di dipendenze circolari tra due soluzioni

Si applica a: Power Platform, Soluzioni

Questo articolo fornisce una soluzione alternativa per un problema a causa del quale l'eliminazione di una soluzione non riesce a causa di dipendenze circolari tra due soluzioni. Esistono dipendenze circolari quando le due soluzioni hanno dipendenze da un componente dall'altra soluzione.

Suggerimento

Per evitare dipendenze circolari tra le due soluzioni, usare ambienti diversi per lo sviluppo di soluzioni diverse. L'isolamento degli ambienti è fondamentale quando si usano componenti come dati e tabelle.

Sintomi

Quando si elimina (disinstalla) una soluzione, viene visualizzato l'errore seguente che indica che esiste una dipendenza in un'altra soluzione:

Impossibile eliminare la soluzione <nome soluzione>. Esistono dipendenze della soluzione, impossibile disinstallare.

Lo stesso errore si verifica quando si tenta di eliminare l'altra soluzione denominata nell'errore durante l'eliminazione della prima soluzione. Si tratta di una dipendenza circolare.

Causa

Le dipendenze circolari tra le soluzioni possono verificarsi a causa della mancanza di isolamento dell'ambiente di sviluppo per soluzioni diverse. Comporta dipendenze involontarie dei componenti tra due soluzioni sviluppate nello stesso ambiente.

Soluzione alternativa

Per risolvere le dipendenze circolari tra le due soluzioni, è prima necessario comprendere le dipendenze tra soluzioni diverse. Quando si verificano errori che indicano una dipendenza circolare, selezionare il pulsante Visualizza dipendenze nella notifica.

Le dipendenze mostrano tutti i componenti che dipendono dalla soluzione che si sta tentando di disinstallare. È possibile selezionare ogni componente nell'elenco e selezionare Visualizza i livelli della soluzione per trovare le soluzioni dipendenti da cui proviene il componente.

Esempio

Ad esempio, la soluzione A e la soluzione B hanno dipendenze l'una dall'altra. Come illustrato nel diagramma:

  • La soluzione A include due componenti, componente 1 e componente 2.
  • La soluzione B include due componenti, componente 3 e componente 4.
  • Il componente 2 della soluzione A dipende dal componente 3 della soluzione B.
  • Il componente 4 della soluzione B dipende dal componente 1 dalla soluzione A.
  • Non è possibile eliminare alcuna soluzione a causa delle dipendenze circolari.

Esempio di due soluzioni con dipendenze l'una dall'altra.

Eseguire l'aggiornamento per rimuovere le dipendenze

Per risolvere le dipendenze circolari, lavorare su una delle soluzioni coinvolte e aggiornarla per rimuovere la dipendenza dall'altra.

Opzione 1
  1. Passare all'ambiente di origine della soluzione A e modificare il componente 2 per rimuovere la dipendenza dal componente 3.
  2. Esportare la soluzione A come nuova versione e aggiornarla all'ambiente di destinazione.

È ora possibile eliminare la soluzione B, perché la soluzione A non ha una dipendenza dalla soluzione B.

Esempio di rimozione della dipendenza dalla soluzione B per la soluzione A.

Opzione 2
  1. Passare all'ambiente di origine della soluzione B e modificare il componente 4 per rimuovere la dipendenza dal componente 1.
  2. Esportare la soluzione B come nuova versione e aggiornarla all'ambiente di destinazione.

È ora possibile eliminare la soluzione A, perché la soluzione B non ha una dipendenza dalla soluzione A.

Esempio di rimozione della dipendenza dalla soluzione A per la soluzione B.

Modifica attiva per rimuovere le dipendenze

Se si desidera rimuovere le dipendenze per poter eliminare le soluzioni, rimuovere le dipendenze nel livello attivo e quindi eliminare la soluzione.

Opzione 1

Nell'ambiente di destinazione modificare il componente 2 e rimuovere la dipendenza dal componente 3 nel livello attivo. L'eliminazione della soluzione B è ora consentita. Dopo l'eliminazione della soluzione B, è anche possibile eliminare la soluzione A.

Opzione 2

Nell'ambiente di destinazione modificare il componente 4 e rimuovere la dipendenza dal componente 1 nel livello attivo. L'eliminazione della soluzione A è ora consentita. Dopo l'eliminazione della soluzione A, è anche possibile eliminare la soluzione B.