前言
虽然Dynamics CRM自带的审计很好,但是对于缺乏使用CRM经验的用户来说,自带的UCI界面实在是太隐藏了;
于是乎就出现了需求:想通过在表单上直接看到看审计历史记录;
在网上搜索了很多中方案,但是花费的时间很长,有兴趣的可以去看一看;
- 显示报告中的审计历史记录
Dynamics CRM 2011 Audit Report in SSRS - 记录实体的更改
Livefeed of your CRM actions !
我阅读这两个方案后,觉得它们看起来都很“重”,我正在寻找更“轻”的东西;
下面的做法我觉得很“轻”,如果你有这种需求,也可以尝试使用这种方案:在表单上插入iframe显示审核页面内容;
进入实体记录,点击审核视图
进入控制台,选中审核页面,获取iframe源URL
将获取到的URL构建一个字符串,将使用当前记录的ID更新
通过JavaScript更改表单中iFrame的属性,将当前记录的ID替换为您在上面制作的字符串中
<!DOCTYPE html>
<html style="height: 100%">
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body style="height: 100%">
<script>
var formContext;
window.parent.$(window).on('load', function () {
buildIframeSource();
});
function buildIframeSource() {
var url = window.parent.Xrm.Page.context.getClientUrl();
var recordId = window.parent.Xrm.Page.data.entity.getId().replace("{", "").replace("}", "");
var element = document.getElementById("areaAuditFrame");
element.src = url + "/userdefined/areas.aspx?formid=52078acf-77c4-4e18-86b8-ebffcafc0698&inlineEdit=1&navItemName=Audit%20History&oId=%7b" + recordId + "%7d&oType=10270&pagemode=iframe&rof=true&security=852023&tabSet=areaAudit&theme=Outlook15White";
};
//3877A32E-EA20-E911-A952-000D3A34E213
</script>
<iframe src="" id="areaAuditFrame" name="areaAuditFrame" scrolling="auto" isarea="1" frameborder="0" style="width: 100%; height: 100%"></iframe>
<!--<iframe src="https://trektest.crm.dynamics.com/userdefined/areas.aspx?formid=52078acf-77c4-4e18-86b8-ebffcafc0698&inlineEdit=1&navItemName=Audit%20History&oId=%7b3877A32E-EA20-E911-A952-000D3A34E213%7d&oType=10270&pagemode=iframe&rof=true&security=852023&tabSet=areaAudit&theme=Outlook15White" id="areaAuditFrame" name="areaAuditFrame" scrolling="auto" isarea="1" frameborder="0" style="width: 100%; height: 100%"></iframe>-->
</body>
</html>