举个例子,从事务码ZFIR026-ZRFIDCN_AP_AGING(应付账龄表)的执行ALV获取数据到一个内表

"内表定义要与程序中的内表结构一致,便于存储和输出
DATA: ls_data TYPE REF TO data.
FIELD-SYMBOLS: <lt_data> TYPE table,
<l_data> TYPE data.
cl_salv_bs_runtime_info=>set(
display = ‘’
metadata = ‘’
data = ‘X’
).
SUBMIT zrfidcn_ap_aging
USING SELECTION-SET ‘AUTO_C’
AND RETURN.
“以下为详细描述
SUBMIT rm07mlbs "使用rep静态地指定一个程序,或者使用name动态地指定
- USING SELECTION-SCREEN ‘1000’ "指定要访问的选择屏幕dynnr,如不使用该条目,系统调用标准选择屏幕。
- VIA SELECTION-SCREEN "显示被调用的选择屏幕。如不使用该条目,选择屏幕过程(selection screen processing)将会在后台发生。
- USING SELECTION-SET ‘TEST’ "选择屏幕使用变式
- USING SELECTION-SETS OF PROGRAM ‘程序名’ "指定使用的变式的程序
- WITH SELECTION-TABLE rspar "选择屏幕使用内表rspar中的值,内表的行结构为RSPARAMS或者RSPARAMSL_255
WITH nozero = ‘X’ "选择屏幕参数
WITH pa_sond = ‘X’ "选择屏幕参数
WITH pa_flt = ‘X’ "选择屏幕参数
WITH matnr IN matnr "选择屏幕参数 - WITH FREE SELECTIONS texpr "通过一个内表texpr向选择屏幕提供基于逻辑数据库的动态选择,内表texpr的类型是RSDS类型组中的RSDS_TEXPR
- LINE-SIZE width "使用width设置程序访问的Basic List的行宽
- LINE-COUNT page_lines "使用设置程序访问的Basic List的页包含的行数
- EXPORTING LIST TO MEMORY "将程序访问的Basic List以行类型为ABAPLIST的内表形式保存到ABAP Memory中
AND RETURN.
TRY.
cl_salv_bs_runtime_info=>get_data_ref(
IMPORTING
r_data = ls_data
).
ASSIGN ls_data->* TO <lt_data>.
CATCH cx_salv_bs_sc_runtime_info.
MESSAGE ‘UNABLE TO RETRIEVE ALV DATA’ TYPE ‘E’.
ENDTRY.
cl_salv_bs_runtime_info=>clear_all( ).
LOOP AT <lt_data> ASSIGNING <l_data>.
ENDLOOP.
原文链接:https://blog.youkuaiyun.com/qq_42954713/article/details/108246529
74

被折叠的 条评论
为什么被折叠?



