Sap.ui.Table->初始绑定后更改操作模式

2020-09-02 17:17发布

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

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

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


大家好!

我在XML视图中定义了表

 <表
        id =" tableHu"
        selectionMode =" MultiToggle"
        visibleRowCount =" 12"
        enableSelectAll =" false"
        enableBusyIndi​​cator =" true">
 

然后在相应的控制器中,在" AfterRendering"事件中,我进行了绑定,并传递了一些过滤器

 onAfterRendering:function(){
   var oTable = this.getView()。byId(" tableHu");
    var oFilters = [new sap.ui.model.Filter(" Matnr"," EQ"," Test")]];
   
   oTable.bindRows({
     路径:" huData>/ZodataHuListSet",
     过滤器:oFilters,
     参数:{
        operationMode:sap.ui.model.odata.OperationMode.Auto
     }
   });
   var oDataModel = oTable.getModel(" huData");

   },
 

现在,问题是:如果我保持OperationMode = Auto(或Server),则每次执行过滤器时,我都会调用Sap系统,并希望避免使用它,因为在我的场景中,我有大量数据,并且 在我看来,在客户端上工作更正确(我仍在猜测为什么SAP建议相反,并且任何解释都将受到赞赏,因为它与经典ABAP开发的相反)。

请求

在绑定行之后,有一种方法可以将OperationMode更改为Client? 如果我将更改放在行后

 var oDataModel = oTable.getModel(" huData");
 

过滤器未通过IT_FILTER_SELECT_OPTIONS表传递给SAP

当我第一次加载数据以减少行数,然后在客户端上操作其他过滤器/排序器时,我希望通过过滤器。

9条回答
Bunny_CDM
2020-09-02 17:58

感谢您的谨慎和解释 @Thorsten Hochreuter 。 真的很有帮助!

@Simone Milesi 请遵循Thorsten的建议,并删除我仍然建议的任何代码。 另外,我要求您将Thorsten的回答标记为正确答案,如果有人有相同的要求,这将来会有所帮助。


谢谢,祝您有美好的一天。


问候。

Sai。

一周热门 更多>