SAP-ABAP-ALV弹出窗口供用户输入,获取输入数据
实现代码如下
DATA LV_STGRD TYPE RF05R-STGRD . DATA LV_BUDAT TYPE RF05R-BUDAT . DATA LV_MONAT TYPE RF05R-MONAT . DATA: it_value TYPE TABLE OF sval, wa_value TYPE sval, lv_rtn_cd. wa_value-tabname = BKPF. wa_value-fieldname = STGRD. wa_value-value = 01. APPEND wa_value TO it_value. wa_value-tabname = BKPF . wa_value-fieldname = BUDAT. wa_value-value = sy-datum . APPEND wa_value TO it_value. wa_value-tabname = BKPF. wa_value-fieldname = MONAT. wa_value-value = sy-datum+4(2). APPEND wa_value TO it_value. CALL FUNCTION POPUP_GET_VALUES EXPORTING * NO_VALUE_CHECK = popup_title = 冲销数据 * START_COLUMN = 5 * START_ROW = 5 IMPORTING returncode = lv_rtn_cd TABLES fields = it_value EXCEPTIONS error_in_fields = 1 OTHERS = 2. IF sy-subrc = 0. LV_STGRD = it_value[ 1 ]-value . LV_BUDAT = it_value[ 2 ]-value . LV_MONAT = it_value[ 3 ]-value .
参数解释
popup_title :弹窗的标题
fields 表中存储要和用户交互的字段,本例中的三个字段为冲销原因,过账日期,记账期间,每个字段有三个参数分别是tabname:参考表;fieldname:字段名称;value:默认值。要求字段名称必须是参考表中的数据,会自动带出搜索帮助。
START_COLUMN和START_ROW 是弹窗位置