PF状态在函数调用和工厂方法中的行为不同

2020-09-26 13:47发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)当我使用pf状态bu功能调用al...

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

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


当我使用pf状态bu功能调用alv的send to选项时,我复制了一个标准pf状态,并且我也获得了所有功能键,但是当我使用samr pf状态离子alv工厂方法时 它仅显示一些功能键并从菜单栏发送到选项也变灰。 请提供解决方案

4条回答
ZJXianG
2020-09-26 14:03
对我有用:

具有从SAPLKKBL的GUI状态STANDARD复制的PF_STATUS,以及此完整的可执行代码:

报告。
 数据gt_final sflight类型表。
 CLASS lcl_app定义。
   公共部分。
     CLASS-METHODS display_data。
 ENDCLASS。
 类别lcl_app实施。
   方法display_data。
     " cl_salv_table的对象参考
     数据:lr_alv类型参考cl_salv_table,
     lv_repid TYPE sy-repid,
     gr_functions类型参考cl_salv_functions,
     "列和列的对象引用
     l_cols_tab类型参考cl_salv_columns_table,
     l_col_tab类型参考cl_salv_column_table。
     常量:lc_pf_status TYPE sypfkey值'STANDARD_PF1'。
     lv_repid = sy-repid。

     " alv grid fm,传递您的内部表
     尝试。
         呼叫方法cl_salv_table =>工厂
           输入
             r_salv_table = lr_alv
           改变
             t_table = gt_final。
       捕捉cx_salv_msg。
     ENDTRY。
     lr_alv-> get_functions()-> set_all()。

     尝试。
       呼叫方法lr_alv-> set_screen_status
         出口
           报告= sy-repid
           pfstatus ='PF_STATUS'
           set_functions = lr_alv-> c_functions_all。
     ENDTRY。

     "表的字段目录
     呼叫方法lr_alv-> get_columns
       接收
         值= l_cols_tab。
     尝试。
         l_col_tab?= l_cols_tab-> get_column('CARRID')。
         呼叫方法l_col_tab-> set_short_text
           出口
             值='gc_vblen_s'。
         呼叫方法l_col_tab-> set_long_text
           出口
             值='gc_vblen_l'。
         呼叫方法l_col_tab-> set_output_length
           出口
             值= 30。
       捕捉cx_salv_not_found。
     ENDTRY。
     " lr_alv的呼叫显示方法
     lr_alv-> display()。
   终结法。
 ENDCLASS。
 选择开始。
   执行主要。
 表格主要。
   SELECT * FROM sflight进入表gt_final。
   lcl_app => display_data()。
 ENDFORM。
 

一周热门 更多>