Saturday, 22 December 2018

Retrieving Many to Many records in CRM Using WebApi

function ManytomanyRecords() {
            debugger;
            var UserID = Xrm.Page.context.getUserId();
            var req = new XMLHttpRequest();
            req.open("GET", Xrm.Page.context.getClientUrl() + "/api/data/v9.1/systemusers?$select=firstname,fullname&$expand=systemuserroles_association($select=name)&$filter=systemuserid eq " + UserID + "", true);
            req.setRequestHeader("OData-MaxVersion", "4.0");
            req.setRequestHeader("OData-Version", "4.0");
            req.setRequestHeader("Accept", "application/json");
            req.setRequestHeader("Content-Type", "application/json; charset=utf-8");
            req.setRequestHeader("Prefer", "odata.include-annotations=\"*\"");
            req.onreadystatechange = function () {
                if (this.readyState === 4) {
                    req.onreadystatechange = null;
                    if (this.status === 200) {
                        debugger;
                        var results = JSON.parse(this.response);
                        for (var i = 0; i < results.value.length; i++) {
                            var firstname = results.value[i]["firstname"];
                            var fullname = results.value[i]["fullname"];
                            //Use @odata.nextLink to query resulting related records
                            for (var j = 0; j<results.value[i]["systemuserroles_association"].length; j++);
                            {

                                var names = results.value[i]["systemuserroles_association"][j].name;
                            }
                        }
                    } else {
                        Xrm.Utility.alertDialog(this.statusText);
                    }
                }
            };
            req.send();
        }

No comments:

Post a Comment