Copy Record from Parent to Child using Java Script Html along with jqgrid

 ////////////CopyQuote Javascript//////////////////////////////


var getGUiDofSelectedRecord;

var formContext;

function OpenHTML(primaryControl) {

    debugger;

    formContext = primaryControl;

    if (Xrm.Page.getAttribute("customerid") != null && Xrm.Page.getAttribute("customerid") != undefined) {

        if (Xrm.Page.getAttribute("customerid").getValue() == null) {

            alert("Please select the customer");

            return;

        }

    }

    var isEdit = true;

    var alertButton = new Alert.Button();

    alertButton.label = "Copy & Close";


    alertButton.callback = onAlertCloseButtonClick;

    var array = new Array();

    array.push(alertButton);

    if (isEdit) {

        Alert.showWebResource("apy_CustoapyMLForAccountQuotePopulation", 1500, 700, "Copy Quote", array, null, true, 10);

    }

    else {

        HideAlert();

    }

}

function OpenHTMLHomeGrid(primaryControl, selectedId) {

    getSelectedQuote(selectedId);

    debugger;

    //var pageInput = {

    //    pageType: "webresource",

    //    webresourceName: "apy_CustoapyMLForAccountQuotePopulation",

    //    data: selectedId

    //    };

    //    var navigationOptions = {

    //        target: 2,

    //        width: 1500,

    //        height: 700,

    //        position: 1

    //    };

    //Xrm.Navigation.navigateTo(pageInput, navigationOptions).then(

    //    function success() {

    //        debugger;

    //        getSelectedQuote(selectedId)

    //        },

    //        function error() {

    //            Xrm.Navigation.openAlertDialog({ text: error.message });

    //        }

    //    );


 //   window.open(Xrm.Page.context.getClientUrl() + '/WebResources/apy_CustoapyMLForAccountQuotePopulation.html?' + 'selectedId =' + selectedId, 1500, 700);

    debugger;

    //var isEdit = true;

    //var alertButton = new Alert.Button();

    //alertButton.label = "Copy & Close";


    //alertButton.callback = onAlertCloseButtonClick;

    //var array = new Array();

    //array.push(alertButton);

    //if (isEdit) {

    //    Alert.showWebResource("apy_CustoapyMLForAccountQuotePopulation", 1500, 700, "Copy Quote",

    //        [

    //            new Alert.Button("type", selectedId, true, true),

    //            new Alert.Button("Not now")

    //        ]);

    //    //Alert.showWebResource("apy_CustoapyMLForAccountQuotePopulation", 1500, 700, "Copy Quote", array, "https://arcesed365test.crm4.dynamics.com?&" + selectedId, true, 10);

    //}

    //else {

    //    HideAlert();

    //}

}


function HideAlert() {

    Alert.hide();

}



function onAlertCloseButtonClick(args) {

    var getSessionValues = sessionStorage.getItem("getGUiDofSelectedRecord");

    getSelectedQuote(getSessionValues);

    //Xrm.Page.getAttribute("editeventorder").setValue(false);

    //Xrm.Page.data.entity.save();

}


function getSelectedQuote(quoteId) {

    debugger;

    var inputvalue = new Array();

    var lookupObj = new Array();

    var quoteFetchXml = "<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'>

    " +

    "  <entity name='quote'>

        " +

        "  <all-attributes />" +

        "    <order attribute='apy_pickupcountry' descending='false' />" +

        "    <filter type='and'>

            " +

            "      <condition attribute='quoteid' operator='eq' uiname='' uitype='quote' value='{" + quoteId + "}' />" +

            "

        </filter>" +

        "

    </entity>" +

    "

</fetch>";


    var encodedFetchXML = encodeURIComponent(quoteFetchXml);

    var req = new XMLHttpRequest();

    req.open("GET", Xrm.Utility.getGlobalContext().getClientUrl() + "/api/data/v8.2/quotes?fetchXml=" + encodedFetchXML, false);

    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.setRequestHeader("Prefer", "odata.include-annotations=OData.Community.Display.V1.FormattedValue")

    req.onreadystatechange = function () {

        if (this.readyState === 4) {

            req.onreadystatechange = null;

            if (this.status === 200) {

                debugger;

                var results = JSON.parse(this.response);

                if (results.value.length > 0) {

                    var jsonParameter = getConfigurationDescColl(results.value[0].apy_formtype);

                    var entityFormOptions = {};

                    entityFormOptions["entityName"] = "quote";

                    entityFormOptions["entityId"] = null;

                    var formParameters = {};

                  //  var windowOptions = {};

                    var flagCopiedQuote = true;

                    for (var i = 0; i < jsonParameter.length; i++) {


                        if (flagCopiedQuote) {

                            var copiedFromQuoteId = new Array();

                            copiedFromQuoteId[0] = new Object();

                            copiedFromQuoteId[0].id = results.value[0].quoteid;

                            copiedFromQuoteId[0].name = results.value[0].apy_name;

                            copiedFromQuoteId[0].entityType = "quote";

                            formParameters["apy_copiedfromquoteid"] = copiedFromQuoteId;

                            flagCopiedQuote = false;

                        }



                       // Xrm.Page.getAttribute("apy_copiedfromquoteid").setValue(copiedFromQuoteId);

                        //if (jsonParameter[i].apy_copyvalue == true) {

                        if (jsonParameter[i].apy_fielddatatype != 1 && jsonParameter[i].apy_fielddatatype != 2 && jsonParameter[i].apy_fielddatatype != 8) {

                            if (results.value[0][jsonParameter[i].apy_quoteschema] != undefined && results.value[0][jsonParameter[i].apy_quoteschema] != null) {

                                formParameters[jsonParameter[i].apy_quoteschema] = results.value[0][jsonParameter[i].apy_quoteschema];

                                //Xrm.Page.getAttribute(jsonParameter[i].apy_quoteschema).setValue(results.value[0][jsonParameter[i].apy_quoteschema]);

                            }

                        } else if (jsonParameter[i].apy_fielddatatype == 1) {//Lookup

                            if (results.value[0]["_" + jsonParameter[i].apy_quoteschema + "_value"] != undefined && results.value[0]["_" + jsonParameter[i].apy_quoteschema + "_value"] != null) {

                                var lookupObj = new Array();

                                lookupObj[0] = new Object();

                                lookupObj[0].id = results.value[0]["_" + jsonParameter[i].apy_quoteschema + "_value"];

                                lookupObj[0].name = results.value[0]["_" + jsonParameter[i].apy_quoteschema + "_value@OData.Community.Display.V1.FormattedValue"];

                                lookupObj[0].entityType = results.value[0]["_" + jsonParameter[i].apy_quoteschema + "_value@Microsoft.Dynamics.CRM.lookuplogicalname"];

                             //  Xrm.Page.getAttribute(jsonParameter[i].apy_quoteschema).setValue(lookupObj);

                                formParameters[jsonParameter[i].apy_quoteschema] = lookupObj;

                            }

                        } else if (jsonParameter[i].apy_fielddatatype == 2) {//DateTIme

                            //apy_transittime_multiselect

                            if (results.value[0][jsonParameter[i].apy_quoteschema + "@OData.Community.Display.V1.FormattedValue"] != undefined && results.value[0][jsonParameter[i].apy_quoteschema + "@OData.Community.Display.V1.FormattedValue"] != null) {

                                if (jsonParameter[i].apy_quoteschema != "effectivefrom" && jsonParameter[i].apy_quoteschema != "effectiveto" && jsonParameter[i].apy_quoteschema != "apy_starttime" && jsonParameter[i].apy_quoteschema != "apy_endtime") {

                                    var date = results.value[0][jsonParameter[i].apy_quoteschema + "@OData.Community.Display.V1.FormattedValue"];

                                    var dt = date.split(/\-|\s/);

                                    var dateTime = new Date(dt.slice(0, 3).reverse().join('-') + ' ' + dt[3]);

                                 //   formParameters[jsonParameter[i].apy_quoteschema] = dateTime;

                                    formParameters[jsonParameter[i].apy_quoteschema] = date;

                                   // Xrm.Page.getAttribute(jsonParameter[i].apy_quoteschema).setValue(dateTime);

                                } else {

                                    var dates = results.value[0][jsonParameter[i].apy_quoteschema + "@OData.Community.Display.V1.FormattedValue"];

                                    var dt1 = dates.substring(0, 2);

                                    var mon1 = dates.substring(3, 5);

                                    var yr1 = dates.substring(6, 10);


                                    temp1 = mon1 + "/" + dt1 + "/" + yr1;

                                    var cfd = Date.parse(temp1);

                                    var date1 = new Date(cfd);

                                    formParameters[jsonParameter[i].apy_quoteschema] = date1;

                                  //  formParameters[jsonParameter[i].apy_quoteschema] = dates;

                                   // Xrm.Page.getAttribute(jsonParameter[i].apy_quoteschema).setValue(date1);

                                }

                            }

                        } else if (jsonParameter[i].apy_fielddatatype == 8) { //MultiOptionSet

                            //var multiselect = results.value[0][jsonParameter[i].apy_quoteschema];

                            //var multisplit = multiselect.split(",");

                            //var multiarray = [];

                            //for (var i = 0; i < multisplit.length; i++) {

                            // //   multiarray.add(multisplit[i]);

                            //}

                            // Xrm.Page.getAttribute(jsonParameter[i].apy_quoteschema).setValue(multiarray);

                        }

                        // }

                    }

                    Xrm.Navigation.openForm(entityFormOptions, formParameters).then(successCallBack, errorCallBack);

                }

            }

        }

    };

    req.send();

}


function successCallBack(e) {

    alert(e);

    debugger;

}


function hideCopyQuoteButton(primaryContext) {

    var formContext = primaryContext;

    var formtype = formContext.ui.getFormType();

    var flag = false;

    if (formtype == 1) {

        flage = true;

    }

    else {

        flage = false;

    }

    return flage;

}


function getConfigurationDescColl(formType) {

    // var jsonParameter;

    debugger;

    var jsonResult;

    var fetchXml;

        fetchXml = "<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'>

    " +

    "  <entity name='apy_quoteconfig'>

        " +

        "    <attribute name='apy_quoteconfigid' />" +

        "    <attribute name='apy_name' />" +

        "    <attribute name='createdon' />" +

        "    <attribute name='apy_quoteschema' />" +

        "    <attribute name='apy_filedvisibility' />" +

        "    <attribute name='apy_fielddatatype' />" +

        "    <order attribute='apy_name' descending='false' />" +

        "    <filter type='and'>

            " +

            "      <condition attribute='apy_filedvisibility' operator='in'>

                " +

                "        <value>3</value>" +

                "        <value>" + formType + "</value>" +

                "

            </condition>" +

            "

        </filter>" +

        "

    </entity>" +

</fetch>";

    var encodedFetchXML = encodeURIComponent(fetchXml);

    var req = new XMLHttpRequest();

    req.open("GET", Xrm.Utility.getGlobalContext().getClientUrl() + "/api/data/v8.2/apy_quoteconfigs?fetchXml=" + encodedFetchXML, false);

    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) {

                var results = JSON.parse(this.response);

                if (results.value.length > 0) {

                    jsonResult = results.value;

                    // var apy_name = results.value[0]["apy_name"];

                    // jsonParameter = results.value[0]["apy_parametertext"];

                }

                // jsonResult = JSON.parse(jsonParameter);

            } else {

                var alertStrings = { text: this.statusText };

                Xrm.Navigation.openAlertDialog(alertStrings).then();

            }

        }

    };

    req.send();


    return jsonResult;

}


///function OpenHTML() {

//    if (Xrm.Page.data.entity.getEntityName() == "quote") {

//        var accoutid = Xrm.Page.getAttribute("customerid").getValue();

//        if (accoutid) {

//            var customParameters = encodeURIComponent("AccountId=" + accoutid);

//            Xrm.Utility.openWebResource("new_GetInvoice", customParameters);

//        }

//        else {

//            alert("Record not found !!!!!!")

//        }

//    }

//}

///////////HtmlJQGrid/////////


<html>

<head>

    <script src="ClientGlobalContext.js.aspx" type="text/javascript"></script>

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

    <script src="/WebResources/apy_/grid.locale_en.js" type="text/javascript"></script>

    <script src="/WebResources/apy_/jquery.jqgrid.min.js" type="text/javascript"></script>


    <link href="/WebResources/apy_bootstrap.css" rel="stylesheet" type="text/css">

    <link href="/WebResources/apy_/ui.jqgrid.css" rel="stylesheet" type="text/css">

    <link href="/WebResources/apy_/jquery_ui.css" rel="stylesheet" type="text/css">


    <style>

        .ui-jqgrid tr.jqgrow td {

            white-space: normal !important;

            height: auto;

            width: 1000px;

            vertical-align: text-top;

            padding-top: 2px;

        }


        .ui-jqgrid .ui-jqgrid-htable th div {

            height: auto;

            height: 22px;

            white-space: normal !important;

        }

    </style>

    <script type="text/javascript">

        var getQueryString = function (field) {

            var href = decodeURIComponent(window.location.href);

            var reg = new RegExp('[?&]' + field + '=([^&#]*)', 'i');

            var string = reg.exec(href);

            return string ? string[1] : null;

        };

        // Optionally set Xrm and formContext as global variables on the page.

        //window.Xrm = xrm;

        //Xrm.Page = formContext;


        $(function () {

            /* var snrUrl = Xrm.Page._globalContext.getClientUrl() + "/api/data/v8.2/quotes?$select=createdon,_apy_pickupzonemapping_value,_apy_dropoffzonemapping_value,apy_formtype,_apy_dropoffcountry_value,apy_dropoffzipcode,apy_finalbasepriceadjusted,apy_manualadjustmentstring,apy_ldmloadingmeters,_apy_markupbyweightbandsshowsuggested_value,_apy_pickupcountry_value,apy_pickupzipcode,apy_volumem3,apy_weightkg,statecode&$filter=apy_formtype eq  " + Xrm.Page.getAttribute("apy_formtype").getValue() + " and _customerid_value eq " + Xrm.Page.getAttribute("customerid").getValue()[0].id.replace("{", "").replace("}", "") + " and apy_parentquote eq null &$orderby=createdon desc";

             $.ajax({

                 type: "GET",

                 url: snrUrl,

                 contentType: "application/json; charset=utf-8",

                 beforeSend: function (XMLHttpRequest) {

                     XMLHttpRequest.setRequestHeader("OData-MaxVersion", "4.0");

                     XMLHttpRequest.setRequestHeader("OData-Version", "4.0");

                     XMLHttpRequest.setRequestHeader("Accept", "application/json");

                     XMLHttpRequest.setRequestHeader("Prefer", "odata.include-annotations=\"*\"");

                 },

                 async: false,

                 dataType: "json",

                 scrollBarOffset: 0,

                 autowidth: false,

                 forceFit: true,

                 shrinkToFit: false,

                 success: successCallBack,

                 error: errorCallBack


             });*/

            data = getUrlParameters();

            getSelectedQuote(data.data);

            var orderFetchXML = null;

            if (customerId != null) {

                orderFetchXML = "<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'>" +

                    "  <entity name='quote'>" +

                    "  <all-attributes />" +

                    "    <order attribute='apy_pickupcountry' descending='false' />" +

                    "    <filter type='and'>" +

                    "      <condition attribute='apy_formtype' operator='eq' value='2' />" +

                    "      <condition attribute='apy_parentquote' operator='null' />" +

                    "      <condition attribute='customerid' operator='eq' value='" + customerId[0].id + "' />" +

                    "    </filter>" +

                    "  </entity>" +

                    "</fetch>";


                if (orderFetchXML != null) {

                    var encodedFetchXML = encodeURIComponent(orderFetchXML);

                    var req = new XMLHttpRequest();

                    req.open("GET", Xrm.Page._globalContext.getClientUrl() + "/api/data/v8.2/quotes?fetchXml=" + encodedFetchXML, false);

                    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) {

                                var results = JSON.parse(this.response);

                                if (results.value.length > 0) {

                                    successCallBack(results);

                                }

                            } else {

                                Xrm.Utility.alertDialog(this.statusText);

                            }

                        }

                    };

                    req.send();

                }

            }

        });


        function successCallBack(result) {

            var resultJSON = [];

            result.value.forEach(function (eachRow) {

                var JSONObj = {};

                JSONObj._apy_pickupcountry_value = eachRow["_apy_pickupcountry_value@OData.Community.Display.V1.FormattedValue"] == undefined ? "" : eachRow["_apy_pickupcountry_value@OData.Community.Display.V1.FormattedValue"];

                JSONObj._apy_pickupzonemapping_value = eachRow["_apy_pickupzonemapping_value@OData.Community.Display.V1.FormattedValue"] == undefined ? "" : eachRow["_apy_pickupzonemapping_value@OData.Community.Display.V1.FormattedValue"];

                JSONObj.apy_pickupzipcode = eachRow.apy_pickupzipcode;

                JSONObj._apy_dropoffcountry_value = eachRow["_apy_dropoffcountry_value@OData.Community.Display.V1.FormattedValue"] == undefined ? "" : eachRow["_apy_dropoffcountry_value@OData.Community.Display.V1.FormattedValue"];

                JSONObj._apy_dropoffzonemapping_value = eachRow["_apy_dropoffzonemapping_value@OData.Community.Display.V1.FormattedValue"] == undefined ? "" : eachRow["_apy_dropoffzonemapping_value@OData.Community.Display.V1.FormattedValue"];

                JSONObj.apy_dropoffzipcode = eachRow.apy_dropoffzipcode;

                JSONObj.apy_finalbasepriceadjusted = eachRow["apy_finalbasepriceadjusted@OData.Community.Display.V1.FormattedValue"] == undefined ? "" : eachRow["apy_finalbasepriceadjusted@OData.Community.Display.V1.FormattedValue"];

                JSONObj.apy_manualadjustmentstring = eachRow.apy_manualadjustmentstring;

                JSONObj.statecode = eachRow["statecode@OData.Community.Display.V1.FormattedValue"] == undefined ? "" : eachRow["statecode@OData.Community.Display.V1.FormattedValue"];

                JSONObj.apy_ldmloadingmeters = eachRow.apy_ldmloadingmeters;

                JSONObj.apy_volumem3 = eachRow.apy_volumem3;

                JSONObj.apy_weightkg = eachRow.apy_weightkg;

                JSONObj.name = eachRow.name;

                JSONObj.createdon = eachRow["createdon@OData.Community.Display.V1.FormattedValue"] == undefined ? "" : eachRow["createdon@OData.Community.Display.V1.FormattedValue"];

                JSONObj.id = eachRow.quoteid;

                resultJSON.push(JSONObj);

            });

            var grid = $("#JQGridLoad").jqGrid({ //set your grid id

                data: resultJSON, //insert data from the data object we created above

                datatype: 'local',

                contentType: 'application/json; charset=utf-8',

                //Pass Coloumn Name Below

                colNames: ["Select", 'Quote Name', 'Pick Up Country', 'Pick Up Zone Mapping', 'Pick Up ZipCode', 'Drop Off Country', 'Drop Off Zone Mapping', 'Drop Off ZipCode', 'Final Rate', 'Mark-up %', 'Status', 'LDM', 'Volume', 'Weight(Kg)', 'Created On', 'ID'], //define column names

                colModel: [

                    {

                        name: 'myradio', width: 30, fixed: true, align: 'center', resizable: false, sortable: false,

                        formatter: function (cellValue, option) {

                            return '<input type="radio" name="radio_' + option.gid + '"  />';

                        }

                    },

                    { name: 'name', index: 'name', key: true, width: 120 },

                    { name: '_apy_pickupcountry_value', index: '_apy_pickupcountry_value', key: true, width: 250 },

                    { name: '_apy_pickupzonemapping_value', index: '_apy_pickupzonemapping_value', key: true, width: 250 },

                    { name: 'apy_pickupzipcode', index: 'apy_pickupzipcode', key: true, width: 175 },

                    { name: '_apy_dropoffcountry_value', index: '_apy_dropoffcountry_value', key: true, width: 250 },

                    { name: '_apy_dropoffzonemapping_value', index: '_apy_dropoffzonemapping_value', key: true, width: 250 },

                    { name: 'apy_dropoffzipcode', index: 'apy_dropoffzipcode', key: true, width: 175 },

                    { name: 'apy_finalbasepriceadjusted', index: 'apy_finalbasepriceadjusted', key: true, width: 125 },

                    { name: 'apy_manualadjustmentstring', index: 'apy_manualadjustmentstring', key: true, width: 110 },

                    { name: 'statecode', index: 'statecode', key: true, width: 120 },

                    { name: 'apy_ldmloadingmeters', index: 'apy_ldmloadingmeters', key: true, width: 110 },

                    { name: 'apy_volumem3', index: 'apy_volumem3', key: true, width: 110 },

                    { name: 'apy_weightkg', index: 'apy_weightkg', key: true, width: 120 },

                    { name: 'createdon', index: 'createdon', key: true, width: 160 },

                    { name: 'id', index: 'id', key: true, width: 160 }],

                beforeSelectRow: function (rowid, e) {

                    var $radio = $(e.target).closest('tr').find('input[type="radio"]');

                    $radio.attr('checked', 'checked');

                    return true; // allow row selection

                }, //define column models

                celledit: false,

                viewrecords: true,

                gridview: true


            });

            $('#getRadio').click(function () {

                var $selRadio = $('input[name=radio_' + $("#JQGridLoad")[0].id + ']:radio:checked'), $tr;

                if ($selRadio.length > 0) {

                    $tr = $selRadio.closest('tr');

                    if ($tr.length > 0) {

                        if (typeof (Storage) !== "undefined") {

                            sessionStorage.clear();

                            sessionStorage.setItem("getGUiDofSelectedRecord", $tr.attr('id'))

                        }

                    }

                } else {

                    alert("The radio button is not selected");

                }

            });

            jQuery("#JQGridLoad").jqGrid('navGrid', '#pager2', { edit: false, add: false, del: false });

            grid.jqGrid('filterToolbar');

        }

        $(function ($) {

            $('.ui-jqgrid .ui-jqgrid-bdiv').css('overflow-x', 'hidden');

        });

        function errorCallBack(result) {

            alert(result.data);

        }


        function getUrlParameters() {

            var queryString = location.search.substring(1);

            var params = {};

            var queryStringParts = queryString.split("&");

            for (var i = 0; i < queryStringParts.length; i++) {

                var pieces = queryStringParts[i].split("=");

                params[pieces[0].toLowerCase()] = pieces.length === 1 ? null : decodeURIComponent(pieces[1]);

            }

            return params;

        }

        var customerId = new Array();

        var originatingCompany = new Array();

        var formType = null;

        function getSelectedQuote(quoteId) {

            var quoteFetchXml = "<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'>" +

                "  <entity name='quote'>" +

                "    <attribute name='statecode' />" +

                "    <attribute name='createdon' />" +

                "    <attribute name='apy_originatingcompany' />" +

                "    <attribute name='apy_name' />" +

                "    <attribute name='apy_formtype' />" +

                "    <attribute name='quoteid' />" +

                "    <attribute name='customerid' />" +

                "    <order attribute='apy_pickupcountry' descending='false' />" +

                "    <filter type='and'>" +

                "      <condition attribute='quoteid' operator='eq' uiname='' uitype='quote' value='{" + quoteId + "}' />" +

                "    </filter>" +

                "  </entity>" +

                "</fetch>";


            var encodedFetchXML = encodeURIComponent(quoteFetchXml);

            var req = new XMLHttpRequest();

            req.open("GET", Xrm.Utility.getGlobalContext().getClientUrl() + "/api/data/v8.2/quotes?fetchXml=" + encodedFetchXML, false);

            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.setRequestHeader("Prefer", "odata.include-annotations=OData.Community.Display.V1.FormattedValue")

            req.onreadystatechange = function () {

                if (this.readyState === 4) {

                    req.onreadystatechange = null;

                    if (this.status === 200) {

                        var results = JSON.parse(this.response);

                        if (results.value.length > 0) {

                            formType = results.value[0].apy_formtype;


                            //  customerId = new Array();

                            customerId[0] = new Object();

                            customerId[0].id = results.value[0]._customerid_value;

                            customerId[0].name = results.value[0]["_customerid_value@OData.Community.Display.V1.FormattedValue"]

                            customerId[0].entityType = results.value[0]["_customerid_value@Microsoft.Dynamics.CRM.lookuplogicalname"];


                            //  originatingCompany = new Array();

                            originatingCompany[0] = new Object();

                            originatingCompany[0].id = results.value[0]._apy_originatingcompany_value;

                            originatingCompany[0].name = results.value[0]["_apy_originatingcompany_value@OData.Community.Display.V1.FormattedValue"]

                            originatingCompany[0].entityType = results.value[0]["_apy_originatingcompany_value@Microsoft.Dynamics.CRM.lookuplogicalname"];

                        }

                    }

                }

            };

            req.send();

        }


    </script>

    <meta>

    <meta>

    <meta>

    <meta>

</head>

<body style="overflow-wrap: break-word;" onfocusout="parent.setEmailRange();">

    <!--<button id="getRadio" type="button">Copy Quote</button><br><br>-->

    <table id="JQGridLoad"></table>

    <div id="pager2" style="font-family: undefined;"></div>

</body>

</html>


Comments

Popular posts from this blog

Meta Data Using WebApiRequest

Sample CRUD Operations Using C# in MSCRM

Basic Plugin Code in D365 using C#