在进行OO Grid编程时,用户常需要使用下拉列表来选择输入,其方法步骤如下:
1、创建内表,在内表增加一下字段
handle_drdn type lvc_s_drop-handle,
2、创建GRID
if cl_gui_alv_grid=>offline( ) is initial.
create object gr_container_d0100
exporting container_name = 'D0100_CONTAINER'.
endif.
create object gr_grid_d0100
exporting i_parent = gr_container_d0100.
3、设置字段显示格式
ct_fcat type lvc_t_fcat.
data: ls_fcat type lvc_s_fcat,
l_lin type i.
clear ls_fcat.
ls_fcat-tabname = '1'.
ls_fcat-fieldname = 'DROPDOWN_F4'.
ls_fcat-inttype = 'I'.
ls_fcat-intlen = 10.
ls_fcat-col_pos = l_lin.
ls_fcat-scrtext_s = ls_fcat-fieldname.
ls_fcat-scrtext_m = ls_fcat-fieldname.
ls_fcat-scrtext_l = ls_fcat-fieldname.
append ls_fcat to ct_fcat.
4、设置下拉列表数据(本代码是设置'DROPDOWN_F4'为下拉列表)
form d0100_set_grid_drdn changing ct_fcat type lvc_t_fcat.
field-symbols: <ls_outtab> type g_ty_s_outtab,
<ls_fcat> type lvc_s_fcat.
data: lt_drdn type lvc_t_drop, "#EC NEEDED
ls_drdn type lvc_s_drop, "#EC NEEDED
lt_dral type lvc_t_dral, "#EC NEEDED
ls_dral type lvc_s_dral, "#EC NEEDED
l_count type i.
define mac_get_drdn.
ls_drdn-handle = 1. "列表对象句柄
ls_drdn-value = &1. "列表显示的值
append ls_drdn to lt_drdn.
add 1 to l_count.
ls_dral-handle = 1."列表对象句柄
ls_dral-value = &1. "列表显示的值
write l_count to ls_dral-int_value left-justified. " "选择输入的显示的值
append ls_dral to lt_dral.
end-of-definition.
mac_get_drdn 'http://www.aa.com'.
mac_get_drdn 'http://www.airberlin.com'.
mac_get_drdn 'http://www.aircanda.ca'.
mac_get_drdn 'http://www.airfrance.ca'.
mac_get_drdn 'http://www.alitalia.it'.
mac_get_drdn 'http://www.british-airways.com'.
mac_get_drdn 'http://www.continental.com'.
mac_get_drdn 'http://www.delta-air.com'.
mac_get_drdn 'http://www.airpacific.com'.
mac_get_drdn 'http://www.jal.co.jp'.
mac_get_drdn 'http://www.lufthansa.com'.
mac_get_drdn 'http://www.laudaair.com'.
mac_get_drdn 'http://www.nwa.com'.
mac_get_drdn 'http://www.gantas.com.au'.
mac_get_drdn 'http://www.saa.co.za.de'.
mac_get_drdn 'http://www.singaporeair.com'.
mac_get_drdn 'http://www.swissair.com'.
mac_get_drdn 'http://www.ual.com'.
call method gr_grid_d0100->set_drop_down_table
exporting
it_drop_down_alias = lt_dral. "该调用将列出描叙,自动转换为输入ID值
* call method gr_grid_d0100->set_drop_down_table
* exporting
* it_drop_down = lt_drdn. "该列表选择
read table ct_fcat assigning <ls_fcat>
with key fieldname = 'DROPDOWN_F4'.
if sy-subrc eq 0.
<ls_fcat>-drdn_field = 'HANDLE_DRDN'.
<ls_fcat>-edit = 'X'.
<ls_fcat>-drdn_alias = con_true.
endif.
loop at gt_outtab assigning <ls_outtab>.
<ls_outtab>-handle_drdn = 1."设置字段列表控制句柄,和上面list表对应上
endloop.
endform. " d0100_set_grid_drdn
5、输出数据
call method gr_grid_d0100->set_table_for_first_display
exporting
i_buffer_active = gs_test-buffer_active
i_bypassing_buffer = gs_test-bypassing_buffer
i_consistency_check = l_consistency_check
is_variant = ls_vari
i_save = 'A'
i_default = con_true
is_layout = ls_layo
is_print = ls_prnt
it_hyperlink = lt_hype
changing
it_outtab = gt_outtab[]
it_fieldcatalog = lt_fcat.
参考sap代码:BCALV_TEST_GRID_EDITABLE
分享到:
相关推荐
在实现 ALV Grid 时,我们需要使用 CL_GUI_GRID 类来实现 ALV Grid 控件的各种功能,还可以使用 REUSE_ALV 模块来实现 ALV 报表。 ALV Grid 是一种功能强大且灵活的工具,用于创建交互式报表,可以满足不同的业务...
在这个过程中,`grf_grid1`是ALV网格对象的一个实例,而`gs_variant`、`gs_layout`等参数则分别代表ALV的变体设置和布局设置。 ### 结论 通过上述步骤,我们可以有效地去除ALV中的标准工具栏,从而实现更精细的UI...
- `DATA: ALV_GRID TYPE REF TO CL_GUI_ALV_GRID`: 创建一个类型为`CL_GUI_ALV_GRID`的引用,这是ALV网格的主要对象。 - `DATA: WA_CONTAINER TYPE SCRFNAME VALUE 'ALVDATA'`: 定义一个容器名`ALVDATA`,用于存放...
1. **ALV**: ALV是一种用于在SAP GUI中展示表格数据的方法,它提供了丰富的功能来定制列表视图。 2. **事件**: 在编程中,事件通常指的是由用户或其他系统组件触发的动作,如点击按钮、按下键盘键等。 3. **事件...
ALV Grid Control(ALV = SAP List Viewer)是一种灵活且强大的工具,主要用于展示列表数据。它不仅提供了基础的列表操作功能,还支持高度定制化,使得开发者能够根据需求对其进行增强,非常适合应用于复杂的业务...
3. 初始化ALV:使用CL_GUI_ALV_GRID类或CL_SALV_TABLE类初始化ALV实例。 4. 配置ALV:设置ALV的显示属性,如列宽、排序、过滤等。 5. 显示ALV:调用REPAINT或REFRESH方法来显示或更新表格数据。 6. 注册事件处理:...
在设置好排除列表后,需要在ALV网格控件的初始化过程中传递这个列表。这通常是通过调用`SET_TABLE_FOR_FIRST_DISPLAY`方法完成的,该方法允许开发者指定各种参数来控制ALV的显示行为: ```abap CALL METHOD GRF_...
**ALV Grid 控制器**(ALV = SAP List Viewer)是SAP开发环境中的一个非常重要的工具,它用于在SAP GUI应用程序中展示数据列表。ALV Grid 控制器不仅能够展示数据,还提供了丰富的交互功能,如排序、过滤、搜索等,...
开发人员可以通过调用FUNCTION_MODULE 'REUSE_ALV_LIST_DISPLAY' 或 'REUSE_ALV_GRID_DISPLAY' 中的相关函数实现这个功能。 6. **事件处理**:SAP ALV提供了丰富的事件处理机制,如ALV_GRID_EVENT、CLICK_EVENT等,...
ALV(Application List Viewer)是SAP提供的一种强大的列表展示工具,主要用于在SAP应用程序中以灵活且功能丰富的形式展示列表数据。ALV Grid Control(ALV = SAP ListViewer)作为其中的一种表现形式,不仅具备基本...
ALV Grid Control(SAP List Viewer)是一种灵活的工具,用于在SAP环境中展示列表数据。它不仅提供了基本的列表操作,如排序、过滤和分页,还支持自定义扩展,适应于大型应用程序的需求。ALV Grid Control允许用户在...
ALV(Application List Viewer)是一种在SAP ABAP环境中使用的列表控件,主要用于展示表格形式的数据。它提供了一个高度灵活且可定制的方式来呈现列表数据,并支持多种类型的列表布局。ALV控件不仅具备基本的列表...
1. **DATAGS_ALVTYPEREFTOCL_GUI_ALV_GRID**:此变量用于引用`CL_GUI_ALV_GRID`类的对象,它是OOALV的核心组件,负责管理ALV的所有行为。 2. **DATAGS_PARENTTYPEREFTOCL_GUI_CUSTOM_CONTAINER**:此变量用于引用`...
在ABAP中,可以使用CL_GUI_ALV_GRID类来创建更灵活、可扩展的ALV控件。相比于函数模块,类提供了更多的功能,比如: 1. `cl_gui_alv_grid`类的构造函数:初始化ALV控件,并设置基本属性。 2. `set_table_for_first_...
标题:“ALV Grid参考文档”概述了SAP ALV(Application List Viewer)Grid控件的详细信息,这是一种灵活且强大的工具,用于展示列表数据并提供交互性报表功能。以下是对该文档关键知识点的深入解析: ### 1. ALV ...
- **调用ALV初始化函数**:使用`CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'`或`CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'`来初始化ALV。这一步会设置基本的ALV参数,如标题、行选择等。 - **传递数据给ALV**:通过...
在SAP系统中,ALV(Accelerated List Viewer)是一种用于数据展示的工具,它能够以表格形式快速、高效地显示大量数据。ALV编程是SAP开发人员必须掌握的关键技能之一,尤其对于处理和展示业务数据至关重要。本指南将...
wcl_alv TYPE REF TO cl_gui_alv_grid, " ALV 网格 gt_fieldcat TYPE lvc_t_fcat, " 字段目录 gs_layout TYPE lvc_s_layo. " 布局结构 *--- 声明需要显示的内表 DATA: gt_data TYPE STANDARD TABLE OF sflight ...
1. **激活ALV函数库**:在ABAP程序中包含所需的ABAP类和函数模块,如CL_GUI_ALV_GRID和REUSE_ALV_GRID_DISPLAY。 2. **创建数据结构**:定义用于存储数据库查询结果的数据结构。 3. **填充数据**:执行SQL查询,将...