2016-03-05 79 views
4




我注意到由CRM自动创建的//FormXml/forms/systemform/form/Navigation/NavBar/NavBarItem(导航栏条目)在FormXml中丢失。如果您自定义这些导航项目,它们就会出现在那里,例如:更改标签或删除/添加相同的项目。

有没有人知道是否有办法找到那些“失踪”导航项目,而无需对其定制?

我正在做一个解析FormXml的控制台应用程序(C#)

我在CRM 2015和2016中对其进行了测试,如果出现相同的行为,则不确定早期版本。 有趣,从那里Xrm.Page.ui.navigation得到那些“失踪”项目?在FormXml中缺少NavBarItems - Microsoft Dynamics CRM

回答

3

您正在看到一个delta,仅包含CRM组织的默认(托管)状态与您的自定义之间的差异。

如何显示导航栏项目主要由1:n关系设置控制。这些都是关系形式,部分“导航窗格项目的主要实体”的配置:

  • 显示名称(设置显示选项和自定义标签)
  • 位置(显示区域和显示顺序)

在customization.xml文件,你可以找到在EntityRelationshipRoles节点这些设置(路径为ImportExportXml/EntityRelationships/EntityRelationship/EntityRelationshipRoles

的EntityRelationships一直陪伴这包括在customizations.xm实体湖

+0

谢谢你的回答,我已经开始在等待任何回应时看待关系,是的,我的想法和你所描述的一样。这种方法的问题出现在你查看诸如Connections,Audit History,Closed Activities等导航条目时,它们似乎是“硬编码”的......即使这些条目的id包含一个单词'hardcoded'。或者我错了,有一个逻辑算法? – Alex

+0

你说得对,某些内置关系不在customizations.xml中,所以你可能需要考虑相应的Entity属性来重构整个图片。 –

+0

是的,几乎所有事情都很清楚:我需要看看1:N和N:N关系以及实体设置。只有一件有趣的事情,我没有为我的实体启用“审计”,但仍显示“审计历史”项目(至少在CRM 2016中)。 – Alex