2015-10-05 53 views
3

我們在CRM 2015中有一定的要求,我們需要限制非S/S管理員用戶在業務流程中的向後移動。我通過客戶端API(包括升級1的腳本)迭代,但我沒有找到任何API來實現使用任何公開的方法。因此,最後我通過劫持Business Process Flow的後向移動來編寫自定義代碼,並提示用戶這是非S/S管理員用戶的受限制行爲。但是,這是一個不受支持的更改,只要DOM ID相同(因爲我發現DOM Ids在2013年,2015年和2015年Rollup1中與BPF相同),我認爲這不會成爲問題。限制業務流程中的向後移動(CRM 2015)!

function restrictBPFPreviousMove() { 

    var originalPreviousStageHandler = $("#stageBackActionContainer").data("events")["click"][0].handler; 

    $("#stageBackActionContainer").unbind("click"); 

    $("#stageBackActionContainer").click(function (e) { 

     alert("Restricted Back Move!"); 

    }); 

}

不過,我想知道是否有任何替代方案(支持)這個方法?

回答

4

CRM 2015 has events for stage selection and change that can be handled.

業務流程控制的事件

的Microsoft Dynamics CRM 2015和 的Microsoft Dynamics CRM在線2015年更新提供了與業務流程控制用戶 互動兩個事件。 OnStageChange 當階段改變時發生。更多信息:OnStageChange事件。 OnStageSelected在選擇舞臺時發生。更多信息: OnStageSelected事件。沒有用戶界面來註冊這些 事件的腳本。在以 OnLoad事件形式註冊的函數中使用以下方法來註冊這些事件的函數。

Xrm.Page.data.process.addOnStageChange

Xrm.Page.data.process.addOnStageSelected

Xrm.Page.data.process.removeOnStageChange

Xrm.Page.data.process .removeOnStageSelected

你還需要檢查由手(檢索systemuser用戶的角色,檢索role,混合&匹配)