Hello Expert i am doing an update operation using Odata . but i am getting Error value=Error processing request stream. The request should be a valid top-level resource object.Here is my code below. Please suggest where i am wrong.
function UpdateRecord() {
var ODataPath = serverurl + "/XRMServices/2011/OrganizationData.svc";
var id = "d6934b7c-c33e-e211-81e4-080027e18ca8";//record Id
var updateRecord = {};
updateRecord .programId = userId; //ContactId
updateRecord .LogicalName = "contact";
updateRecord .field1= parseFloat(99.00);//Money type
updateRecord .field2= parseFloat(89.51);//Money type
updateRecord .field3= parseFloat(85.21);//Money type
var updateEntityRequest = new XMLHttpRequest();
updateEntityRequest .open("POST", ODataPath + "/EntityprogramSet(guid'" + id + "')", true);
updateEntityRequest .setRequestHeader("Accept", "application/json");
updateEntityRequest .setRequestHeader("Content-Type", "application/json; charset=utf-8");
updateEntityRequest .setRequestHeader("X-HTTP-Method", "MERGE");
updateEntityRequest .onreadystatechange = function () {
onRecordUpdateCallBack(this, id);
};
updateEntityRequest.send(JSON.stringify(updateRecord));
}
function onRecordUpdateCallBack(updateEntityReturnValue, recId) {
if (updateEntityReturnValue.readyState == 4 /* complete */) {
if ((updateEntityReturnValue.status == 204) ||
(updateEntityReturnValue.status == 1223)) {
alert("Record with Id : " + recId+ " updated successfully.");
}
else
alert("Error occurred while updating record.");
}
}
Thank you
saroj