ALV下拉框

使用set_drop_down_table 方法
ALV结构增加 要显示Listbox的字段 举例:Listbox
fieldcat字段设置
fieldcat-fieldname = ‘Listbox’
fieldcat-edit = 'X'.
fieldcat-drdn_field = 'DD_HANDLE'.
fieldcat-drdn_hndl  = '1'.

*定义存储下拉列表的数据
DATA :gt_ddval TYPE lvc_t_drop,
      gw_ddval TYPE lvc_s_drop.
*EVENT
DATA: i_events  TYPE slis_t_event,
      wa_events TYPE slis_alv_event.    

  wa_events-name = 'CALLER_EXIT'.
  wa_events-form = 'SET_LIST'.
  APPEND wa_events TO i_events.

*设置下拉列表,Grid和内表链接
*---------------------------------------------------------------------*
FORM set_list USING ls_caller_exit TYPE slis_data_caller_exit.
  DATA: o_grid TYPE REF TO cl_gui_alv_grid.
  CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
    IMPORTING
      e_grid = o_grid.

  CALL METHOD o_grid->set_drop_down_table
    EXPORTING
      it_drop_down = gt_ddval.

ENDFORM.                    "CALLER_EXIT

*生成下拉列表
*---------------------------------------------------------------------*
FORM creat_dropdown_values.

  CLEAR gw_ddval.
  gw_ddval-handle = '1'.
  gw_ddval-value  = '测试1'.
  APPEND gw_ddval TO gt_ddval.
    CLEAR gw_ddval.
  gw_ddval-handle = '1'.
  gw_ddval-value  = '测试2'.
  APPEND gw_ddval TO gt_ddval.
    CLEAR gw_ddval.
  gw_ddval-handle = '1'.
  gw_ddval-value  = '测试3'.
  APPEND gw_ddval TO gt_ddval.
  
  ENDFORM.                    " creat_dropdown_values


OOALV  
  FORM creat_dropdown_values.
  CALL METHOD o_grid->set_drop_down_table
        EXPORTING
          it_drop_down = gt_ddval.

    CALL METHOD  o_grid->set_table_for_first_display
      EXPORTING
        is_layout            = is_layout
        i_save               = 'A'
        is_variant           = is_variant
        it_toolbar_excluding = it_toolbar_excluding
      CHANGING
        it_fieldcatalog      = it_fieldcatalog[]
        "it_sort             = it_sort[]
        it_outtab            = gt_Alv[].

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值