在 Microsoft Dynamics 365 中显示外部申请表

Display external application forms within Microsoft Dynamics 365

我们有自己的系统,需要与 MS Dynamics 集成 365.For 示例:在帐户部分,我们需要添加一个额外的选项卡来加载 IFrame 或从我们的系统中检索一些额外信息的东西。

以下是我得到的东西:

有没有人做过类似的事情?

谢谢

你一定可以的, 这是我刚刚尝试使用我的一个 Trail 实例的方法。

我根据需要添加了新标签,我称之为"HTML Page"

在这个选项卡上我添加了Webresource,你也可以添加Iframe并调用你的外部网页。 对于我的简单用例,我在 CRM 中创建了一个简单的 HTML 页面作为 Web 资源,并将其配置到 Web 资源选项卡,如下所示

HTML 的示例代码。不要担心长 html 文件。大多数情况下是 bla bla。我们重要的是 <body onload="myFunction()"> 然后是

<script>
function myFunction() {
debugger;  
  alert("Account Id when from fromcontext is ");
  alert(parent.Xrm.getformContext().data.entity.getId());
}
</script>

完成下面的HTML代码

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
  <title>My first styled page</title>
</head>

<body onload="myFunction()">

<!-- Site navigation menu -->
<ul class="navbar">
  <li><a href="index.html">Home page</a>
  <li><a href="musings.html">Musings</a>
  <li><a href="town.html">My town</a>
  <li><a href="links.html">Links</a>
</ul>

<!-- Main content -->
<h1>My first styled page</h1>

<p>Welcome to my styled page!

<p>It lacks images, but at least it has style.
And it has links, even if they don't go
anywhere&hellip;

<p>There should be more here, but I don't know
what yet.

<!-- Sign and date the page, it's only polite! -->
<address>Made 5 April 2004<br>
  by myself.</address>

<script>
function myFunction() {
debugger;  
  alert("Account Id when from fromcontext is ", parent.Xrm.getformContext().data.entity.getId());

}
</script>

</body>
</html>

我还在帐户的表单加载中添加了额外的 Javascript。此 javascript 将创建可从您的网络资源调用的全局变量。 文章 Link 额外 Javascript

下面Javascript使用的示例代码

formContext=null;

function onload(executionContext){
debugger;
var formContext = executionContext.getFormContext();

Xrm.getformContext = function (){
return formContext;
};

Xrm.getParentAttribute = function (attrName) {
            debugger;
            return formContext.getAttribute(attrName);
        };


        Xrm.getParentControl = function (attrName) {
            debugger;
            return formContext.getControl(attrName);
        };
}

最终结果如下所示

总结:

  1. 创建Wberesource/Iframe
  2. 加载时创建 Additiona Js
  3. 在您的网络资源中使用全局变量。