Dynamics CRM 在表單上顯示更改歷史記錄(稽核歷史記錄)

salabook發表於2021-03-29

前言

雖然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&amp;inlineEdit=1&amp;navItemName=Audit%20History&amp;oId=%7b3877A32E-EA20-E911-A952-000D3A34E213%7d&amp;oType=10270&amp;pagemode=iframe&amp;rof=true&amp;security=852023&amp;tabSet=areaAudit&amp;theme=Outlook15White" id="areaAuditFrame" name="areaAuditFrame" scrolling="auto" isarea="1" frameborder="0" style="width: 100%; height: 100%"></iframe>-->
</body>
</html>

結果

謝謝觀看!

我真誠的記錄著,因為覺得生活值得。 I record sincerely, because I think life is worth living .

相關文章