Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dynamics crm 导出中不包括属性映射(在N:1关系上)?_Dynamics Crm_Dynamics Crm 2015 - Fatal编程技术网

Dynamics crm 导出中不包括属性映射(在N:1关系上)?

Dynamics crm 导出中不包括属性映射(在N:1关系上)?,dynamics-crm,dynamics-crm-2015,Dynamics Crm,Dynamics Crm 2015,MS CRM 2015允许您在实体之间的关系上指定属性映射。 例如,对于下面显示的“联系人\客户\帐户”关系,它定义了当通过帐户的“相关联系人”视图添加新联系人时,应将帐户中的哪些属性复制到联系人 但是,当我更改这样的映射(并发布所有自定义设置)时,它不会作为我的解决方案(或默认解决方案)的一部分导出。 当我比较映射更改前后的customizations.xml文件时,它们(对于相关部分)是完全相同的-这些信息似乎不属于导出的一部分 我还发现了,它似乎也没有提到任何关于属性映射的内容 我认为这些

MS CRM 2015允许您在实体之间的关系上指定属性映射。 例如,对于下面显示的“联系人\客户\帐户”关系,它定义了当通过帐户的“相关联系人”视图添加新联系人时,应将帐户中的哪些属性复制到联系人

但是,当我更改这样的映射(并发布所有自定义设置)时,它不会作为我的解决方案(或默认解决方案)的一部分导出。 当我比较映射更改前后的customizations.xml文件时,它们(对于相关部分)是完全相同的-这些信息似乎不属于导出的一部分

我还发现了,它似乎也没有提到任何关于属性映射的内容

我认为这些信息应该是解决方案导出的一部分——有人知道为什么不是这样吗

更新:我在我的组织中导入了我的解决方案(包括帐户和联系人),并已发布。然后从“contact_customer_accounts”关系中删除一半映射并再次发布。最后导入了相同的解决方案并再次发布:删除的映射没有返回


因此,我认为可以肯定地说,该解决方案不包含映射信息。

正如Joseph Duty所指出的,属性映射存储在customizations.xml文件中的
ImportExportXml/EntityMaps
(请参阅关于如何使用它们的说明)。 但是,导出解决方案时,它们似乎不包含任何“系统”关系,只包含至少一个实体是自定义实体的关系。所以这可能就是为什么我的映射更改没有在解决方案导出中结束的原因

好消息是,您可以手动将这样的映射添加到
customizations.xml
文件中,导入时,您将看到映射出现在这些实体之间的所有关系中:

<EntityMaps>
  <EntityMap>
    <EntitySource>account</EntitySource>
    <EntityTarget>contact</EntityTarget>
    <AttributeMaps>
      <AttributeMap>
        <AttributeSource>telephone1</AttributeSource>
        <AttributeTarget>telephone2</AttributeTarget>
      </AttributeMap>
      <AttributeMap>
        <AttributeSource>telephone1</AttributeSource>
        <AttributeTarget>telephone3</AttributeTarget>
      </AttributeMap>
    </AttributeMaps>
  </EntityMap>    

账户
接触
电话1
电话2
电话1
电话3

customizations.xml中删除一个或多个AttributeMap元素不会导致删除相应的映射,但这是使用解决方案时的常规行为。

我还看到了必须同时具有这两个关系的地方,这两个字段都在解决方案中定义了映射,以便导出映射。。。因此,如果实体A具有到B的映射,对于字段A.1到B.1和A.2到B.2,我必须确保关系,以及字段A.1、A.2、B.1和B.2也已添加到解决方案中,否则它们不会被导出

更新
经过进一步测试后,为了在映射导出中包含查找属性,目标属性字段必须包含在解决方案中

这两个实体都在解决方案中吗?@JamesWood:是的,帐户和联系人都在解决方案中。如果您将解决方案导入到另一个环境中,是否包含更改?@JamesWood:好问题,请参阅我更新的帖子。因此,删除源环境中的现有映射,然后将解决方案推入目标环境并没有从目标环境中删除映射?你是这么说的吗?在customizations.xml的EntityMaps和EntityRelationships节点中查找有关mappingsGlad的信息,以获得帮助如果需要多次导出同一解决方案,该怎么办?您会继续手动添加映射吗?这不是正确的方法。见上面Daryl的回答。它永久地解决了这个问题。我参加聚会迟到了,但我为Daryl感到荣幸。完全正确发布问题然后在下面回答的人可能已经找到了一种方法,但这不是正确的方法。在解决方案中包含目标查找字段是正确的答案。