0
我試圖做一個oData創建複選框按下並獲得以下錯誤。不知道這是前端還是後端ABAP問題,因爲在另一個項目中使用了相同的功能。SAPUI5 oData POST 500錯誤
它在創建部分失敗,但奇怪的是仍然通過SiteId,ArticleNumber,VarianceDate &的細節已確認。
// Set CheckBox status, X for true, blank for false
onVarianceChecked: function (oEvent) {
var oEntry = {};
var bindingContext = oEvent.getSource().getBindingContext(this.MODEL_VIEW);
var path = bindingContext.getPath();
var object = bindingContext.getModel("SI").getProperty(path);
// Pass in the Header fields
oEntry.SiteId = this.SiteId;
oEntry.ArticleNumber = object.ArticleNumber;
oEntry.VarianceDate = moment(new Date(object.VarianceDate)).format('YYYY-MM-DDTHH:mm:ss');
// Set X or blank
if (oEvent.getParameter("selected") === true) {
oEntry.Confirmed = "X";
} else {
oEntry.Confirmed = "";
}
// Do the create
var oModel = this.getView().getModel("SI");
oModel.create("/VarianceHeaderSet", oEntry, {
success: function() {
console.log("Variance confirmed");
MessageToast.show("Variance confirmed", {
duration: 1000
});
},
error: function (oError) {
console.log("Error, variance could not be confirmed");
MessageToast.show("Error, variance could not be confirmed", {
duration: 1000
});
}
});
}
感謝您的回覆。我明天將在開始工作時提及給ABAP開發人員,我只是UI5前端人員:) 我們的確發現了類似的答案,但我的ABAP人卻說它不能設置爲可以爲空,因爲它是一個主鍵?不知道爲什麼,但我會隨身攜帶,謝謝。 – Scott
@Scott鍵字段不能設置爲空。您必須在前端驗證日期字段。或者,您可以在傳遞到後端時發送默認日期值。 –