如何通过应用多个过滤器通过控制器将EntitySet绑定到表?

2020-09-15 09:12发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我正在开发自定义sa...

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

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


大家好,

我正在开发自定义sapui5应用程序。 我需要根据组合框中的选择将两个不同的实体集与ui表绑定。 例如,如果我从组合框中选择Order/Notification,则需要分别将OrderSet/NotificationSet与表绑定。 这两个OrderSet和NotificationSet需要过滤器来限制数据。

我已使用以下代码对其进行绑定。 但会引发重复的ID错误。 但是我的代码中没有重复的ID。

 var fltr_NotificationType = new sap.ui.model.Filter(" Qmart",sap.ui.model.FilterOperator.EQ," M1");
 var fltr_TechnicalPlatz = new sap.ui.model.Filter(" TPLNR",sap.ui.model.FilterOperator.EQ," RR-R77-4-M/R");
 var fltr_StartDate1 = new sap.ui.model.Filter(" FromDate",sap.ui.model.FilterOperator.EQ,"(Datetime'2012-10-25T00:00:00')");;
 var fltr_EndDate1 =新sap.ui.model.Filter(" ToDate",sap.ui.model.FilterOperator.EQ,"(Datetime'2018-10-25T00:00:00')");



 oTable.setHeaderText(" Notofication List");


 var notificationTableColumn1 = new sap.m.Column(" id_table_notification_column_1",{
 标头:new sap.m.Label({
 文字:" Qmnum"
 })
 });
 oTable.addColumn(notificationTableColumn1);


 var notificationTableColumn2 = new sap.m.Column(" id_table_notification_column_2",{
 标头:new sap.m.Label({
 文字:" Qmart"
 })
 });
 oTable.addColumn(notificationTableColumn2);


 var notificationColumnList = new sap.m.ColumnListItem(" id_columnlist_notification",{
 类型:"有效"


 });
 var tableNotificationCell1 = new sap.m.Text(" id_table_notification_cell1",{
 文字:" {Qmnum}"
 });
 notificationColumnList.addCell(tableNotificationCell1);


 var tableNotificationCell2 = new sap.m.Text(" id_table_notification_cell2",{
 文字:" {Qmart}"
 });
 notificationColumnList.addCell(tableNotificationCell2);


 oTable.bindAggregation(" items",{
 路径:"/img/NotificationsSet",
 模板:notificationColumnList,
 过滤器:[fltr_NotificationType,fltr_TechnicalPlatz,fltr_StartDate1,fltr_EndDate1]
 });
 }


 


在检查的同时,

我遇到此错误。

添加重复ID为'id_table_notification_column_1'的元素


请帮助我解决他的问题。

谢谢

此致

JK。


2条回答
奄奄一息的小鱼
2020-09-15 10:18

我希望您不要重复调用该代码,这显然会导致重复错误。 如果根本要多次调用代码,则将表引用持久化为this.oTable = table(已定义),并持久化模板。 然后,下次调用它时,请删除聚合,然后将其与持久化的模板和新过滤器一起添加。如果此答案不能澄清您的问题,请提供适合您情况的步骤。

一周热门 更多>