Ich habe eine Menüband-Schaltfläche, eine leere Aktion (Prozess) und ein Plug-in erstellt. Ich rufe die Aktion (JavaScript) über die Multifunktionsleisten-Schaltfläche auf, die das Plug-In mithilfe der benutzerdefinierten Nachricht auslösen muss. Ich kann die Aktion mit dem Soap-Anruf aufrufen, aber es löst nicht das Plug-In aus, das für diese benutzerdefinierte Nachricht registriert wurde. Ich habe am unteren Rand der Hilfsmethode einen Alarm eingefügt, der erfolgreich ausgelöst wird, aber das Plug-in kann nicht ausgelöst werden. Jede Hilfe ist willkommen ....Plug-in, das auf der benutzerdefinierten Nachricht nicht ausgelöst wird, die mit Aktionen in CRM 2016 erstellt wurde
function SendIOButtonActionCall() {
var entityId = Xrm.Page.data.entity.getId();
var entityName = Xrm.Page.data.entity.getEntityName();
var requestName = "vm_SendIOButton";
var OpportunityId = String(Xrm.Page.data.entity.getId());
ExecuteAction(entityId, entityName, requestName);
//window.location.reload(true);
}
function ExecuteAction(entityId, entityName, requestName) {
// Creating the request XML for calling the Action
var requestXML = ""
requestXML += "<s:envelope xmlns:s=\"http://schemas.xmlsoap.org/soap/envelope/\">";
requestXML += " <s:body>";
requestXML += " <execute xmlns=\"http://schemas.microsoft.com/xrm/2011/Contracts/Services\" xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\">";
requestXML += " <request xmlns:a=\"http://schemas.microsoft.com/xrm/2011/Contracts\">";
requestXML += " <a:parameters xmlns:b=\"http://schemas.datacontract.org/2004/07/System.Collections.Generic\">";
requestXML += " <a:keyvaluepairofstringanytype>";
requestXML += " <b:key>Target</b:key>";
requestXML += " <b:value i:type=\"a:EntityReference\">";
requestXML += " <a:id>" + entityId + "</a:id>";
requestXML += " <a:logicalname>" + entityName + "</a:logicalname>";
requestXML += " <a:name i:nil=\"true\">";
requestXML += " </a:name></b:value>";
requestXML += " </a:keyvaluepairofstringanytype>";
requestXML += " </a:parameters>";
requestXML += " <a:requestid i:nil=\"true\">";
requestXML += " <a:requestname>" + requestName + "</a:requestname>";
requestXML += " </a:requestid></request>";
requestXML += " </execute>";
requestXML += " </s:body>";
requestXML += "</s:envelope>";
var req = new XMLHttpRequest();
req.open("POST", GetClientUrl(), false)
req.setRequestHeader("Accept", "application/xml, text/xml, */*");
req.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
req.setRequestHeader("SOAPAction", "http://schemas.microsoft.com/xrm/2011/Contracts/Services/IOrganizationService/Execute");
req.send(requestXML);
alert("success");
//Get the Response from the CRM Execute method
//var response = req.responseXML.xml;
}
function GetClientUrl() {
if (typeof Xrm.Page.context == "object") {
clientUrl = Xrm.Page.context.getClientUrl();
}
var ServicePath = "/XRMServices/2011/Organization.svc/web";
return clientUrl + ServicePath;
}
Dank ... Polshgiant ... Ehrfürchtig. Es funktionierte wie ein Zauber ... das Problem war im Plug-in-Code ... Checkpunkt 2 sortierte mein Problem ... – Raghu