javascript 調用Work Flow轉自Jim Wang

/*  the function  */
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);
}

/*  call  */
var  theWorkflowId  =   " 3FD2DD58-4708-43D7-A21B-F0F90A0AA9F2 " // change to your workflow Id
ExecuteWorkflow(crmForm.ObjectId, theWorkflowId);

你可能感兴趣的:(JavaScript)