ABAP Dropdown List

本文介绍ABAP中DropdownList控件的使用方法,包括参数设置、手动添加选项及事件处理,并展示了如何在ALV Grid中实现下拉列表功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ABAP Dropdown List
2011年05月14日
  http://hi.baidu.com/jiaoying7c/blog/item/e274f9c2c 2e989190ff477be.html http://wfly2004.blog.163.com/blog/static/117642720 0988114845276/ REPORT : Dropdown List 1. 在选择屏幕上添加下拉列表控件, 代码如下:
  PARAMETERS: auart LIKE vapma-auart AS LISTBOX VISIBLE LENGTH 6
  DEFAULT 'ZESC' OBLIGATORY.
  2. 手工添加下拉列表数据, 代码如下:
  *&------------------------------------------------ ---------------------*
  *& Form fill_data_to_auart
  *&------------------------------------------------ ---------------------*
  * to fill data for combo auart.
  *------------------------------------------------- ---------------------*
  FORM fill_data_to_auart .
  TYPE-POOLS: vrm . "存放combobox内容的type pool
  DATA: name TYPE vrm_id, " list box的名称
  list TYPE vrm_values, " list box的值
  value LIKE LINE OF list . " list box的结构
  REFRESH list .
  DEFINE fill_list.
  value-key = &1. "个就是变量P_LIST的值
  value-text = &2. "这个是text
  append value to list.
  END-OF-DEFINITION.
  fill_list 'ZESC' 'ZESC'.
  fill_list 'ZESE' 'ZESE'.
  fill_list 'ZEDN' 'ZEDN'.
  fill_list 'ZEEN' 'ZEEN'.
  fill_list 'ZPBB' 'ZPBB'.
  fill_list 'ZPBE' 'ZPBE'.
  fill_list 'ZPDN' 'ZPDN'.
  fill_list 'ZPEN' 'ZPEN'.
  fill_list 'ZOCS' 'ZOCS'.
  fill_list 'ZASC' 'ZASC'.
  fill_list 'ZASE' 'ZASE'.
  fill_list 'ZADN' 'ZADN'.
  fill_list 'ZAEN' 'ZAEN'.
  "---〉调用函数显示listbox里面的值
  CALL FUNCTION 'VRM_SET_VALUES'
  EXPORTING
  id = 'AUART' " PARAMETERS's Name
  values = list.
  ENDFORM. " fill_data_to_auart
  3. 在 AT SELECTION-SCREEN OUTPUT. 事件中填充数据,代码如下:
  PERFORM fill_data_to_auart.
  以上代码,ECC6环境下通过。
  ALV 字段下拉列表
  http://www.abaptech.com/2010/08/alv%e4%b8%89%e4%b8 %aa%e4%b8%8b%e6%8b%89%e5%88%97%e8%a1%a8%e5%88%97%e8 %81%94%e5%8a%a8/
  http://blogold.chinaunix.net/u2/68743/showart_6892 92.html 代码如下:
  REPORT.
  ************************************************** **********************
  * DATEN DEFINITION *
  ************************************************** **********************
  TYPE-POOLS: slis.
  TYPES:
  BEGIN OF t_data,
  matnr TYPE makt-matnr,
  maktx TYPE makt-maktx,
  spras TYPE makt-spras,
  END OF t_data,
  BEGIN OF t_alv,
  matnr TYPE makt-matnr,
  maktx TYPE makt-maktx,
  spras TYPE makt-spras,
  dd_handle TYPE int4,
  END OF t_alv.
  DATA:
  gt_fieldcatalog TYPE lvc_t_fcat,
  gw_fieldcatalog TYPE lvc_s_fcat,
  *定义存储下拉列表的数据
  gt_ddval TYPE lvc_t_drop,
  gw_ddval TYPE lvc_s_drop,
  gt_events TYPE slis_t_event,
  gw_events TYPE slis_alv_event,
  gt_data TYPE TABLE OF t_data,
  gw_data TYPE t_data,
  gt_alv TYPE TABLE OF t_alv,
  gw_alv TYPE t_alv,
  g_repid TYPE sy-repid VALUE sy-repid.
  ************************************************** **********************
  * SELECTION SCREEN *
  ************************************************** **********************
  SELECT-OPTIONS: s_matnr FOR gw_data-matnr .
  ************************************************** **********************
  * START-OF-SELECTION *
  ************************************************** **********************
  START-OF-SELECTION.
  SELECT matnr maktx spras
  INTO TABLE gt_data up to 50 rows
  FROM makt
  WHERE matnr IN s_matnr
  and SPRAS = 'EN'.
  LOOP AT gt_data INTO gw_data.
  MOVE-CORRESPONDING gw_data TO gw_alv.
  APPEND gw_alv TO gt_alv.
  ENDLOOP.
  PERFORM creat_fieldcat.
  PERFORM creat_dropdown_values.
  PERFORM creat_event_exits.
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
  EXPORTING
  i_callback_program = g_repid
  it_fieldcat_lvc = gt_fieldcatalog
  it_events = gt_events
  TABLES
  t_outtab = gt_alv.
  *------------------------------------------------- --------------------*
  * 设置输出字段的格式
  *------------------------------------------------- --------------------*
  FORM creat_fieldcat.
  CLEAR gw_fieldcatalog.
  gw_fieldcatalog-fieldname = 'MATNR'.
  gw_fieldcatalog-ref_field = 'MATNR'.
  gw_fieldcatalog-ref_table = 'MAKT'.
  APPEND gw_fieldcatalog TO gt_fieldcatalog.
  CLEAR gw_fieldcatalog.
  gw_fieldcatalog-fieldname = 'MAKTX'.
  gw_fieldcatalog-ref_field = 'MAKTX'.
  gw_fieldcatalog-ref_table = 'MAKT'.
  APPEND gw_fieldcatalog TO gt_fieldcatalog.
  CLEAR gw_fieldcatalog.
  gw_fieldcatalog-fieldname = 'SPRAS'.
  gw_fieldcatalog-OUTPUTLEN = '7'.
  gw_fieldcatalog-dd_outlen = '7'.
  gw_fieldcatalog-intlen = '2'.
  gw_fieldcatalog-inttype = 'C'.
  gw_fieldcatalog-coltext = 'Language'.
  gw_fieldcatalog-tooltip = 'Language'.
  gw_fieldcatalog-seltext = 'Language'.
  gw_fieldcatalog-drdn_field = 'DD_HANDLE'.
  gw_fieldcatalog-EDIT = 'X'.
  APPEND gw_fieldcatalog TO gt_fieldcatalog.
  ENDFORM. " creat_fieldcat
  *------------------------------------------------- --------------------*
  *根据物料的所有的语言生成不同的生成下拉列表
  *------------------------------------------------- --------------------*
  FORM creat_dropdown_values.
  DATA: l_spras TYPE makt-spras,
  l_count TYPE i.
  LOOP AT gt_alv INTO gw_alv.
  ADD 1 TO l_count.
  SELECT spras
  INTO l_spras
  FROM makt
  WHERE matnr = gw_alv-matnr.
  CLEAR gw_ddval.
  gw_ddval-handle = l_count.
  gw_ddval-value = l_spras.
  APPEND gw_ddval TO gt_ddval.
  ENDSELECT.
  CLEAR gw_ddval.
  gw_ddval-handle = l_count.
  gw_ddval-value = ' '.
  APPEND gw_ddval TO gt_ddval.
  *设置对应
  gw_alv-dd_handle = l_count.
  MODIFY gt_alv FROM gw_alv.
  ENDLOOP.
  ENDFORM. " creat_dropdown_values
  *------------------------------------------------- --------------------*
  * Form creat_event_exits
  *------------------------------------------------- --------------------*
  FORM creat_event_exits .
  gw_events-name = 'CALLER_EXIT'.
  gw_events-form = 'CALLER_EXIT'.
  APPEND gw_events TO gt_events.
  ENDFORM. " creat_event_exits
  *------------------------------------------------- --------------------*
  *设置下拉列表,使Grid和内表能链接上
  *------------------------------------------------- --------------------*
  FORM caller_exit USING ls_data TYPE slis_data_caller_exit.
  DATA: l_ref_alv TYPE REF TO cl_gui_alv_grid.
  CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
  IMPORTING
  e_grid = l_ref_alv.
  CALL METHOD l_ref_alv->set_drop_down_table
  EXPORTING
  it_drop_down = gt_ddval.
  ENDFORM. "CALLER_EXIT 原文地址 http://blog.youkuaiyun.com/CompassButton/archive/2008/04 /26/2330532.aspx
标题基于PHP + JavaScript的助眠小程序设计与实现AI更换标题第1章引言介绍助眠小程序的研究背景、意义,以及论文的研究内容和创新点。1.1研究背景与意义阐述助眠小程序在当前社会的重要性和应用价。1.2国内外研究现状分析国内外在助眠小程序方面的研究进展及现状。1.3论文研究内容与创新点概述论文的主要研究内容和创新之处。第2章相关理论基础介绍助眠小程序设计与实现所涉及的相关理论基础。2.1PHP编程技术阐述PHP编程技术的基本概念、特点和在助眠小程序中的应用。2.2JavaScript编程技术介绍JavaScript编程技术的核心思想、作用及在小程序中的实现方式。2.3小程序设计原理讲解小程序的设计原则、架构和关键技术。第3章助眠小程序需求分析对助眠小程序进行详细的需求分析,为后续设计与实现奠定基础。3.1用户需求调研用户需求调研的过程和方法,总结用户需求。3.2功能需求分析根据用户需求,分析并确定助眠小程序的核心功能和辅助功能。3.3性能需求分析明确助眠小程序在性能方面的要求,如响应速度、稳定性等。第4章助眠小程序设计详细阐述助眠小程序的设计方案,包括整体架构、功能模块和界面设计。4.1整体架构设计给出助眠小程序的整体架构设计思路和实现方案。4.2功能模块设计详细介绍各个功能模块的设计思路和实现方法。4.3界面设计阐述助眠小程序的界面设计风格、布局和交互设计。第5章助眠小程序实现与测试讲解助眠小程序的实现过程,并进行详细的测试与分析。5.1开发环境搭建与配置介绍开发环境的搭建过程和相关配置信息。5.2代码实现与优化详细阐述助眠小程序的代码实现过程,包括关键技术的运用和优化措施。5.3测试与性能分析对助眠小程序进行全面的测试,包括功能测试、性能测试等,并分析测试结果。第6章结论与展望总结论文的研究成果,展望未来的研究方向和应用前景。6.1研究成果总结概括性地总结论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值