Informació general sobre la supressió de dependències

Els components de la solució depenen sovint d'altres components de la solució. No podeu suprimir cap component de la solució que té dependències d'altres components de la solució. Les dependències són registres creats automàticament pel marc de solucions per evitar que se suprimeixin components necessaris mentre un o més components dependents encara hi inclouen referències.

Alguns exemples d'una dependència són, atès que es requereix un camp perquè funcioni un formulari, quan intenteu executar una acció que resulti en la supressió d'aquest camp, el formulari deixarà de funcionar.

Un altre exemple és quan proveu de suprimir el mapa del lloc d'una aplicació basada en models. El sistema indica que hi ha una dependència de l'aplicació. L'aplicació és el component dependent i el mapa del lloc és el component necessari. El sistema us impedeix suprimir el mapa del lloc fins que no suprimiu la dependència.

El sistema detecta una dependència en què l'aplicació depèn del mapa del lloc.

Nota

Suprimeix significa que el component s'ha eliminat completament Microsoft Dataverse.

En aquest article, parlem de com gestionar aquestes dependències i les estratègies que podeu utilitzar per eliminar les dependències que ja no necessiteu.

Dependències de components administrats i no administrats

En primer lloc, és important entendre que les dependències només impedeixen les operacions que suprimeixen un component necessari. Les accions que poden suprimir un component són diferents, en funció de si és administrat o no administrat.

És bo estar familiaritzat amb el concepte de solució i capes de components quan es descriuen dependències. Si no esteu familiaritzats, us recomanem que llegiu aquest article abans de continuar: Capes de solució

Components administrats

Aquests components estan representats per una única capa a la solució activa. Qualsevol operació Suprimeix aplicada en aquests components genera la supressió completa del component.

Components administrats

La supressió dels components administrats depèn de diversos factors: el nombre de capes de la solució, la posició relativa de la capa que s'està desinstal·lant i els editors de components. Per exemple, quan se suprimeix un component, cal tenir en compte les situacions següents i quin serà el comportament esperat en desinstal·lar les diferents capes.

Situacions d'exemple

Les situacions d'exemple següents il·lustren què passa amb les capes de la solució quan es desinstal·len solucions.

Situació 1: Desinstal·lar una única capa de solució

Desinstal·leu amb una sola capa.

La desinstal·lació de la Solució 1 provoca la supressió del component perquè és l'única capa del component.

Situació 2: Desinstal·lar capes de la solució de diferents editors

Desinstal·leu amb dues capes - Editor diferent.

  • La desinstal·lació de la Solució 2 no causa la supressió del component. Només s'elimina aquesta capa.
  • La desinstal·lació de la Solució 1 provoca la supressió del component perquè l'acció es produeix a la capa base. De fet, la Solució 1 no es pot desinstal·lar en aquesta situació, perquè una solució d'un editor diferent amplia el component.

Situació 3: Desinstal·lar diverses capes de la solució de diferents editors

Desinstal·la amb diverses capes - Editor diferent.

  • La desinstal·lació de la Solució 3 no causa la supressió del component. Només s'elimina aquesta capa.
  • La desinstal·lació de la Solució 2 no causa la supressió del component. Només s'elimina aquesta capa.
  • La desinstal·lació de la solució 1 no provoca la supressió d'un component, ja que en aquest cas hi ha una altra solució del mateix editor (Editor A = Editor C). La plataforma suprimeix la capa de la Solució 1 i la substitueix per la capa de la Solució 3.

Situació 4: Desinstal·lar capes de la solució en una personalització no administrada

Desinstal·la amb dues capes - Personalització no administrada.

  • La desinstal·lació de la capa activa (no administrada) no provoca la supressió d'un component. Només s'elimina aquesta capa. Tingueu en compte que no podeu desinstal·lar la solució activa, però podeu suprimir components mitjançant la característica Suprimeix la personalització activa .
  • La desinstal·lació de la Solució 1 causa la supressió del component. L'acció es produeix a la capa base. A diferència de la situació 2, podeu desinstal·lar la Solució 1. La solució activa no es considera una extensió i se suprimeixen les dues capes.

Mostra la pàgina de dependències

L'ordre Mostra les dependències llista les dependències de la solució o component de solució seleccionat. Es pot invocar de les següents maneres:

  • Seleccioneu Mostra les dependències a la pàgina de la solució.
  • Seleccioneu Avançat>Mostra les dependències dins d'una solució quan se selecciona un component de la solució.
  • Intentar desinstal·lar una solució, que fa que la plataforma detecti que hi ha dependències.

Des de la pàgina Dependències podeu obrir, suprimir o suprimir el component. Més informació: Visualització de les dependències d'un component

Diagnosticar dependències

Considereu aquest escenari. L'entorn aquí té dues solucions: Solució - Flux de treball i Solució - Entitat personalitzada.

Llista de solucions amb dues solucions.

Un creador de l'entorn decideix que ja no necessita Solució - Entitat personalitzada. El creador va intentar esborrar-lo i se li va presentar la pàgina següent:

Detalls de dependència després d'intentar suprimir una solució.

La desinstal·lació de la solució està intentant suprimir una taula anomenada Entitat personalitzada i tres camps (Entitat personalitzada, Nom i Camp de número) i els quatre components tenen dependències.

Nota

La desinstal·lació de la solució podria suprimir potencialment més components, però, com que no tenen dependències, no es mostraran a la llista.

El pas següent és comprovar l'enllaç Capes de la solució (columna de la dreta) per a cada dependència. Això us ajuda a decidir què fer per eliminar la dependència.

La figura següent mostra els detalls de dependència entre la taula (entitat personalitzada) i el procés (flux de treball de prova).

Detalls de dependència de la taula personalitzada.

A partir de les dades que es mostren, podeu observar que el component dependent pertany a una solució anomenada SolutionWorkflow. Per suprimir aquesta dependència, podeu fer el següent:

  • Actualitzeu la definició del flux de treball a SolutionWorkflow suprimint les referències a la taula o als seus subcomponents. A continuació, actualitzeu o milloreu la solució.
  • Desinstal·leu la solució SolutionWorkflow.
  • Suprimiu el flux de treball d'una versió nova de la solució SolutionWorkflow i, a continuació, dueu a terme una Actualització.

Com que qualsevol component dependent pot impedir la supressió de la solució, us recomanem que consulteu totes les dependències i feu tots els canvis necessaris en una única operació.

La figura següent mostra els detalls de dependència entre la taula (entitat personalitzada) i una aplicació basada en models (MyApp).

Dependència entre la taula (entitat personalitzada) i l'aplicació (La meva aplicació).

A partir de les dades que es mostren, podeu observar que el component dependent pertany a una solució anomenada Active. Això indica que es va crear la dependència amb la importació d'una solució no administrada o mitjançant una personalització no administrada que es va executar a través d'una API o interfície d'usuari moderna.

Per suprimir aquesta dependència, podeu fer el següent:

  • Editeu la definició de l'aplicació basada en models per suprimir qualsevol referència a l'entitat o els seus subcomponents. Com que les aplicacions basades en models són compatibles amb la publicació, heu de publicar els canvis.
  • Suprimiu l'aplicació basada en models.

Nota

La desinstal·lació d'una solució no administrada no és una opció per suprimir aquesta dependència perquè les solucions no administrades són un mitjà per agrupar els components.

Accions per suprimir una dependència administrada

Les dependències administrades són aquelles en què el component dependent està associat a una solució administrada. Per resoldre aquest tipus de dependència, heu d'actuar sobre la solució on s'ha afegit el component. Aquesta acció pot ser diferent en funció del que proveu de fer.

Si esteu provant de desinstal·lar una solució

Seguiu aquests passos:

  1. A l'entorn de destinació, inspeccioneu l'enllaç Capes de solució per trobar quina és la solució més alta de la llista del component dependent.
  2. A l'entorn d'origen, prepareu una versió nova d'aquesta solució on la solució no contingui el component dependent o tingui una versió actualitzada del component dependent que no contingui referències al component necessari. L'objectiu és suprimir qualsevol referència als components necessaris a la nova versió de la solució.
  3. Exporteu la versió nova de la solució.
  4. A l'entorn de destinació, actualitzeu aquesta solució.
  5. Torneu a provar la desinstal·lació.

Si esteu provant d'actualitzar una solució

En aquest cas, heu de confirmar que voleu suprimir el component necessari (recordeu que les dependències només s'apliquen als components que se suprimeixen).

Si no voleu suprimir el component, podeu corregir la versió nova de la solució. Per fer-ho, feu el següent per tornar a afegir el component:

  1. A l'entorn de destinació, desinstal·leu la solució preparada (la solució que acaba en _Upgrade).
  2. A l'entorn d'origen, torneu a afegir els components necessaris a la solució.
  3. Exporteu la nova versió.
  4. Torneu a provar l'actualització.

Si la supressió és intencionada, heu de suprimir la dependència. Proveu els passos descrits a la secció anterior, si esteu provant de desinstal·lar una solució.

Capes i dependències

Els components dependents poden tenir capes, de manera que pot ser que hagueu de canviar més d'una solució per suprimir per complet una dependència. El marc de dependència calcula només dependències entre les capes superiors dels components necessaris i dependents. Això vol dir que heu d'anar de la part superior fins a la part inferior de les solucions del component dependent.

Tingueu en compte la situació de l'exemple següent:

Triar una solució per desinstal·lar.

Proveu de desinstal·lar Solució: entitat personalitzada i hi ha dependències que impedeixen l'operació.

Dependències que bloquegen la desinstal·lació de la solució.

Per començar a diagnosticar la dependència, seleccioneu Capes de la solució a l'atribut new_numberfield. Observeu la pantalla següent:

Dependència entre l'atribut new_numberfield i el flux de treball del flux de treball de prova.

Com que les dependències es creen només entre les capes superiors de cada component, el primer pas és fer front a la dependència entre l'atribut new_numberfield de SolutionCustomEntity i el flux de treball Flux de treball de prova de SolutionWorkflow3.

Per suprimir la dependència, decidiu desinstal·lar SolutionWorkflow3. Ho feu, però, quan intenteu desinstal·lar una vegada més la solució, us apareix la mateixa pàgina de dependències:

Dependències que bloquegen la desinstal·lació de Solució - Entitat personalitzada.

Tanmateix, la columna new_numberfield ja no apareix a la llista, fins i tot si existia en més capes.

Accions per suprimir una dependència no administrada

Per suprimir dependències no administrades, heu d'actuar directament als components, no a les solucions a les quals pertanyen. Per exemple, si voleu suprimir les dependències entre una columna i un formulari, heu d'editar-lo al dissenyador de formularis i suprimir la columna del formulari. La dependència se suprimeix després de seleccionar Desa i publica.

Nota

  • L'ordre Mostra les dependències us permet dur a terme accions per visualitzar, suprimir la dependència, editar el component o suprimir el component. Més informació: Visualització de les dependències d'un component
  • El botó Visualitza dependències apareix quan intenteu suprimir un component que té dependències. Tot i que aquesta pantalla us permet veure la dependència, no us permet fer accions.
  • Quan suprimiu el component dependent, l'acció suprimeix totes les dependències, juntament amb el component.

Per visualitzar les dependències d'un component, des de l'àrea Solucions , obriu la solució que vulgueu, seleccioneu els punts suspensius verticals al costat del component i, a continuació, seleccioneu Mostra les dependències avançades>.

La pàgina de dependències té dues parts diferenciades:

  • Components dependents: llista de components que depenen de la columna seleccionada. En altres paraules, aquests components tenen aquesta columna com a component obligatori.
  • Components necessaris: una llista de components que aquesta columna necessita per funcionar. En altres paraules, aquests components tenen aquesta columna com a component dependent.

Dependències dels components.

Passos següents