How to retieve data through SOAP XML using Jscript in CRM 2011


//How to retieve data through SOAP XML using Jscript in CRM 2011
if (Xrm.Page.getAttribute(“parentcustomerid”).getValue() != null) {
    //acount guid no
    var parentcustomerID = Xrm.Page.data.entity.attributes.get(“parentcustomerid”).getValue()[0].id;
    var xml = “<?xml version=’1.0′ encoding=’utf-8′?>” +
    “<soap:Envelope xmlns:soap=’http://schemas.xmlsoap.org/soap/envelope/'&#8221; +
    GenerateAuthenticationHeader() +
    “<soap:Body>” +
    “<entityName>account</entityName>” +
    “<id>” + parentcustomerID + “</id>” +
    “<columnSet xmlns:q1=’http://schemas.microsoft.com/crm/2006/Query&#8217; xsi:type=’q1:ColumnSet’>” +
        “<q1:Attributes>” +
            “<q1:Attribute>address1_addresstypecode</q1:Attribute>” +
            “<q1:Attribute>address1_name</q1:Attribute>” +
            “<q1:Attribute>address1_line1</q1:Attribute>” +
            “<q1:Attribute>address1_line2</q1:Attribute>” +
            “<q1:Attribute>address1_city</q1:Attribute>” +
            “<q1:Attribute>address1_stateorprovince</q1:Attribute>” +
            “<q1:Attribute>address1_postalcode</q1:Attribute>” +
            “<q1:Attribute>address1_country</q1:Attribute>” +
            “<q1:Attribute>address1_telephone1</q1:Attribute>” +
        “</q1:Attributes>” +
    “</columnSet>” +
    “</Retrieve>” +
    “</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/Retrieve&#8221;);
    xmlHttpRequest.setRequestHeader(“Content-Type”, “text/xml; charset=utf-8”);
    xmlHttpRequest.setRequestHeader(“Content-Length”, xml.length);
    xmlHttpRequest.send(xml);
    var resultXml = xmlHttpRequest.responseXML;
    if (resultXml.selectSingleNode(“//q1:address1_addresstypecode”) != null) { Xrm.Page.getAttribute(“address1_addresstypecode”).setValue(resultXml.selectSingleNode(“//q1:address1_addresstypecode”).nodeTypedValue);
    }
    else {
        Xrm.Page.getAttribute(“address1_addresstypecode”).setValue(null);
    }
    if (resultXml.selectSingleNode(“//q1:address1_name”) != null) {
Xrm.Page.getAttribute(“address1_name”).setValue(resultXml.selectSingleNode(“//q1:address1_name”).nodeTypedValue);
    }
    else {
        Xrm.Page.getAttribute(“address1_name”).setValue(null);
    }
    if (resultXml.selectSingleNode(“//q1:address1_line1”) != null) {
Xrm.Page.getAttribute(“address1_line1”).setValue(resultXml.selectSingleNode(“//q1:address1_line1”).nodeTypedValue);
    }
    else {
        Xrm.Page.getAttribute(“address1_line1”).setValue(null);
    }
    if (resultXml.selectSingleNode(“//q1:address1_line2”) != null) {
Xrm.Page.getAttribute(“address1_line2”).setValue(resultXml.selectSingleNode(“//q1:address1_line2”).nodeTypedValue);
    }
    else {
        Xrm.Page.getAttribute(“address1_line2”).setValue(null);
    }
    if (resultXml.selectSingleNode(“//q1:address1_city”) != null) {
Xrm.Page.getAttribute(“address1_city”).setValue(resultXml.selectSingleNode(“//q1:address1_city”).nodeTypedValue);
    }
    else {
        Xrm.Page.getAttribute(“address1_city”).setValue(null);
    }
    if (resultXml.selectSingleNode(“//q1:address1_stateorprovince”) != null) {
Xrm.Page.getAttribute(“address1_stateorprovince”).setValue(resultXml.selectSingleNode(“//q1:address1_stateorprovince”).nodeTypedValue);
    }
    else {
        Xrm.Page.getAttribute(“address1_stateorprovince”).setValue(null);
    }
    if (resultXml.selectSingleNode(“//q1:address1_postalcode”) != null) {
Xrm.Page.getAttribute(“address1_postalcode”).setValue(resultXml.selectSingleNode(“//q1:address1_postalcode”).nodeTypedValue);
    }
    else {
        Xrm.Page.getAttribute(“address1_postalcode”).setValue(null);
    }
    if (resultXml.selectSingleNode(“//q1:address1_country”) != null) {
Xrm.Page.getAttribute(“address1_country”).setValue(resultXml.selectSingleNode(“//q1:address1_country”).nodeTypedValue);
    }
    else {
        Xrm.Page.getAttribute(“address1_country”).setValue(null);
    }
}

**For CRM 2011 Training, please check out our CRM Training page. Please share |Like in Facebook if you feel like this page is useful.

Advertisements

About Dynamics CRM Guru

We are a group of CRM Consultants and have rich experience in all Microsoft CRM versions. Currently we provide training in Microsoft CRM 2015/CRM 2013 and CRM 2011.

Posted on March 12, 2013, in CRM 2011 JScript, Microsoft CRM 2011, MS CRM 2011 Training and tagged . Bookmark the permalink. Leave a comment.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: