组合框选择SAP UI5

2020-08-18 02:13发布

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

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


嗨!

组合框有一些问题。 如何避免重复? 我有" Layout" = *的行,并且在"组合"框中有很多*。 关于使用此布局获取行的另一个问题。

链接到scrin

https://i.imgsafe.org/7114ae3880.png

我的过滤器不起作用。 也许你能告诉我我的错误在哪里?

},
         onChange:function(oEvent){
             var oTable = this.getView()。byId(" idStats");
            //获取组合框的值
             oTable.setShowOverlay(true);
         },
         onReset:function(oEvent){
            //重置组合框的值和表的初始状态
             var oTable = this.getView()。byId(" idStats");
             var oBinding = oTable.getBinding(" items");
             oBinding.filter([]);
             oTable.setShowOverlay(false);
             this.byId(" oComboBox")。setSelectedItem(null);
         },
         onSearch:function(oEvent){
             var oTable = this.getView()。byId(" idStats");
             var comboBoxValue = this.byId(" oComboBox")。getValue(),
                 oBinding = oTable.getBinding(" items"),
                 oFilter;
             如果(comboBoxValue || comboBoxValue ===""){
                 oTable.setShowOverlay(false);
                 oFilter = new Filter(" Layout"," EQ",comboBoxValue);
                 oBinding.filter([oFilter]);
             }
         },

 

提前谢谢!

此致

克里斯蒂娜

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

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


嗨!

组合框有一些问题。 如何避免重复? 我有" Layout" = *的行,并且在"组合"框中有很多*。 关于使用此布局获取行的另一个问题。

链接到scrin

https://i.imgsafe.org/7114ae3880.png

我的过滤器不起作用。 也许你能告诉我我的错误在哪里?

},
         onChange:function(oEvent){
             var oTable = this.getView()。byId(" idStats");
            //获取组合框的值
             oTable.setShowOverlay(true);
         },
         onReset:function(oEvent){
            //重置组合框的值和表的初始状态
             var oTable = this.getView()。byId(" idStats");
             var oBinding = oTable.getBinding(" items");
             oBinding.filter([]);
             oTable.setShowOverlay(false);
             this.byId(" oComboBox")。setSelectedItem(null);
         },
         onSearch:function(oEvent){
             var oTable = this.getView()。byId(" idStats");
             var comboBoxValue = this.byId(" oComboBox")。getValue(),
                 oBinding = oTable.getBinding(" items"),
                 oFilter;
             如果(comboBoxValue || comboBoxValue ===""){
                 oTable.setShowOverlay(false);
                 oFilter = new Filter(" Layout"," EQ",comboBoxValue);
                 oBinding.filter([oFilter]);
             }
         },

 

提前谢谢!

此致

克里斯蒂娜

付费偷看设置
发送
4条回答
shere_lin
1楼-- · 2020-08-18 03:05

组合框中显示的内容由模型控制。 因此,要么使用服务提供的不同列表,要么创建仅包含不同值的本地json模型。 触发onSearch时您看到打来的电话吗?

关于,

Jamie

SAP-技术RIG

派大星 ヾ
2楼-- · 2020-08-18 02:55

Obart是可过滤的。 我的组合框是一个表格过滤器。 我尝试按照此示例进行操作

https://sapui5.hana.ondemand.com/sdk/explored.html#/sample/sap.m.sample.TableOutdated/preview

例如,我选择KS,我应该只用KS获得所有行。

Nan4612
3楼-- · 2020-08-18 02:58

您需要检查组合框实体结果,您需要处理来自后端/网关的重复记录,可能是因为您需要同时为网关的密钥和文本应用密钥。

对于过滤器:

可能存在多余的空格,一旦遇到这种情况,您可以尝试combobox.getValue()。trim()或

可能是布局字段在网关中不可过滤。 或者

如果您按组合框键进行过滤,则可以尝试从combobox.getValue()更改为combobox.getSelectedKey()。

关于

Akhilesh

追夢秋陽
4楼-- · 2020-08-18 02:55

感谢您的回答。 问题有点不同。 我的这张桌子有组合框。 我找到了避免重复的方法。 我取了另一个值并创建了var itemData = new Array();

但是,不幸的是,我的组合框仍然无法正常工作。 我实际上不能理解。 不幸的是,getSelectedKey不起作用:(

我的代码

},
     onChange:function(oEvent){
        //获取组合框的值
         var oTable = this.getView()。byId(" idStats");
         oTable.setShowOverlay(true);
     },

     onSearch:function(oEvent){
         var oTable = this.getView()。byId(" idStats");
         var comboBoxValue = this.byId(" oComboBox")。getValue(),
             oBinding = oTable.getBinding(" items"),
             oFilter;
         如果(comboBoxValue || comboBoxValue ===""){
             oTable.setShowOverlay(false);
             oFilter = new sap.ui.model.Filter(" Obart"," EQ",comboBoxValue);
             oBinding.filter([oFilter]);

            //获取组合框的值

         }
         oTable.setShowOverlay(true);

     },
     onReset:function(oEvent){
        //重置组合框的值和表的初始状态
         var oTable = this.getView()。byId(" idStats");
         var oBinding = oTable.getBinding(" items");
         oBinding.filter([]);
         oTable.setShowOverlay(false);
         this.byId(" oComboBox")。setSelectedItem(null);
     },

     handleViewSettingsDialogBu​​ttonPressed:function(oEvent){
         如果(!this._oDialog){
             this._oDialog = sap.ui.xmlfragment(" Statusverwaltung3.view.Dialog",this);
         }
        //切换紧凑样式
         jQuery.sap.syncStyleClass(" sapUiSizeCompact",this.getView(),this._oDialog);
         this._oDialog.open();

     },

 

一周热门 更多>