我在我的功能區上有一個自定義按鈕,可以啓動對話框。這是我將放在一起的解決方案資格認證解決方案的一部分。Dynamics CRM 2016在線 - 使用對話框後刷新記錄
創建帳戶/聯繫人/機會和給出的選擇正常工作,以及將潛在客戶的狀態更改爲合格。問題是,當用戶完成對話並關閉它時,他們仍然在查看處於其原始狀態的Lead。
如何強制窗體刷新以顯示其新狀態?
我已經看到一個Javascript解決方案在線(codeplex),Process.js - callDialog()這看起來很受歡迎,但它不想按照創建者對我的CRM版本所述的方式工作 - 總是會得到一個無效的URL錯誤消息&它會在表單加載時以及使用自定義按鈕時觸發。
有沒有人遇到過這樣的需求,你是如何解決它的?
謝謝
編輯:這裏是我在我的絲帶按鈕目前使用的JS。我在哪裏放置刷新呼叫,以及在關閉對話框時,我該如何調用正在使用的事件。 我試着在這段代碼的底部添加一個刷新調用,但是它的調用在開始時打開對話框,這並沒有多大用處,因爲我希望看到的更改應用於整個對話框本身。 感謝
Develop1_RibbonCommands_runDialogForm = function(objectTypeCode, dialogId) {
var primaryEntityId = Xrm.Page.data.entity.getId();
var rundialog = Mscrm.CrmUri.create('/cs/dialog/rundialog.aspx');
rundialog.get_query()['DialogId'] = dialogId;
rundialog.get_query()['ObjectId'] = primaryEntityId;
rundialog.get_query()['EntityName'] = objectTypeCode;
var hostWindow = window;
if (typeof(openStdWin) == 'undefined') {
hostWindow = window.parent; // Support for Turbo-forms in CRM2015 Update 1
}
if (typeof(hostWindow.openStdWin) != 'undefined') {
hostWindow.openStdDlgWithCallback(rundialog, hostWindow.buildWinName(null), 615, 480, Xrm.Page.data.refresh(false));
}
}
})();
嗨alex,你可以寫爲功能區按鈕的JavaScript。你只需要使用javascript運行對話框並使用下面的代碼來刷新表單'Xrm.Utility.openEntityForm(Xrm.Page.data.entity.getEntityName(),Xrm.Page.data.entity.getId());' – Nachiket