9. Januar 2013 17:58
10. Januar 2013 09:14
10. Januar 2013 09:41
function CreateEmailWithAttachment()
{
try
{
var wId = getWorkflowId("EmailAttachment");
var IdNew = Xrm.Page.data.entity.getId();
var returnValue = ExecuteWorkflow(IdNew,wId);
}
catch (ex) {}
}
function getWorkflowId(workflowName) {
var odataSelect = Xrm.Page.context.getServerUrl() + '/XRMServices/2011/OrganizationData.svc/WorkflowSet?$select=WorkflowId&$filter=StateCode/Value eq 1 and ParentWorkflowId/Id eq null and Name eq \'' + workflowName + '\'';
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("GET", odataSelect, false);
xmlHttp.send();
if (xmlHttp.status == 200) {
var result = xmlHttp.responseText;
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = false;
xmlDoc.loadXML(result);
return xmlDoc.getElementsByTagName("d:WorkflowId")[0].childNodes[0].nodeValue;
}
}
ExecuteWorkflow = function(entityId, workflowId){ var xml = "" + "<?xml version=\"1.0\" encoding=\"utf-8\"?>" + "<soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">" + GenerateAuthenticationHeader() + " <soap:Body>" + " <Execute xmlns=\"http://schemas.microsoft.com/crm/2007/WebServices\">" + " <Request xsi:type=\"ExecuteWorkflowRequest\">" + " <EntityId>" + entityId + "</EntityId>" + " <WorkflowId>" + workflowId + "</WorkflowId>" + " </Request>" + " </Execute>" + " </soap:Body>" + "</soap:Envelope>" + ""; var xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP"); xmlHttpRequest.Open("POST", "/mscrmservices/2007/CrmService.asmx", false); xmlHttpRequest.setRequestHeader("SOAPAction","http://schemas.microsoft.com/crm/2007/WebServices/Execute"); xmlHttpRequest.setRequestHeader("Content-Type", "text/xml; charset=utf-8"); xmlHttpRequest.setRequestHeader("Content-Length", xml.length); xmlHttpRequest.send(xml); var resultXml = xmlHttpRequest.responseXML; return(resultXml.xml);}