在sap.m.Table中添加带有延迟请求组的多行

2020-09-28 09:59发布

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

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


专家们,

为了测试目的,我已经实现了一个非常简单的应用程序,其中包含一个包含用户名和电子邮件地址的简单响应表:

控制器逻辑也非常简单。 它只包含按钮事件处理程序。

表数据来自ABAP后端,我使用了具有双向绑定的Odata模型来绑定列表。 当更新现有行的单个属性(例如,电子邮件地址)时,后端更新工作正常。 我的"保存按钮事件"处理程序只需提交所有更改(请参见上面的清单)。 现在,我想一次添加几行并一起提交。 至少在用户输入键字段" Username"之前,无法在后端创建记录。 当按下"添加"按钮时,我的逻辑实际上添加了新行:

当我在这些新行中输入新数据并提交更改时,所有内容都会正确保存。 但是:如果我对旧行(最初来自BE)进行任何更改,则行将消失。 我做了一些调试,由于现有行的更改而导致的模型更新触发了表的 列表绑定的刷新。 删除所有最初不是来自BE的表行。 当我将odata服务更改为"单向绑定"并在模型上调用任何setProperty方法时,也会发生同样的情况。 因此,双向绑定不是问题。

有人知道如何解决这个问题吗?

致谢

Tobias

(8.2 kB)

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

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


专家们,

为了测试目的,我已经实现了一个非常简单的应用程序,其中包含一个包含用户名和电子邮件地址的简单响应表:

控制器逻辑也非常简单。 它只包含按钮事件处理程序。

表数据来自ABAP后端,我使用了具有双向绑定的Odata模型来绑定列表。 当更新现有行的单个属性(例如,电子邮件地址)时,后端更新工作正常。 我的"保存按钮事件"处理程序只需提交所有更改(请参见上面的清单)。 现在,我想一次添加几行并一起提交。 至少在用户输入键字段" Username"之前,无法在后端创建记录。 当按下"添加"按钮时,我的逻辑实际上添加了新行:

当我在这些新行中输入新数据并提交更改时,所有内容都会正确保存。 但是:如果我对旧行(最初来自BE)进行任何更改,则行将消失。 我做了一些调试,由于现有行的更改而导致的模型更新触发了表的 列表绑定的刷新。 删除所有最初不是来自BE的表行。 当我将odata服务更改为"单向绑定"并在模型上调用任何setProperty方法时,也会发生同样的情况。 因此,双向绑定不是问题。

有人知道如何解决这个问题吗?

致谢

Tobias

(8.2 kB)
付费偷看设置
发送
4条回答
风早神人
1楼-- · 2020-09-28 10:39
如果我的内存正确,则不支持直接在表中添加一行。

SKY徐
2楼-- · 2020-09-28 10:32

您好,

这真的意味着我必须在后端逐行创建单个实体吗?

致谢

Tobias

为方便处理数据,请将oData数据加载到本地JSON模型。

管理本地JSON模型以添加多个条目。 验证用户输入并准备要更新到后端的JSON。

在保存时,将本地JSOn模型传递到更新数据的oData服务,以推送该模型。

何必丶何苦呢
4楼-- · 2020-09-28 10:44

嗨,Sharath M G,

那也是我的想法。 我只是不想在我的最初文章中提到可能采用不同的方法。 我的生产性应用程序(不是上面显示的应用程序)中的主要问题是我正在使用智能表控件。 它很大程度上基于OData元数据,我不确定是否可以使其与JSON模型一起使用。 此外,此方法可能非常麻烦,因为我需要跟踪所有更改。 我确实需要知道创建/删除/更改了哪些记录,才能知道需要调用哪个OData方法。

致谢

Tobias

一周热门 更多>