插入前检查ui5中是否已存在行的最佳方法

2020-09-27 06:01发布

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

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


大家好,

什么是在ui5表中插入新记录之前检查UI5表中是否已存在该行的最佳方法。

我以为我会通过执行oModel.Read检查要插入的记录,如果该记录存​​在,那么如果不插入新记录,则向用户发送消息。

您可以分享您的看法或方法吗?

谢谢,
Anurag

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

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


大家好,

什么是在ui5表中插入新记录之前检查UI5表中是否已存在该行的最佳方法。

我以为我会通过执行oModel.Read检查要插入的记录,如果该记录存​​在,那么如果不插入新记录,则向用户发送消息。

您可以分享您的看法或方法吗?

谢谢,
Anurag

付费偷看设置
发送
8条回答
打个大熊猫
1楼 · 2020-09-27 06:17.采纳回答

你好阿努拉格,

我的建议是使用模型检查与表关联的重复项。

我们在javascript中具有array.map函数。

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/map

 oTableModel = this.getModel(" TableModel");
 oTableModel.getProperty("/img/Items");
 var iIndex = oTableModel.map(function(img){
 返回img.id;
 })。indexOf(pass_inserted_Id);
 

如果该模型已经包含相同的ID,它将返回true。

使用此方法可以避免在表中重复。

clever101
2楼-- · 2020-09-27 06:23

您确实可以通过将记录的键字段作为参数传递给read函数来对后端执行读取操作,如果您在响应中得到记录,则表明该记录已经存在。 否则调用create函数在后端中创建记录。

小灯塔
3楼-- · 2020-09-27 06:19

对于视图控件ex:表中的数据,我们可以通过控件id或绑定到控件的模型来检查数据。

我建议检查模型数据,因为基于模型的条目,将在控件中创建行。

如果模型为空,则表中没有行。

此致

Sharath

hongfeng1314
4楼-- · 2020-09-27 06:39

对..就像我想的一样。 如果有其他方法可以做到,我也欢迎您。

ZJXianG
5楼-- · 2020-09-27 06:23

您好,

您可以使用输入的密钥进行确认。 如果您的表已绑定到OData模型,则可以检查该代码是否存在该条目:

 var entry = myOdataModel.getProperty("/img/myService(key1 ='value1',key2 ='value2')"); 

entry 变量将告诉您是否有东西。

致谢

宇峰Kouji
6楼-- · 2020-09-27 06:19

谢谢..我将应用此解决方案并让您知道。

hengyuye
7楼-- · 2020-09-27 06:29

是否有任何数据变量(在行中) 哪个独特? 如果是,则获取表中的现有数据/行。

通过检查该模型中Key变量的任何重复值来遍历它。 如果存在重复项,则不要创建行。

一周热门 更多>