Parameters 如何获取参数值并将其插入查询SAP ABAP
我有一个问题,我用参数生成报告,然后我必须从一个参数中获取值并将其输入Select查询,但我的值始终为空,在报告启动所有functionert之前,我会生成默认值 当我尝试这一切都是好的Parameters 如何获取参数值并将其插入查询SAP ABAP,parameters,abap,Parameters,Abap,我有一个问题,我用参数生成报告,然后我必须从一个参数中获取值并将其输入Select查询,但我的值始终为空,在报告启动所有functionert之前,我会生成默认值 当我尝试这一切都是好的 PARAMETERS p_name TYPE char30. AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_name. p_name = 'ARNOLD'. SELECT * FROM zyy_pat_final_db INTO TABLE tb_pt WHERE
PARAMETERS p_name TYPE char30.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_name.
p_name = 'ARNOLD'.
SELECT * FROM zyy_pat_final_db INTO TABLE tb_pt WHERE NAME = p_name.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
* DDIC_STRUCTURE = ' '
retfield = 'name'
* PVALKEY = ' '
dynpprog = sy-repid
dynpnr = sy-dynnr
dynprofield = 'p_name'
* STEPL = 0
* WINDOW_TITLE =
* VALUE = ' '
value_org = 'S'
* MULTIPLE_CHOICE = ' '
* DISPLAY = ' '
* CALLBACK_PROGRAM = ' '
* CALLBACK_FORM = ' '
* CALLBACK_METHOD =
* MARK_TAB =
* IMPORTING
* USER_RESET =
TABLES
value_tab = tb_pt
* FIELD_TAB =
* RETURN_TAB =
* DYNPFLD_MAPPING =
* EXCEPTIONS
* parameter_error = 1
* no_values_found = 2
* OTHERS = 3.
* IF sy-subrc <> 0.
* Implement suitable error handling here.
* ENDIF.
实际上,首先要求不是很明确:如果选择参数需要select查询的值,那么使用的功能模块将不会有帮助。。。请尝试使用给定的代码
BEGIN OF ty_mat,
sign(1) TYPE c,
option(2) TYPE c,
XXXXX(low) TYPE ANY,
YYYYY(high) TYPE ANY,
END OF ty_mat.
DATA: it_mat TYPE TABLE OF ty_mat,
wa_mat TYPE ty_mat.
LOOP AT it_TABLE INTO wa_TABLE. "added
wa_sam1-sign = 'I'.
wa_sam1-option = 'EQ' .
wa_sam1-low = "aNY VALUE".
APPEND wa_MAT TO it_mat.
ENDLOOP.
and now pass it_mat to your select query with IN parameter...
问题很清楚:“字段帮助和输入帮助的事件不会在选择屏幕和ABAP程序之间传输数据。与常规dynpros一样,适当的功能模块,如RS\u SELECTIONSCREEN\u READ…
”
BEGIN OF ty_mat,
sign(1) TYPE c,
option(2) TYPE c,
XXXXX(low) TYPE ANY,
YYYYY(high) TYPE ANY,
END OF ty_mat.
DATA: it_mat TYPE TABLE OF ty_mat,
wa_mat TYPE ty_mat.
LOOP AT it_TABLE INTO wa_TABLE. "added
wa_sam1-sign = 'I'.
wa_sam1-option = 'EQ' .
wa_sam1-low = "aNY VALUE".
APPEND wa_MAT TO it_mat.
ENDLOOP.
and now pass it_mat to your select query with IN parameter...