自定义 Web 资源缺少功能区 CRM 2016 问题
Posted
技术标签:
【中文标题】自定义 Web 资源缺少功能区 CRM 2016 问题【英文标题】:Missing ribbon on custom web resources CRM 2016 issue 【发布时间】:2017-01-19 15:20:32 【问题描述】:我们在 CRM 2016 SP1 中遇到了奇怪的行为。 当我们在完整 url 的帮助下打开某个实体,然后转到自定义 web 资源页面(通过站点地图(web 资源、url 等)添加)时,我们的功能区突然消失了。请观看下面的 GIF。
你有什么解决办法吗?
更新
引入GIF的结果状态如下:
更新 2
站点地图自定义部分(Id="nav_pipeline" 的子区域):
<SiteMap IntroducedVersion="7.0.0.0">
<Area Id="SFA" ResourceId="Area_Sales" DescriptionResourceId="Sales_Description" Icon="/_imgs/sales_24x24.gif" ShowGroups="true" IntroducedVersion="7.0.0.0">
<Group Id="MyWork" ResourceId="Group_MyWork" DescriptionResourceId="My_Work_Description" ToolTipResourseId="My_Work_ToolTip" IntroducedVersion="7.0.0.0">
<SubArea Id="nav_dashboards" ResourceId="Homepage_Dashboards" DescriptionResourceId="Dashboards_Description" ToolTipResourseId="Dashboards_ToolTip" Icon="/_imgs/area/18_home.gif" Url="/workplace/home_dashboards.aspx" GetStartedPanePath="Dashboards_Web_User_Visor.html" GetStartedPanePathAdmin="Dashboards_Web_Admin_Visor.html" GetStartedPanePathOutlook="Dashboards_Outlook_User_Visor.html" GetStartedPanePathAdminOutlook="Dashboards_Outlook_Admin_Visor.html" DefaultDashboard="2701de60-8f2a-48a4-8262-4a35ca7441fa" IntroducedVersion="7.0.0.0" />
<SubArea Id="nav_personalwall" ResourceId="Whats_New_Label" DescriptionResourceId="Whats_New_Description" ToolTipResourseId="Whats_New_ToolTip" Icon="$webresource:msdyn_/Images/Wall_16.png" OutlookShortcutIcon="$webresource:msdyn_/Images/Wall_16.png" AvailableOffline="false" Url="$webresource:msdyn_/PersonalWall.htm?data=HideUserProfile%3D0" GetStartedPanePath="Dashboards_Web_User_Visor.html" GetStartedPanePathAdmin="Dashboards_Web_Admin_Visor.html" GetStartedPanePathOutlook="Dashboards_Outlook_User_Visor.html" GetStartedPanePathAdminOutlook="Dashboards_Outlook_Admin_Visor.html" IntroducedVersion="7.0.0.0">
<Privilege Entity="post" Privilege="Read" />
</SubArea>
<SubArea Id="nav_activities" DescriptionResourceId="Activities_SubArea_Description" ToolTipResourseId="Activities_SubArea_ToolTip" Url="/_root/homepage.aspx?etc=4200" Entity="activitypointer" GetStartedPanePath="Activities_Web_User_Visor.html" GetStartedPanePathAdmin="Activities_Web_Admin_Visor.html" GetStartedPanePathOutlook="Activities_Outlook_User_Visor.html" GetStartedPanePathAdminOutlook="Activities_Outlook_Admin_Visor.html" IntroducedVersion="7.0.0.0" />
<SubArea Icon="$webresource:msdyn_/Images/likeIcon.png" Id="nav_pipeline" Url="$webresource:msdyn_/FirstRunContent.1033.htm" Description="Pipeline View" Title="Pipeline" AvailableOffline="false" PassParams="false" Client="Web" />
</Group>
...
</Area>
</SiteMap>
【问题讨论】:
您的站点地图配置是什么? @JamesWood,站点地图没有改变,除了带有自定义网络资源的部分(见更新 2) 【参考方案1】:可能是以错误的方式理解某些内容,但请查看我从您的示例中截取的屏幕截图。我很确定丝带还在:
【讨论】:
不,你误会了,你得到的是 gif 的起始截图,而不是最后一张。 我没有遇到过此类问题,但我建议您在执行此操作时打开调试器并加载您的网络资源。您可能会在分析器中看到出现问题。 不幸的是,网络和控制台都没有错误,并且成功访问了网络资源。您能否告诉我,您如何尝试重现此问题?也许也作为一个gif?每次我们在“弹出”按钮的帮助下打开记录,然后使用自定义网络资源转到站点地图按钮时,它都会在我们的 crm 2015 和全新的 crm 2016 中重现。 我的意思是自 2011 年以来我没有将网络资源嵌入到 CRM 站点地图中。这就是为什么我没有遇到过此类问题。【参考方案2】:只是猜测,因为这个问题应该仔细调试,但似乎你正在将网络资源加载到错误的目标。
子功能区和内容可能位于不同的 iFrame 中,并且托管在另一个 iFrame 中,默认情况下会在其中加载您的 Web 资源。为避免这种情况,您需要显式加载内容的 iFrame。很可能应该通过设置target
HTML 属性来实现。
【讨论】:
以上是关于自定义 Web 资源缺少功能区 CRM 2016 问题的主要内容,如果未能解决你的问题,请参考以下文章
Dynamics CRM 2015/2016 Web API:基于视图的数据查询
Dynamics CRM 2015/2016 Web API:基于视图的数据查询
Dynamics CRM 2016 Word Template Feature