簡體   English   中英

如何使用 Dynamics 365 的保存和路由按鈕?

[英]How can I work with save and route button Dynamics 365?

我需要在保存和分配(路由)之前驗證 Dynamics 365 中是否存在一些注釋,問題是 fetch 會異步,save 會同步……我知道現在 Microsft 建議使用異步,那么可行的解決方案是什么? 可以取消和調用保存,但是如何取消和調用按鈕保存和路由? 或類似的東西做這個異步?

我嘗試了很多類似的東西,但它不起作用。

是否有一些 AddChange 到 Notes(鏈接到實體)?

通常,我們將使用preventDefault()取消Save事件,完成所需的步驟並重新發出Save ,如此處討論的那樣

在您的場景中,特殊的Save & Route按鈕實現了Save & Route Apply Routing Rule操作。 此序列沒有使用getSaveMode進行攔截和重新發布的保存模式。 參考

但是您可以使用功能區工作台嘗試自定義保存和路由按鈕並調用自定義 Javascript 操作來執行以下操作:

  1. 使用 fetchXML/web api 驗證您的Notes記錄檢查
  2. 保存記錄
  3. 使用 webapi 調用ApplyRoutingRule操作閱讀更多

不要忘記Xrm.WebApi始終是異步的,您必須在成功回調中執行調用鏈或使用XMLHttpRequest進行同步模式。 閱讀更多

更新:我在 CRM REST Builder 的幫助下編寫了這個片段,試試吧。

var parameters = {};
var target = {};
target.incidentid = "00000000-0000-0000-0000-000000000000"; 
target["@odata.type"] = "Microsoft.Dynamics.CRM.incident";
parameters.Target = target;

var applyRoutingRuleRequest = {
    Target: parameters.Target,

    getMetadata: function() {
        return {
            boundParameter: null,
            parameterTypes: {
                "Target": {
                    "typeName": "mscrm.crmbaseentity",
                    "structuralProperty": 5
                }
            },
            operationType: 0,
            operationName: "ApplyRoutingRule"
        };
    }
};

Xrm.WebApi.online.execute(applyRoutingRuleRequest).then(
    function success(result) {
        if (result.ok) {
            //Success - No Return Data - Do Something
        }
    },
    function(error) {
        Xrm.Utility.alertDialog(error.message);
    }
);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM