点击此处---> 群内免费提供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
要添加 将表中的行发送到表而不将其发送到数据库中,则需要获取模型数据...因此,view.getModel()。oData ..找到终点..然后将该项目添加到数组中... 使用一个JavaScript函数作为push()或splice()...然后就可以执行.. view.getModel()。refresh()...否则,如果将数据数组放在一个变量中会更容易,更好。 。并将其设置为... view.getModel()。setProperty('/yourEndPoint',yourArrayWithNewRow); 最后一种方法将刷新表中的模型...
,以将其保存到数据库中。然后,您将必须执行AJAX发布或odata.create。 ...传递相关数据
希望这会有所帮助
地狱般的托比亚斯
感谢您的快速回复!
仅供参考,我发现了另一种方法,可以通过使用表方法addItem()来实现。 以下代码可能有助于理解
this.byId(" lineItemsList")。addItem(new sap.m.ColumnListItem(XXXX));
类似地,以下代码可用于删除行
this.byId(" lineItemsList")。removeItem(oEvent.getParameter(" listItem")))
致谢
GuoTai
嗨。 你们中的任何人找到了一个很好的解决方案吗?
自从原始帖子发布以来,现在已经有了新版本的odata模型。 有没有(新的)解决方案来解决问题。 像Radhika和Lau一样,我也遇到这种情况,用户可以在其中创建本地新模型条目,然后将其批量发送到后端。
将模型转换为json听起来很奇怪,而且很容易失败。
一周热门 更多>