Quantcast
Channel: Microsoft Dynamics CRM Forum - Recent Threads
Viewing all articles
Browse latest Browse all 82002

Auto-fill a field when Lookup selected. Using JS

$
0
0

I have an Checking Transaction Entity, there will be a lookup field on that "cse_vendor_name" (Vendor Master Entity) and  "cse_expense_tracker", so every time I will select a cse_vendor_name it will auto-fill the field of cse_expense_tracker.  I already trying this work, but it doesn't

function makeRequest(method, url) {
    return new Promise(function (resolve, reject) {
        var xhr = new XMLHttpRequest();
        xhr.open(method, url);
        xhr.setRequestHeader("OData-MaxVersion", "4.0");
        xhr.setRequestHeader("OData-Version", "4.0");
        xhr.setRequestHeader("Accept", "application/json");
        xhr.setRequestHeader("Content-Type", "application/json; charset=utf-8");
        xhr.onload = function () {
            if (this.status >= 200 && this.status < 300) {

                resolve(xhr.response);
            } else {
                reject({
                    status: this.status,
                    statusText: xhr.statusText
                });
            }
        };
        xhr.onerror = function () {
            reject({
                status: this.status,
                statusText: xhr.statusText
            });
        };
        xhr.send();
    });
}

function setParentAccountbasedonPrimaryContact() {
    var lookup1 = Xrm.Page.getAttribute("cse_vendor_name").getValue()[0].id;
    var clientUrl = Xrm.Page.context.getClientUrl();
    var query = clientUrl + "/api/data/v8.0/cse_vendormaster(" + lookup1.slice(1, -1) + ")?$select=_cse_expense_category_value";
    makeRequest('GET', query)
   .then(function (res) {
       var res2 = JSON.parse(res);
       var guid = res2._cse_expense_category_value;
       var query2 = clientUrl + "/api/data/v8.0/cse_checkingaccounttransaction(" + guid + ")?$select=cse_vendor_name";
       makeRequest('GET', query2)
   .then(function (response) {
       var res3 = JSON.parse(response);
       var value = new Array();
       value[0] = new Object();
       value[0].id = guid;
       value[0].name = res3.name;
       value[0].entityType = "cse_checkingaccounttransactions";
       Xrm.Page.getAttribute("cse_expense_category").setValue(value);
   })
       .catch(function (err) {
           console.error('there was an error!', err.statusText);
       });
   })

   .catch(function (err) {
       console.error(' there was an error!', err.statusText);
   });
}



Viewing all articles
Browse latest Browse all 82002

Latest Images

Trending Articles



Latest Images