Er is een fout opgetreden bij het berekenen van afhankelijkheden voor dit onderdeel. Fout ontbrekende onderdeel-id [GUID] treedt op bij het importeren van een oplossing in Microsoft Dynamics 365

Dit artikel biedt een oplossing voor een fout die optreedt wanneer u een oplossing probeert te importeren in Microsoft Dynamics 365.

Van toepassing op: Microsoft Dynamics 365
Origineel KB-nummer: 4463283

Symptomen

Wanneer u probeert een oplossing te importeren in Dynamics 365, ontvangt u de volgende fout:

"Het importeren van oplossing: [naam oplossing] is mislukt"

Mogelijk ziet u ook een verwijzing naar foutcode 8004F036. Als u de kolom Detail in het raster bekijkt, ziet u een bericht zoals:

'Er is een fout opgetreden bij het berekenen van afhankelijkheden voor dit onderdeel. Ontbrekende onderdeel-id [GUID]"

Als u Logboekbestand downloaden selecteert en het tabblad Onderdelen in Excel bekijkt, ziet u een bericht zoals:

"Het afhankelijke onderdeel SystemForm (Id=[GUID 1]) bestaat niet. Fout bij het koppelen aan SystemForm (Id=[GUID 2]) als een afhankelijkheid. Zoektype voor afhankelijkheid ontbreekt = PrimaryKeyLookup."

Oorzaak

Deze fout kan optreden als de oplossing die u importeert een onderdeel bevat dat afhankelijk is van een ander onderdeel, maar dat afhankelijke onderdeel zich niet in de oplossing bevindt die u importeert en niet bestaat in de doelorganisatie.

Voorbeeld: u hebt een oplossing uit uw ontwikkelomgeving geëxporteerd en geprobeerd deze te importeren in uw productieomgeving. Als de oplossing een onderdeel bevat (bijvoorbeeld een systeemformulier) dat verwijst naar een ander afhankelijk onderdeel (bijvoorbeeld een weergave of een ander systeemformulier), treedt deze fout op als dat afhankelijke onderdeel zich niet in de oplossing bevindt en niet in de doelorganisatie.

De fout geeft aan dat het vereiste afhankelijke onderdeel met een id van [GUID 1] niet bestaat in de oplossing of de doelorganisatie. Het importproces van de oplossing probeert dit onderdeel als onderliggende afhankelijkheid te koppelen aan een bestaand onderdeel [GUID 2]. Omdat onderdeel [GUID 1] niet bestaat, kan de koppeling niet worden gemaakt.

Een andere mogelijke oorzaak

Als u dit type fout en de sjabloon met detailsverwijzing ontvangt als het afhankelijke onderdeel, kan dit gebeuren als de sjabloon is ontwikkeld met behulp van een taal die niet is ingeschakeld in de omgeving waarin de oplossing wordt geïmporteerd. Bijvoorbeeld: als een sjabloon in het Engels is gemaakt, maar de Engelse taal niet is ingeschakeld in de omgeving waarin u de oplossing importeert, kan dit een andere oorzaak van deze fout zijn. Als u andere talen wilt inschakelen, gaat u naar Instellingen, selecteert u Beheer en selecteert u vervolgens Talen.

Oplossing

Gebruik een van de volgende opties om dit probleem op te lossen:

  1. Voeg het ontbrekende onderdeel toe aan de doelorganisatie:
    Voeg het ontbrekende onderdeel toe aan de doelorganisatie met een oplossingsimport.
  2. Voeg het ontbrekende onderdeel toe aan de oplossing:
    Als het onderdeel zich in de bronorganisatie bevindt, moet u ervoor zorgen dat de oplossing dit onderdeel bevat wanneer het wordt gemaakt.
  3. Verwijder de afhankelijkheid van het onderdeel:
    Als het ontbrekende onderdeel niet vereist is in de doelorganisatie, verwijdert u het onderdeel in de bron en maakt u de oplossing opnieuw.

Als u niet zeker weet welk onderdeel ontbreekt, voert u de volgende stappen uit:

  1. Pak de oplossing uit .zip bestand.

  2. Open het bestand solution.xml.

  3. Kopieer de GUID 1-waarde uit de foutdetails en zoek deze waarde in het solution.xml-bestand. Mogelijk vindt u een sectie in de XML zoals in het volgende voorbeeld:

    <MissingDependency>
    
    <Required key="591" type="60" displayName="[Component Name 1]" parentDisplayName="[Parent Entity]" solution="[Solution Name]" id="[GUID 1]" />
    
    <Dependent key="34" type="60" displayName="[Component Name 2]" parentDisplayName="[Child Entity]" id="[GUID 2]" />
    
    </MissingDependency>
    

    De XML die hierboven wordt weergegeven, geeft aan dat de oplossing een afhankelijk onderdeel met de naam [Componentnaam 1] met de id [GUID 1] mist. Omdat dit onderdeel niet in deze oplossing bestaat, moet het bestaan in de doelorganisatie om te kunnen worden geïmporteerd.

Voorbeeldoplossing

Voorbeeldfout:

"Het afhankelijke onderdeel SystemForm (Id=2e28cc31-d344-412d-b393-3e108b23363a) bestaat niet. Fout bij het koppelen aan SystemForm (Id=6d2cf5e0-c3bd-40fb-9842-b5c67409e23b) als een afhankelijkheid. Zoektype voor afhankelijkheid ontbreekt = PrimaryKeyLookup."

Open het bestand solution.xml en zoek naar 2e28cc31-d344-412d-b393-3e108b23363a. Vervolgens vindt u de volgende XML:

<MissingDependency>

<Required key="4" type="60" displayName="Example Dependency" parentDisplayName="Parent" solution="Active" id="{2e28cc31-d344-412d-b393-3e108b23363a}" />

<Dependent key="5" type="60" displayName="Information" parentDisplayName="Child" id="{6d2cf5e0-c3bd-40fb-9842-b5c67409e23b}" />

</MissingDependency>

In het bovenstaande voorbeeld ontbreekt het snelle weergaveformulier met de naam Voorbeeldafhankelijkheid. Dit is een onderdeel van de entiteit met de naam Bovenliggende entiteit. De entiteit met de naam Onderliggend bevat een formulier met de naam Informatie. Het formulier Informatie is afhankelijk van het formulier Snelle weergave voorbeeldafhankelijkheid . De volgende oplossingen zijn dus beschikbaar:

  1. Importeer een andere oplossing in de doelorganisatie met het formulier Snelle weergave voorbeeldafhankelijkheid voor bovenliggende entiteit voordat u deze oplossing probeert te importeren.
  2. Zorg ervoor dat het snelle weergaveformulier voor voorbeeldafhankelijkheid is opgenomen in deze oplossing, waarvoor mogelijk de bovenliggende entiteit en de vereiste onderdelen moeten worden opgenomen.
  3. Verwijder de formulierafhankelijkheid snelle weergave voorbeeld van afhankelijkheid uit het formulier Informatie van de onderliggende entiteit in de bronorganisatie en maak de oplossing opnieuw.