• ABAP 实现内表自定义的F4功能


    “实现多列内容的F4功能
    REPORT Z_TAB_TEST.
     
    TYPES: shlp_descr TYPE shlp_descr .
     
    DATA: BEGIN OF itab OCCURS 0 ,
            matnr LIKE mara-matnr ,
            maktx LIKE makt-maktx ,
          END OF itab.
    DATA: return_tab TYPE ddshretval OCCURS 0 .
     
    PARAMETERS: p_matnr LIKE itab-matnr ,
                p_maktx LIKE itab-maktx .

    INITIALIZATION.
      SELECT matnr maktx INTO TABLE itab FROM makt UP TO 20 ROWS
        WHERE spras = 1.
     
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_matnr .
      PERFORM f4.
     
    *&---------------------------------------------------------------------*
    *&      Form  f4
    *&---------------------------------------------------------------------*
    FORM f4.
      CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
        EXPORTING
          retfield         = 'MATNR'
          dynpprog         = sy-repid
          dynpnr           = sy-dynnr
          dynprofield      = 'P_MATNR'
          value_org        = 'S'
          callback_program = sy-repid
          callback_form    = 'CB_FORM'     
        TABLES
          value_tab        = itab
          return_tab       = return_tab
        EXCEPTIONS
          parameter_error  = 1
          no_values_found  = 2
          OTHERS           = 3.
    ENDFORM.                    "f4
     
    *&---------------------------------------------------------------------*
    *&      Form  cb_form
    *&---------------------------------------------------------------------*
    FORM cb_form TABLES record_tab STRUCTURE seahlpres
                  CHANGING shlp TYPE shlp_descr
                           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 = 'P_MAKTX'.
      APPEND interface TO shlp-interface.
    ENDFORM.                    "bo_callback_form
  • 相关阅读:
    Git学习-创建版本库
    使用Vim编辑器,如何退出
    设置既定目录的命令提示符
    字符数组和字符串
    一波杂乱的分享
    全国软件设计大赛C/C++语言练习
    HDU 1720、1062、2104、1064、2734、1170、1197、2629
    hdu 2000-2010 ACM
    HDU——算法练习1000 1089-1096
    爬虫学习笔记之为什么要设置超时时间,怎么设置(使用selenium)
  • 原文地址:https://www.cnblogs.com/jxzhu/p/8963298.html
Copyright © 2020-2023  润新知