下面是我在报价实体上的产品子网格。
现在在添加新产品时,我正在根据单价、数量和折扣计算服务税和税金。
现在我需要在子网格中设置计算的服务税和税值。
我想更新报价实体中子网格的记录。我已经尝试了下面的代码,但仍然无法更新我的子网格。
function OnRefresh()
{
var gridControl = document.getElementById("quotedetailsGrid").control;
var ids = gridControl.get_allRecordIds();
for (i = 0; i < ids.length; i++) {
var quotedetail = new Object();
quotedetail.new_service_tax = "1000";
var id = ids[i].replace("{", "").replace("}", "");
QuoteProductRecord(id,quotedetail);
}
}
function QuoteProductRecord(id,quotedetail) {
var jsonEntity = window.JSON.stringify(quotedetail);
var ODataPath = Xrm.Page.context.getServerUrl() + "/XrmServices/2011/OrganizationData.svc/QuoteDetailSet";
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
datatype: "json",
data: jsonEntity,
url: ODataPath + "(guid'" + id + "')",
beforeSend: function (XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("Accept", "application/json");
XMLHttpRequest.setRequestHeader("X-HTTP-Method", "MERGE");
},
success: function (data, textStatus, XmlHttpRequest) {
alert("Success");
},
error: function (XMLHttpRequest, textStatus, errorThrown) { }
});
}
问题是没有抛出错误,但子网格中的服务税和税值仍然为空白。
在 JSON 函数中,我也尝试过提醒成功消息,但我没有收到任何成功消息或任何错误消息。