【问题标题】:Open a CRM Entity from a Web Resource从 Web 资源打开 CRM 实体
【发布时间】:2019-12-23 23:17:56
【问题描述】:

我有一个运行良好的 Web 资源,除了一个大问题。

我需要能够单击链接并打开现有实体记录。这两种方法都几乎可以让我到达那里,但由于不同的原因被阻止:

1.直接用这样的链接调用它:

window.open('http://OurCRM/main.aspx?etc=10088&id=%7bc1d0db62-aa9e-e911-80e0-0a94ef08472f%7d&pagetype=entityrecord', '_self');

这个问题是因为CRM说它不起作用

“Sys.InvalidOperationException: Sys.InvalidOperationException: Service Xrm.Interfaces.Services.IMostRecentlyViewedService 已经有一个实现”

注意:如果我取出“_self”,它会起作用,但这违背了我们试图做的事情的目的(需要将其保留在同一个选项卡中)。

2. 使用客户端 API:

parent.Xrm.Utility.openEntityForm('ourentity', guid, '', '');

由于浏览器阻止了跨域框架,此框架被阻止。

有人知道怎么做吗?

【问题讨论】:

  • 您可以接受自己的答案并关闭该主题。顺便说一句,如果其他答案对您有帮助,您可以投票赞成..
  • 也关闭这个话题 - stackoverflow.com/q/59572835/7920473

标签: scripting cross-browser dynamics-crm microsoft-dynamics dynamics-crm-2016


【解决方案1】:

下面的 sn-p 应该可以工作:(这将是按钮或链接的 onclick

onclick="window.location.href='http://OurCRM/main.aspx?etc=10088&id=%7bc1d0db62-aa9e-e911-80e0-0a94ef08472f%7d&pagetype=entityrecord';"

【讨论】:

  • :-( ...再次得到这个:“未捕获的 Sys.InvalidOperationException: Sys.InvalidOperationException: Service Xrm.Interfaces.Services.IMostRecentlyViewedService 已经有一个实现”
  • @RodneyEllis 我从来没有遇到过这个问题。您使用的是哪个 CRM 版本?在线?
  • Microsoft Dynamics® CRM 2016 (8.0.0.1088) (DB 8.0.0.1088) 感谢您的帮助。
  • @RodneyEllis:github.com/MscrmTools/XrmToolBox/issues/151 说无效的 crm 组织 url 是罪魁祸首。网址直接在浏览器中工作?还要验证任何站点地图或功能区是否存在相同的 url 硬编码问题
  • 是的,当我在浏览器中复制/粘贴 URL 时,一切正常。只有从代码中调用它时,我才会收到错误消息。我刚刚读过那篇文章,但我现在比以前更困惑。这是站点地图编辑器上的 URL:ausyddev01/crm/Pages/Events/EventRequests.aspx - 在此事件请求网络表单中,我们从 CRM 填充了一些 asp 对象,然后是我们想要重定向到 crm 实体的按钮。一切正常,除了最后一个按钮。
【解决方案2】:

为了帮助别人,这在另一个类似的问题中得到了解决

accessing the logged in CRM user from custom page

基本上,我们正在寻找两种不同的方法来处理在 CRM 中使用网络表单的相同问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-14
    • 1970-01-01
    • 2014-04-16
    • 1970-01-01
    • 2018-12-18
    • 1970-01-01
    相关资源
    最近更新 更多