O erro "Falha na exclusão da solução" ocorre devido a dependências circulares entre duas soluções
Aplica-se a: Power Platform, Soluções
Este artigo fornece uma solução alternativa para um problema em que a exclusão de uma solução falha devido a dependências circulares entre duas soluções. Existem dependências circulares quando as duas soluções têm dependências em um componente da outra solução.
Dica
Para evitar dependências circulares entre as duas soluções, use ambientes diferentes para desenvolver soluções diferentes. O isolamento de ambientes é fundamental ao usar componentes como dados e tabelas.
Sintomas
Ao excluir (desinstalar) uma solução, você recebe o seguinte erro indicando que existe uma dependência em outra solução:
Falha ao excluir o nome> da solução da solução<. As dependências da solução existem, não é possível desinstalar.
O mesmo erro ocorre quando você tenta excluir a outra solução nomeada no erro ao excluir a primeira solução. Esta é uma dependência circular.
Motivo
Dependências circulares entre soluções podem acontecer devido à falta de isolamento do ambiente de desenvolvimento para diferentes soluções. Isso resulta em dependências de componentes não intencionais entre duas soluções sendo desenvolvidas no mesmo ambiente.
Solução alternativa
Para contornar as dependências circulares entre as duas soluções, primeiro você precisa entender as dependências entre diferentes soluções. Quando você encontrar erros indicando uma dependência circular, selecione o botão Exibir dependências na notificação.
As dependências mostram todos os componentes que dependem da solução que você está tentando desinstalar. Você pode selecionar cada componente na lista e selecionar Ver camadas de solução para localizar as soluções dependentes de onde o componente vem.
Exemplo
Por exemplo, a Solução A e a Solução B têm dependências uma da outra. Conforme mostrado no diagrama:
- A solução A tem dois componentes, o Componente 1 e o Componente 2.
- A solução B tem dois componentes, o Componente 3 e o Componente 4.
- O Componente 2 da Solução A depende do Componente 3 da Solução B.
- O Componente 4 da Solução B depende do Componente 1 da Solução A.
- Você não pode excluir nenhuma das soluções devido às dependências circulares.
Atualizar para remover dependências
Para resolver as dependências circulares, trabalhe em uma das soluções envolvidas e atualize-a para remover a dependência da outra.
Opção 1
- Vá para o ambiente de origem da Solução A e edite o Componente 2 para remover a dependência do Componente 3.
- Exporte a Solução A como uma nova versão e atualize-a para o ambiente de destino.
Você tem permissão para excluir a Solução B agora, pois a Solução A não tem uma dependência da Solução B.
Opção 2
- Vá para o ambiente de origem da Solução B e edite o Componente 4 para remover a dependência do Componente 1.
- Exporte a Solução B como uma nova versão e atualize-a para o ambiente de destino.
Você tem permissão para excluir a Solução A agora, pois a Solução B não tem uma dependência da Solução A.
Alteração ativa para remover dependências
Se você quiser remover as dependências para poder excluir as soluções, remova as dependências na camada ativa e, em seguida, exclua a solução.
Opção 1
No ambiente de destino, edite o Componente 2 e remova a dependência do Componente 3 na camada ativa. A exclusão da Solução B é permitida agora. Depois que a Solução B for excluída, a Solução A também poderá ser excluída.
Opção 2
No ambiente de destino, edite o Componente 4 e remova a dependência do Componente 1 na camada ativa. A exclusão da Solução A é permitida agora. Depois que a Solução A for excluída, a Solução B também poderá ser excluída.