点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
需要帮助来添加对自定义列的排序/过滤功能,这些自定义列添加到了管理客户订单项扩展fiori应用程序中添加到项目的项目中。
在项目中添加了两个自定义字段ZTEST1和ZTEST2。 它已正确映射。 数据正确无误。
但是 ZTEST1和ZTEST2的排序/过滤器功能无法正常工作。
在扩展类方法中进行的更改。
要根据添加的Z *字段进行排序,我们认为在此方法调用之后对它进行显式排序。
下面的代码只是一种尝试过的方法。
ZCUSTOMER_LINE_DPC_EXT-> ITEMSET_GET_ENTITYSET。
"-管理客户行项目-AddColumn和过滤器
DATA(lt_order)= it_order []。
在lt_order分配字段符号(
将
转换
ENDLOOP。
" –检查lt_order是否具有ZTEST1的记录,如果是,则清除该记录并在此方法的末尾再次排序。
读表lt_order使用KEY属性='ZTEST1'
order ='ASC'进入DATA(ls_order)。
如果sy-subrc是INITIAL。
DATA(lt_order_tmp)= lt_order。
清除lt_order。
ENDIF。
"-调用获取订单项的方法。
尝试。
呼叫方法超级-> itemset_get_entityset
导出
iv_entity_name = iv_entity_name
iv_entity_set_name = iv_entity_set_name
iv_source_name = iv_source_name
选择它 br> is_paging = is_paging
it_key_tab = it_key_tab
it_navigation_path = it_navigation_path
it_order = lt_order" it_order
iv_filter_string = iv_filter_string
iv_search_string = iv_search_string = io_tech_request_context = io_tech_request_context"实际问题
导入
et_entityset = et_entityset
es_response_context = es_response_context。
CATCH_iwbep/cx
捕获/iwbep/cx_mgw_tech_exception。
ENDTRY。
如果et_entityset不是INITIAL。
lt_entityset [] = et_entityset []。
删除lt_entityset分支在哪里。
按分支升序排序lt_entityset。
从lt_entityse删除相邻的重复项 t COMPARING分支。
如果lt_entityset不初始。
SELECT kunnr,
sortl,
name1
从kna1
到表@DATA(lt_sortl)
中用于所有输入 @lt_entityset
在哪里kunnr EQ @ lt_entityset-branch。
如果sy-subrc EQ0。
遍历et_entityset ASSIGNING FIELD-SYMBOL(
读取表lt_sortl ASSIGNING FIELD -SYMBOL(
如果sy-subrc EQ 0.
ENDIF。
ENDLOOP。
"如果lt_order初始且lt_order_tmp不是初始。
SORT et_entityset通过zztest1升序。
ENDIF。
ENDIF。
ENDIF。
ENDIF。
现在真正的问题: io_tech_request_context"真正的问题。
此参数包含前端FIORI传递的所有数据和操作。 因此,即使清除IT_ORDER之后,仍会根据 io_tech_request_context 参数数据进行排序。
这是通过标准运行时方法传递给我们的方法的。 我检查了他们。
如果我可以更新此IO_TECH_REQUEST_CONTEXT,我认为我将能够对自定义字段进行排序或过滤。
1)我如何操作该对象参数? 对此需要帮助。
其他
2)如何将FILTER/SORT功能添加到添加到项的自定义字段ZTEST1和ZTEST2中?
1。 由于IO_TECH_REQUEST_CONTEXT正在导入,所以您无法操作。
2。 OData调用是否具有带有自定义字段的orderby子句?
hi,
您找到解决方案了吗?
就我而言,我看到odata在IO_TECH_REQUEST_CONTEXT中按顺序或按顺序排序。 当我的代码运行以红色请求的字段时,它们在运行时是不可能的。
此致
Soumya
嗨Ankit,
感谢您的回复!
我确实知道这是一个引用接口的导入参数。 在运行时,该参数具有所有参数和值,这些参数和值将用于进一步解决所提出的请求。
我的目的是在本地对象中传递参数,创建对象..对其进行操作并将其传递回去。
但是问题是接口中的方法没有更新我所知道的参数的方法。
这里有order by子句,但在io_tech_request_context中也可以找到它,这使得无用的操纵命令。
仍然感谢!
一周热门 更多>