基于代码的OData。 如何执行orderby

2020-08-27 15:22发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好 如何在基于代码的ODat...

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

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


你好

如何在基于代码的OData中实现orderby? 我尝试在SEGW中将基于CDS的OData公开为RDS,并使用Fiori Elements List Report创建UI。 然后,我在DPC_EXT类中重新定义GET_ENTITYSET,并且不调用超类。

这是我当前实施orderby的方式

选择....
       插入表@DATA(lit_data)
 ....

     "按
     呼叫方法/iwbep/cl_mgw_data_util => orderby
       出口
         it_order = it_order
       改变
         ct_data = lit_data。
 ....
 实现分页和内容

我可以调试并显示其内部表实际上已正确排序。 但是以某种方式,在"列表报告"应用程序中,记录的显示顺序与内部表中显示的顺序不同。

如何正确执行订单?

谢谢。

3条回答
SKY徐
2020-08-27 16:09

嗨,

使用it_order值时遇到了问题 。 但是我已经用io_tech_request_context-> get_orderby()可以阅读的内容代替了它。 我正在使用et_entityset进行操作:

数据:lt_order TYPE/iwbep/t_mgw_sorting_order。

     如果不是it_order为INITIAL。

       DATA(lt_orderby)= io_tech_request_context-> get_orderby()。

       在lt_orderby处分配ASSIGNING FIELD-SYMBOL()。
         在lt_order ASSIGNING FIELD-SYMBOL()后面加上首行。
         将对应的移动到。
       结局。

     /iwbep/cl_mgw_data_util => orderby(
         出口
           it_order = lt_order
         改变
           ct_data = et_entityset
       )。
     万一。
 

也许有帮助。

最诚挚的问候
Gregor

一周热门 更多>