ABAP 报表中如何给报表的输入参数增添 F4 Value Help

发布时间:2023年12月19日

1.增加选择框

首先,我们使用 PARAMETERS 关键字,定义一 ABAP 报表的输入参数,名称为 path,类型为 sting,用于指定我们想将哪一个本地义件,上传到 ABAP 服务器。这个 path 参数,存放的是待上传本地文件在操作系统的绝对路径。用 OBLIGATORY 修饰,意思是必填参数必须维护,否则 ABAP 程序不能继续执行。
在这里插入图片描述

2.使用语法 AT SELECTION-SCREEN ON VALUE-REOUEST FOR

使用语法 AT SELECTION-SCREEN ON VALUE-REOUEST FOR 给参数 PATH 定义一个 Value Help
在这里插入图片描述

3.进行VALUE HELP的具体实现

在这里插入图片描述

4.如何区分一段代码,是 Value Hep 的实现代码,还是 ABAP 报表的正式处理业务逻辑的代码呢?

start-of -selection
在这里插入图片描述

*&---------------------------------------------------------------------*
*& Report Z_IT023_REPORT_PATH
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT Z_IT023_REPORT_PATH.



PARAMETERS: path TYPE string OBLIGATORY.
DATA: file_content_lines_bin TYPE STANDARD TABLE OF raw255,
      file_content_line_bin  TYPE raw255,
      file_length            TYPE int4,
      lv_file_path           TYPE string.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR path.

  DATA: filetable    TYPE filetable,
        selectedfile LIKE LINE OF filetable,
        result       TYPE int4.


  CALL METHOD cl_gui_frontend_services=>file_open_dialog  "打开一个文件输入框,用户选定的文件,存储在changIng参数,第28行的filetable里面,使用表结构,表示支持上传多个文件一次性
    EXPORTING
      window_title      = '选择上传文件'
      initial_directory = 'C:\Code'
    CHANGING
      file_table        = filetable
      rc                = result
    EXCEPTIONS
      OTHERS            = 1.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
               WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.

  READ TABLE filetable INTO selectedfile INDEX 1.
  path = selectedfile-filename.

START-OF-SELECTION.

  WRITE:/ path.
文章来源:https://blog.csdn.net/weixin_45279441/article/details/135065662
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。