使用ODATAModel将行(在客户端)添加到表中

2020-08-15 07:06发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好, 我有一个绑定到ODA...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好,

我有一个绑定到ODATAModel的表。

我想创建一个在表中插入新行的按钮(并且该记录不应再保存到数据库中),然后用户应将数据输入到新行并按保存按钮。 按保存后,记录应保存到数据库中。

这是一个示例,它确实在执行我想要的操作,但是它使用的是JSONModle: http://jsbin.com/uxokuc/ 421/edit

我想到了这一点,它不仅添加了一条新记录,而且还直接将其发送到了数据库:

 btnAddRecord.attachPress(function(){
    //tblUser.addRow(new sap.ui.table.Row()); 不可能
     var newEntry = oData.createEntry('/tbl_user',{ID:4711,USERNAME:'BEN'});
     console.log(newEntry.getObject()。USERNAME)
     oData.submitChanges(local);
 });
 

这里有些想法如何(以及是否)可行?

非常感谢,

ben

10条回答
nice_wp
2020-08-15 07:44


要添加 将表中的行发送到表而不将其发送到数据库中,则需要获取模型数据...因此,view.getModel()。oData ..找到终点..然后将该项目添加到数组中... 使用一个JavaScript函数作为push()或splice()...然后就可以执行.. view.getModel()。refresh()...否则,如果将数据数组放在一个变量中会更容易,更好。 。并将其设置为... view.getModel()。setProperty('/yourEndPoint',yourArrayWithNewRow); 最后一种方法将刷新表中的模型...

,以将其保存到数据库中。然后,您将必须执行AJAX发布或odata.create。 ...传递相关数据

希望这会有所帮助

一周热门 更多>