点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家们,
我遇到了过滤器代码中的一个问题,该问题给出了错误的搜索结果。 使用格式化程序功能处理UI值时,就会发生此问题。 我已经使用json文件加载数据并进行了测试。 如果您在状态字段中搜索值为Keep或Remove,但在odata/json中则值为Y或N或""。 它应该提供相关的项目列表,但是不起作用。 您可能会在zip文件中获得完整的代码。 如果您需要更多详细信息,请告诉我。 请建议如何处理这种情况,在这种情况下,我从oData/Jason获取了不同的数据,但是在UI上进行了操作以获取不同的结果,但是如何进行搜索。
您可以在下面的URL中获得相同的zip文件。 您可以下载文件并导入到Web进行测试。
Git中心网址: https://github.com/rkmishra2703/RK -
XML代码:控制器代码: onSearch:function(oEvent){ var that = this; var sQuery = oEvent.getSource()。getValue(); //var sQuery = oEvent.getParameter(" newValue"); var oList = that.getView()。byId(" idTable"); var oBinding = oList.getBinding(" items"); 如果(sQuery){ var aFilter = []; aFilter.push(new Filter(" MAN_USER_ID",FilterOperator.Contains,sQuery)); aFilter.push(new Filter(" USER_ID",FilterOperator.Contains,sQuery)); aFilter.push(new Filter(" EMP_FIRST_NAME",FilterOperator.Contains,sQuery)); aFilter.push(new Filter(" T_CODE",FilterOperator.Contains,sQuery)); aFilter.push(new Filter(" T_CODE_DSCRIPTN",FilterOperator.Contains,sQuery)); aFilter.push(new Filter(" TEAMLEAD_FUNAREA",FilterOperator.Contains,sQuery)); aFilter.push(new Filter(" MAN_APPROVE",FilterOperator.EQ,sQuery)); aFilter.push(new Filter(" TEAMLEAD_APPR",FilterOperator.EQ,sQuery)); aFilter.push(new Filter(" TEAMLEAD_APPR_ID",FilterOperator.Contains,sQuery)); oBinding.filter(new Filter({ 过滤器:aFilter, 和:false })); }其他{ oBinding.filter([]); } } 格式化功能: availableColor:函数(available,available1){ if(available ==="" && available1 ===" Y"){ 返回"保持"; } else if(available ===" Y" && available1 ===" Y"){ 返回"保持"; }否则if(available ===" N" && available1 ===" Y"){ 返回"保持"; }否则if(available ===" Y" && available1 ===""){ 返回"保持"; }否则if(available ==="" && available1 ===""){ 返回""; } else if(available ==="" && available1 ===" N"){ 返回"删除"; } else if(available ===" N" && available1 ===" N"){ 返回"删除"; } if if(available ===" Y" && available1 ===" N"){ 返回"删除"; }其他{ 返回"删除"; } }
您好 Raju Rajan
Formatter仅用于格式化UI中的数据,而且 仅表格中可见的项目。 它将不会更新模型。
因此您可以为此
1。 绑定数据之前,请在模型中手动更新数据,然后将其绑定回表。 否则,如果是odata直接绑定到表,请让odata/后端团队为此提供一个附加字段。
2。 这不是您情况下的最佳方法,并且有点复杂:在搜索时,检查值是否为" keep",然后对availableColor所做的事情进行反向推导,然后用这些值填充过滤器。
-Mahesh
感谢Mahesh
我想添加有助于解决该问题的URL。 如果有人需要它可能会有所帮助。
https://stackoverflow .com/questions/38922998/将属性添加到对象数组
一周热门 更多>