Error al importar AttributeMap en Microsoft Dynamics 365
En este artículo se proporciona una solución a un error que se produce al importar AttributeMap en Microsoft Dynamics 365.
Se aplica a: Microsoft Dynamics 365 Customer Engagement Online
Número de KB original: 4494576
Síntomas
Al intentar importar una solución en Dynamics 365, recibe el siguiente error:
"Error en la importación de la solución: [nombre de la solución].
Código de error 8004f016"
La cuadrícula del cuadro de diálogo de error incluye una fila de Tipo = Asignaciones. El texto de detalle que se muestra para esta fila es el siguiente mensaje:
"Una solución administrada no puede sobrescribir un componente AttributeMap en el sistema de destino que tiene una instancia base no administrada. El escenario más probable para este error es que una solución no administrada ha instalado un nuevo componente AttributeMap no administrado en el sistema de destino y ahora una solución administrada del mismo publicador está intentando instalar ese mismo componente AttributeMap como administrado. Esto provocará una agrupación en capas no válida de soluciones en el sistema de destino y no se permite".
Descargue el archivo de registro XML y ábralo en Excel. En la pestaña Componentes , busque la celda: 0x8004F016.
En la columna siguiente se mostrará un mensaje de error que incluye el identificador del componente:
"Una solución administrada no puede sobrescribir el componente AttributeMap con Id= [id. de componente] que tiene una instancia base no administrada. El escenario más probable para este error es que una solución no administrada ha instalado un nuevo componente AttributeMap no administrado en el sistema de destino y ahora una solución administrada del mismo publicador está intentando instalar ese mismo componente AttributeMap como administrado. Esto provocará una agrupación en capas no válida de soluciones en el sistema de destino y no se permite".
Causa
Como se mencionó en los detalles del error, el escenario más probable para este error es que se haya realizado una personalización no administrada en la solución predeterminada de la organización de destino. Lo que provocará una agrupación en capas no válida de soluciones en el sistema de destino y no se permite.
Ejemplo: la instancia de Dynamics 365 ya tiene un componente como un AttributeMap personalizado que se creó editando la solución predeterminada. Si más adelante intenta importar una solución con ese mismo AttributeMap (componente) como solución administrada, recibirá este error.
Solución
Para AttributeMap, el componente administrado se puede encontrar con dos consultas de API web y, a continuación, eliminarse en el destino:
Abra un explorador en su organización y, a continuación, duplique la pestaña.
Reemplace por
[GUID from Error]
el GUID del mensaje de error del archivo de registro y, a continuación, anexe a su organización:api/data/v9.1/attributemaps([GUID from Error])?$select=_entitymapid_value,sourceattributename, targetattributename
Ejemplo:
https://MyOrganization.crm11.dynamics.com/api/data/v9.1/attributemaps(0a7bb84f-3d3c-e911-a977-0022480187f0)?$select=_entitymapid_value,sourceattributename,targetattributename
Ahí está la salida:
{ "@odata.context": "https://MyOrganization.crm11.dynamics.com/api/data/v9.1/$metadata#attributemaps(_entitymapid_value,sourceattributename,targetattributename)/$entity", "@odata.etag": "W/"5299006"", "_entitymapid_value": "1172d7cc-3c3c-e911-a977-0022480187f0", "sourceattributename": "css_mapfieldparent", "targetattributename": "css_mapfieldchild", "attributemapid": "0a7bb84f-3d3c-e911-a977-0022480187f0", "_organizationid_value": "112f329f-0a5f-4e2c-a2f0-c54e4824faa9" }
Reemplace por
[_entitymapid_value]
el valor de la primera consulta y, a continuación, anexe la organización:api/data/v9.1/entitymaps([_entitymapid_value])?select=sourceentityname,targetentityname
Ejemplo:
https://MyOrganization.crm11.dynamics.com/api/data/v9.1/api/data/v9.1/entitymaps(1172d7cc-3c3c-e911-a977-0022480187f0)?select=sourceentityname,targetentityname
Ahí está la salida:
{ "@odata.context": "https://emeacrm3.crm11.dynamics.com/api/data/v9.1/$metadata#entitymaps(sourceentityname,targetentityname)/$entity", "@odata.etag": "W/"5296276"", "sourceentityname": "css_testamparent", "targetentityname": "css_testamchild", "entitymapid": "1172d7cc-3c3c-e911-a977-0022480187f0", "_organizationid_value": "112f329f-0a5f-4e2c-a2f0-c54e4824faa9" }
Use la información recuperada de las dos consultas para identificar AttributeMap:
sourceentityname
:css_testamparent
,
sourceattributename
:css_mapfieldparent
,
targetentityname
:css_testamchild
,
targetattributename
:css_mapfieldchild
,Un AttributeMap no puede existir sin .
1:N relationship
Busque el ejemplo siguiente en la organización de destino:1:N relación de [sourceentityname] ->[targetentityname] basada en campos [sourceattributename] ->[targetattributename]
Busque este componente en la organización de destino; para ello, vaya a Configuración, Personalizaciones y Personalización del sistema.
Seleccione Entidades y, a continuación, Abra [sourceentityname].
Seleccione 1:N Relaciones.
Ordene por entidad relacionada y abra la relación a [targetentityname].
Seleccione Asignaciones a la izquierda.
Quite la asignación con:
Nombre de origen: [sourceattributename]
Nombre de destino: [targetattributename]Intente volver a importar la solución.