ABAP常用弹出窗口函数

展示消息

  • POPUP_TO_CONFIRM:可以自由发挥
  • POPUP_TO_DECIDE_LOCKED_DATA:传入用户名,显示数据锁定信息
  • POPUP_DISPLAY_MESSAGE :显示消息
  • POPUP_TO_DISPLAY_TEXT 显示两行文本
  • RSDC_SHOW_MESSAGES_POPUP:弹出窗口,显示批量消息,同ME21N采购订单界面弹出
  • C14Z_MESSAGES_SHOW_AS_POPUP:同上相似

显示内表

  • popup_with_table
  • popup_with_table_display
  • POPUP_WITH_TABLE_DISPLAY_OK

交互式窗口

  • POPUP_GET_STRING:获取长文本
  • POPUP_GET_VALUES :弹出窗口获得特定类型的输入
  • REUSE_ALV_POPUP_TO_SELECT:弹出ALV选择窗口
  • POPUP_TO_SELECT_MONTH:月份选择窗口
  • POPUP_TO_DECIDE_LIST:单选项或多选(mark_flag=X,MARK_MAX大于1)

如果需要弹出较为复杂的内表,可以用实现,代码如下

FUNCTION z_very_simple_alv.
*"----------------------------------------------------------------------
*"*"Local interface:
*"  IMPORTING
*"    REFERENCE(I_START_COLUMN) TYPE  I DEFAULT 25
*"    REFERENCE(I_START_LINE) TYPE  I DEFAULT 6
*"    REFERENCE(I_END_COLUMN) TYPE  I DEFAULT 100
*"    REFERENCE(I_END_LINE) TYPE  I DEFAULT 10
*"    REFERENCE(I_TITLE) TYPE  STRING DEFAULT 'ALV'
*"    REFERENCE(I_POPUP) TYPE  FLAG DEFAULT ' '
*"  TABLES
*"      IT_ALV TYPE  STANDARD TABLE
*"----------------------------------------------------------------------

  DATA go_alv TYPE REF TO cl_salv_table.

  TRY.
      cl_salv_table=>factory(
        IMPORTING
          r_salv_table = go_alv
        CHANGING
          t_table      = it_alv[] ).

    CATCH cx_salv_msg.
  ENDTRY.

  DATA: lr_functions TYPE REF TO cl_salv_functions_list.

  lr_functions = go_alv->get_functions( ).
  lr_functions->set_all( 'X' ).

  IF go_alv IS BOUND.
    IF i_popup = 'X'.
      go_alv->set_screen_popup(
        start_column = i_start_column
        end_column  = i_end_column
        start_line  = i_start_line
        end_line    = i_end_line ).
    ENDIF.

    go_alv->display( ).

  ENDIF.

ENDFUNCTION.

猜你喜欢

转载自blog.csdn.net/u012232542/article/details/92569256
今日推荐