自定义搜索帮助:AT SELECTION-SCREEN ON VALUE-REQUEST 和 PROCESS ON VALUE-REQUEST、返回多个搜索帮助字段值

1、选择屏幕字段搜索帮助AT SELECTION-SCREEN ON VALUE-REQUEST

2、自定义屏幕字段搜索帮助PROCESS ON VALUE-REQUEST

结合BAPI: F4IF_INT_TABLE_VALUE_REQUEST 实现搜索帮助功能

 

其中AT SELECTION-SCREEN ON VALUE-REQUEST用法参考如下文章

https://blog.csdn.net/wangjolly/article/details/80075531

 

PROCESS ON VALUE-REQUEST使用方法如下:

客制化屏幕PAI后面

PROCESS AFTER INPUT.

PROCESS ON VALUE-REQUEST.

       FIELD 需要搜索帮助的字段 MODULE 实现模块.

TYPES: BEGIN OF ty_bank_info,
         zskzh  TYPE zfis009-zskzh,
         zskylh TYPE zfis009-zskylh,
         zskmc  TYPE zfis009-zskmc,
         xezer  TYPE lfbk-xezer,
         bkont  TYPE lfbk-bkont,
       END OF ty_bank_info.

MODULE sh_get_zskzh INPUT.
  PERFORM frm_sh_get_zskzh.
ENDMODULE.

FORM frm_sh_get_zskzh .

   DATA: lt_value TYPE STANDARD TABLE OF ty_bank_info,
         ls_value LIKE LINE OF lt_value.
   DATA: lt_return_value TYPE STANDARD TABLE OF ddshretval.
   DATA: lt_lfbk TYPE STANDARD TABLE OF lfbk.
   DATA: ls_lfbk LIKE LINE OF lt_lfbk.
   DATA: ls_bnka TYPE bnka.
   DATA: lv_bkont TYPE lfbk-bkont.
   DATA: lv_line TYPE i.
   GET CURSOR LINE lv_line.
   "lt_value 搜索帮助数据集
   IF lt_value[] IS NOT INITIAL.
     CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
       EXPORTING
         retfield         = 'ZSKZH'
         dynpprog         = sy-repid
         dynpnr           = '9000'
         dynprofield      = 'GS_ITEMS-ZSKZH'
         value_org        = 'S'
         callback_program = sy-repid
         callback_form    = 'FRM_CB_FORM'
       TABLES
         value_tab        = lt_value
         return_tab       = lt_return_value.
     READ TABLE lt_return_value INTO DATA(ls_return_value) INDEX 1.
     IF sy-subrc = 0.
       gs_items-zskzh = ls_return_value-fieldval.
     ENDIF.
   ENDIF.

 ENDFORM.
*&---------------------------------------------------------------------*
*&      Form  FRM_CB_FORM
*&---------------------------------------------------------------------*
 FORM frm_cb_form TABLES record_tab STRUCTURE seahlpres
               CHANGING shlp TYPE shlp_descr_t
                        callcontrol LIKE ddshf4ctrl.

   DATA: interface LIKE LINE OF shlp-interface.

   READ TABLE shlp-interface INTO interface INDEX 1.
   interface-shlpfield+4(1) = '2'.
   interface-valfield = 'GS_ITEMS-ZSKYLH'.
   APPEND interface TO shlp-interface.

 ENDFORM.                    "bo_callback_form

子例程:FORM frm_cb_form搜索帮助返回多个值,实现字段:GS_ITEMS-ZSKZH和GS_ITEMS-ZSKYLH同时返回

 

 

 

 

 

 

 

 

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王小磊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值