点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好!
您能帮我一下,也许告诉我OData过滤器如何工作? 不幸的是,表过滤器不起作用... ABAP后端中的这个问题应该由我决定吗? 还是您看到一些代码错误? 在元数据文件中,我的数据不可过滤没有任何意义...
分组依据正在工作
但是上升和下降都行不通....
在软件工具中,有消息告知此请求有效...
代码示例...
return Controller.extend(" Statusverwaltung3.controller.Table",{ _oDialog:null, onInit:function(){ var itemData = new Array(); itemData.push({ 键:" 01", 文字:" KS" }); itemData.push({ 键:" 02", 文字:" OR" }); itemData.push({ 键:" 03", 文字:" PC" }); itemData.push({ 键:" 04", 文字:" PR" }); var oData = { 状态: [{ 名称:"优惠", 度量:" 0", 编号:1 },{ 名称:"在Bearbeitung", 度量:" 19", id:2 },{ 名称:'Geplant', 度量:" 13", id:3 },{ 名称:" Abgeschlossen", 度量:" 0", id:4 },{ 名称:"Geprüft", 度量:" 0", 编号:5 },{ 名称:" Freigegeben", 度量:" 0", 编号:6 }] }; var model1 = new sap.ui.model.json.JSONModel(); model1.setData(oData); var comboSelMdl = new sap.ui.model.json.JSONModel({ SelKey:" 01", Items:itemData }); this.getView()。setModel(comboSelMdl," comboSelMdl"); this.mGroupFunctions = { Obart:function(oContext){ var obart = oContext.getProperty(" Obart"); 返回{ 关键:欧巴特, 文字:obart }; }, Pjahr:function(oContext){ var pjahr = oContext.getProperty(" Pjahr"); 返回{ 关键:pjahr, 文字:pjahr }; }, 角:function(oContext){ var Kokrs = oContext.getProperty(" Kokrs"); 如果(Kokrs <= 1000){ var key =" LE100"; var text =" 1000" +"或更少"; } else if(Kokrs <= 1000){ 键=" BT100-1000"; text =" 100到1000之间"; }其他{ 键=" GT1000"; text ="大于1000"; } 返回{ 关键:Kokrs, 文字:Kokrs }; } }; }, }, handleViewSettingsDialogButtonPressed:function(oEvent){ 如果(!this._oDialog){ this._oDialog = sap.ui.xmlfragment(" Statusverwaltung3.view.Dialog",this); } //切换紧凑样式 jQuery.sap.syncStyleClass(" sapUiSizeCompact",this.getView(),this._oDialog); this._oDialog.open(); }, handleConfirm:function(oEvent){ var oView = this.getView(); var oTable = oView.byId(" idStats"); var mParams = oEvent.getParameters(); var oBinding = oTable.getBinding(" items"); //将排序器应用于绑定 //(分组先于排序) var aSorters = []; 如果(mParams.groupItem){ var sPath = mParams.groupItem.getKey(); var bDescending = mParams.groupDescending; var vGroup = this.mGroupFunctions [sPath]; aSorters.push(新sap.ui.model.Sorter(sPath,bDescending,vGroup)); } var sPath = mParams.sortItem.getKey(); var bDescending = mParams.sortDescending; aSorters.push(新sap.ui.model.Sorter(sPath,bDescending)); oBinding.sort(aSorters); } /** *在实例化控制器及其控制器时调用
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); },
那么,有一些错误,或者我应该首先在SAP系统中进行过滤吗?...。我不知道...组合框也不起作用...
提前谢谢!
此致
克里斯蒂娜
(51.6 kB)
你好克里斯蒂娜,
过滤器在后端完成。 如果您使用的是Gateway,请按照下面的链接获取更多信息。
https://blogs.sap.com/2013/06/20/how-to-develop-query-options-for-an-odata-service-using-code-based-implementation
您是否为过滤器实现了后端?
致谢
西蒙(Simon)
一周热门 更多>