您可以用這種方式打開CRM形式:
function OpenForm()
{
var parameters = {};
var id = GetFormId("account", "FormName");
parameters["formid"] = id;
Xrm.Utility.openEntityForm("account", null, parameters);
}
function GetFormId(formEntity, formName) {
var serverUrl = Xrm.Page.context.getServerUrl();
var oDataEndpointUrl = serverUrl + "/XRMServices/2011/OrganizationData.svc/";
oDataEndpointUrl += "SystemFormSet?$top=1&$filter=ObjectTypeCode eq '" + formEntity + "' and Name eq '" + formName + "'";
var service = new window.XMLHttpRequest;
var id;
if (service != null) {
service.open("GET", oDataEndpointUrl, false);
service.setRequestHeader("X-Requested-Width", "XMLHttpRequest");
service.setRequestHeader("Accept", "application/json, text/javascript, */*");
service.send(null);
var requestResults = eval('(' + service.responseText + ')').d;
if (requestResults != null && requestResults.results.length == 1) {
var rec = requestResults.results[0];
id = rec.FormId;
}
}
return id;
}
取決於您所呼叫從SharePoint表單的方式你可以調用你需要的表單,並從CRM中以本地方式處理。
謝謝你的見解。這個解決方案的確是我們想要這樣做的方式。但是,由於它並沒有得到真正的支持,所以我認爲最好只保留它。 – Dafalgor 2015-05-26 11:09:34
我不會說它不被支持......但它至少是一個灰色區域。感謝你的回答! – Nathan 2017-11-29 08:04:59