首页 > 代码库 > crm使用soap操作商机赢单

crm使用soap操作商机赢单

//C# 代码
//Entity target = new Entity() { LogicalName = "opportunityclose" };
//target["opportunityid"] =
//    new EntityReference() { LogicalName = "opportunity", Id = new Guid("F56B88B7-D412-E411-9405-00155D005808") };
//target["actualrevenue"] = new Money(10);
//target["actualend"] = DateTime.Now;
//target["description"] = "測试";
//WinOpportunityRequest request = new WinOpportunityRequest();
//request.OpportunityClose = target;
//request.Status = new OptionSetValue(4);

//js 使用soap调用
function deom() {
    //商机id
    var opportunityid = "F56B88B7-D412-E411-9405-00155D005808";
    //实际收入
    var actualrevenue = 10;
    //结束实际
    var actualend = "2014-07-24T12:49:52.6654687+08:00";
    //描写叙述
    var description = "測试";
    //状态
    var state = 4;

    //使商机赢单
    WinOpportunity(opportunityid, actualrevenue, actualend, description, state);
}

function WinOpportunity(opportunityid, actualrevenue, actualend, description, state) {
    var request = "<s:Envelope xmlns:s=‘http://schemas.xmlsoap.org/soap/envelope/‘>" +
    "<s:Body>" +
    "<Execute xmlns=‘http://schemas.microsoft.com/xrm/2011/Contracts/Services‘ xmlns:i=‘http://www.w3.org/2001/XMLSchema-instance‘>" +
    "<request i:type=‘b:LoseOpportunityRequest‘ xmlns:a=‘http://schemas.microsoft.com/xrm/2011/Contracts‘ xmlns:b=‘http://schemas.microsoft.com/crm/2011/Contracts‘>" +
    "<a:Parameters xmlns:c=‘http://schemas.datacontract.org/2004/07/System.Collections.Generic‘>" +
    "<a:KeyValuePairOfstringanyType>" +
    "<c:key>OpportunityClose</c:key>" +
    "<c:value i:type=‘a:Entity‘>" +
    "<a:Attributes>" +
    "<a:KeyValuePairOfstringanyType>" +
    "<c:key>opportunityid</c:key>" +
    "<c:value i:type=‘a:EntityReference‘>" +
    "<a:Id>" + opportunityid + "</a:Id>" +
    "<a:LogicalName>opportunity</a:LogicalName>" +
    "<a:Name i:nil=‘true‘ />" +
    "</c:value>" +
    "</a:KeyValuePairOfstringanyType>" +
    "<a:KeyValuePairOfstringanyType>" +
    "<c:key>actualrevenue</c:key>" +
    "<c:value i:type=‘a:Money‘>" +
    "<a:Value>" + actualrevenue + "</a:Value>" +
    "</c:value>" +
    "</a:KeyValuePairOfstringanyType>" +
    "<a:KeyValuePairOfstringanyType>" +
    "<c:key>actualend</c:key>" +
    "<c:value i:type=‘d:dateTime‘ xmlns:d=‘http://www.w3.org/2001/XMLSchema‘>" + actualend + "</c:value>" +
    "</a:KeyValuePairOfstringanyType>" +
    "<a:KeyValuePairOfstringanyType>" +
    "<c:key>description</c:key>" +
    "<c:value i:type=‘d:string‘ xmlns:d=‘http://www.w3.org/2001/XMLSchema‘>" + description + "</c:value>" +
    "</a:KeyValuePairOfstringanyType>" +
    "</a:Attributes>" +
    "<a:EntityState i:nil=‘true‘ />" +
    "<a:FormattedValues />" +
    "<a:Id>00000000-0000-0000-0000-000000000000</a:Id>" +
    "<a:LogicalName>opportunityclose</a:LogicalName>" +
    "<a:RelatedEntities />" +
    "</c:value>" +
    "</a:KeyValuePairOfstringanyType>" +
    "<a:KeyValuePairOfstringanyType>" +
    "<c:key>Status</c:key>" +
    "<c:value i:type=‘a:OptionSetValue‘>" +
    "<a:Value>" + state + "</a:Value>" +
    "</c:value>" +
    "</a:KeyValuePairOfstringanyType>" +
    "</a:Parameters>" +
    "<a:RequestId i:nil=‘true‘ />" +
    "<a:RequestName>WinOpportunity</a:RequestName>" +
    "</request>" +
    "</Execute>" +
    "</s:Body>" +
    "</s:Envelope>";

    execSoap(request);
}

//获取服务地址
function getWebUrl() {
    var serverUrl = Xrm.Page.context.getServerUrl();
    if (serverUrl.match(/\/$/)) {
        serverUrl = serverUrl.substring(0, serverUrl.length - 1);
    }
    return serverUrl + "/XRMServices/2011/Organization.svc/web";
}
//运行请求
function execSoap(request) {
    var ajaxRequest = new XMLHttpRequest();
    ajaxRequest.open("POST", getWebUrl(), true)
    ajaxRequest.setRequestHeader("Accept", "application/xml, text/xml, */*");
    ajaxRequest.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
    ajaxRequest.setRequestHeader("SOAPAction", "
http://schemas.microsoft.com/xrm/2011/Contracts/Services/IOrganizationService/Execute");
    ajaxRequest.send(request);
}

crm使用soap操作商机赢单