Saturday, 20 August 2016

Multiple Retrieve in MSCRM


Multiple retrieve Examples in MSCRM using WebAPPI
=====================================================================


function AccountOnLoad() {
    var Id = Xrm.Page.data.entity.getId().substring(1, 37); //remove braces
    var entity = "contacts";
    //note here we need to use _accounted_value instead of parentcustomerid
    var columnSet = "?$select=firstname&$filter=_accountid_value eq " + Id + "&$count=true";
    retrieveentityCollection(entity, columnSet);
}

function retrieveentityCollection(entity, options) {
    var serverURL = Xrm.Page.context.getClientUrl();
    var Query = entity + options;
    var req = new XMLHttpRequest();
    req.open("GET", serverURL + "/api/data/v8.0/" + Query, true);
    req.setRequestHeader("Accept", "application/json");
    req.setRequestHeader("Content-Type", "application/json; charset=utf-8");
    req.setRequestHeader("OData-MaxVersion", "4.0");
    req.setRequestHeader("OData-Version", "4.0");
    req.onreadystatechange = function () {
        if (this.readyState == 4 /* complete */) {
            req.onreadystatechange = null;
            if (this.status == 200) {
                var data = JSON.parse(this.response);
                if (data['@odata.count'] != null)
                    Xrm.Page.getAttribute("numberofemployees").setValue(data['@odata.count']); //we are displaying it in out of the box number o employee field
            } else {
                var error = JSON.parse(this.response).error;
                alert(error.message);
            }
        }
    };
    req.send();
}

No comments:

Post a Comment