FM ALV参数总结

本文详细介绍了SAP中两种常用的ALV函数REUSE_ALV_GRID_DISPLAY和REUSE_ALV_GRID_DISPLAY_LVC的参数,重点比较了它们在功能和使用上的差异,以及推荐使用新标准函数REUSE_ALV_GRID_DISPLAY_LVC的理由。
摘要由CSDN通过智能技术生成

目录

前言

REUSE_ALV_GRID_DISPLAY函数参数     

REUSE_ALV_GRID_DISPLAY_LVC函数参数


前言

        ALV是sap list viewer 的缩写,是sap中常用的经典报表的输出格式,其中经常使用的三种ALV函数如下:

LIST模式: REUSE_ALV_LIST_DISPLAY

GRID模式REUSE_ALV_GRID_DISPLAY

                    REUSE_ALV_GRID_DISPLAY_LVC  " 最新的标准函数(推荐使用)

        其中REUSE_ALV_GRID_DISPLAY与REUSE_ALV_LIST_DISPLAY函数的参数基本相同,REUSE_ALV_GRID_DISPLAY_LVC函数中引用到的类型大部分都不再从类型池slis 中来引用(TYPE-POOLS:slis.),而是直接引用字典中已定义好的表或结构类型,这种函数属于新性函数,与面向对象的OOALV:CL_GUI_ALV_GRID生成的ALV参数类型上基本相同,所以如果使用函数方式来开发ALV报表,推荐使用REUSE_ALV_GRID_DISPLAY_LVC函数。

 

REUSE_ALV_GRID_DISPLAY函数参数     

TYPE-POOLS:slis.  "类型池
DATA: 
      gt_fieldcat  TYPE slis_fieldcat_alv ,    " 相当于工作区
      w_fieldcat  TYPE slis_t_fieldcat_alv ,   " 存放输出栏位名称的列表
      w_layout    TYPE slis_layout_alv .       " 负责整个ALV的全局属性
      
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      i_interface_check             = ' '"接口一致性检查
      i_bypassing_buffer            = ' '"是否使用缓存
      i_buffer_active               = ' '"是否激活缓存,如果每次显示ALV都是相同的字段目录,则该字段目录会被放到一特殊的缓存里,加快显示速度。
      i_callback_program            = gv_repid            "用ALV的程序名称
      i_callback_pf_status_set      = 'FRM_SET_GUI'       "定义触发工具栏定义的子程序
      i_callback_user_command       = 'FRM_USER_COMMAND'  "单击alv工具栏按钮或双击行项目时触发所定义的子程序
      i_callback_top_of_page        = ' '"ALV抬头内容信息
      i_callback_html_top_of_page   = ' ' "ALV HTML格式抬头内容信息
      i_callback_html_end_of_list   = ' ' "ALV HTML格式页脚内容信息
      i_structure_name              = ''"为输出表数据结构的命名,指定了这个参数,域目录将会自动生成
      i_background_id               = ' '"ALV背景图片Object ID
      i_grid_title                  = 'ALV输出'      "ALV 标题
      i_grid_settings               = '' "GRID信息,网格设置
      is_layout                     = w_layout      "layout数据,ALV输出布局样式
      it_fieldcat                   = gt_fieldcat  "定义fieldcat数据
      it_excluding                  = ''"隐藏设置的ALV工具栏
      it_special_groups             = ''"若内表中一些字段通过SP_GROUP被分组在一起,必须为这些组传递组文本内表
      it_sort                       = gt_sort[]"排序设置
      it_filter                     = ''"ALV过滤设置
      is_sel_hide                   = ''"替换或修改屏幕中select-option的值
      i_default                     = 'X'"用户是否可以定义默认的布局,’X'-可以定义默认布局,Space-不可以定义默认布局 (默认:X)
      i_save                        = 'X'"保存表格布局,’X'-只能保存全局变式;’U'-只能保存特定变式;’A'-都可以保存;Space-不能保存变式 (默认:space)
      is_variant                    = ''"表格布局变式
      it_events                     = gt_event[]"出口程序触发事件,类型为slis_tevent的内表(name:事件名称,form:事件的FORM)
      it_event_exit                 = ''"设置回调的方法的执行行为,表明用户所写的代码是在执行标准执行之前还是之后
      is_print                      = ''"后台打印的相关参数
      is_reprep_id                  = ''
      i_screen_start_column         = '0'"以对话框形式显示的开始列
      i_screen_start_line           = '0'"以对话框形式显示的开始行
      i_screen_end_column           = '0'"以对话框形式显示的结束列
      i_screen_end_line             = '0'"以对话框形式显示的结束行
      i_html_height_top             = '0'"HTML抬头的高度
      i_html_height_end             = '0'"HTML页脚的高度
      it_alv_graphics               = ''"是否可以在图表中显示ALV
      it_hyperlink                  =''"使用超链接
      it_add_fieldcat               =
      it_except_qinfo               =
      ir_salv_fullscreen_adapter    =
    importing
      e_exit_caused_by_caller       =
      es_exit_caused_by_user        =
    tables
       t_outtab                      = gt_print
      EXCEPTIONS
       program_error                 = 1
       OTHERS                        = 2.

REUSE_ALV_GRID_DISPLAY_LVC函数参数

DATA:
    gt_fieldcat TYPE lvc_t_fcat, "字段目录内表
    w_fieldcat TYPE lvc_s_fcat,  "字段目录工作区
    w_layout   TYPE lvc_s_layo.  "用于定义ALV表单的相关格式、属性

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
  EXPORTING
    i_interface_check           = ' '"接口一致性检查
    i_bypassing_buffer          = ''"是否使用缓存
    i_buffer_active             = ' '"是否激活缓存,如果每次显示ALV都是相同的字段目录,则该字段目录会被放到一特殊的缓存里,加快显示速度。
    i_callback_program          = gv_repid            "程序名称
    i_callback_pf_status_set    = ' '"定义触发工具栏定义的子程序
    i_callback_user_command     = ' '"单击alv工具栏按钮或双击行项目时触发所定义的子程序
    i_callback_top_of_page      = ' '"ALV抬头内容信息
    i_callback_html_top_of_page = ' '"ALV HTML格式抬头内容信息
    i_callback_html_end_of_list = ' '"ALV HTML格式页脚内容信息
    i_structure_name            = ''"为输出表数据结构的命名,指定了这个参数,域目录将会自动生成
    i_background_id             = ' '"ALV背景图片Object ID
    i_grid_title                = ''"ALV 标题
    i_grid_settings             = '' "GRID信息
    is_layout_lvc               = w_layout      "layout数据
    it_fieldcat_lvc             = gt_fieldcat "定义fieldcat数据
    it_excluding                = ''"隐藏设置的ALV工具栏
    it_special_groups_lvc       = ''"若内表中一些字段通过SP_GROUP被分组在一起,必须为这些组传递组文本内表
    it_sort_lvc                 = gt_sort[]"排序设置
    it_filter_lvc               = ''"ALV过滤设置
    it_hyperlink                = ''"使用超链接
    is_sel_hide                 = ''"替换或修改屏幕中select-option的值
    i_default                   = 'X'"用户是否可以定义默认的布局,’X'-可以定义默认布局,Space-不可以定义默认布局 (默认:X)'X'
    i_save                      = 'X'"保存表格布局,’X'-只能保存全局变式;’U'-只能保存特定变式;’A'-都可以保存;Space-不能保存变式 (默认:space)' '
    is_variant                  = ''"表格布局变式
    it_events                   = gt_event[]"出口程序触发事件
    it_event_exit               = ''"设置回调的方法的执行行为,表明用户所写的代码是在执行标准执行之前还是之后
    is_print_lvc                = ''"后台打印的相关参数
    is_reprep_id_lvc            = ''
    i_screen_start_column       = '0'"以对话框形式显示的开始列0
    i_screen_start_line         = '0'"以对话框形式显示的开始行0
    i_screen_end_column         = '0'"以对话框形式显示的结束列0
    i_screen_end_line           = '0'"以对话框形式显示的结束行0
    i_html_height_top           = '0'"HTML抬头的高度
    i_html_height_end           = '0'"HTML页脚的高度
    it_alv_graphics             = ''"是否可以在图表中显示ALV
    it_except_qinfo_lvc         =
    ir_salv_fullscreen_adapter  =
  IMPORTING
    e_exit_caused_by_caller     =
    es_exit_caused_by_user      =
  TABLES
    t_outtab                    =
  exceptions
    program_error               = 1
    OTHERS                      = 2.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.

小结:后续将详细展开介绍常用的参数用法,请大家点赞收藏。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

SAP_亮亮

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

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

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

打赏作者

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

抵扣说明:

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

余额充值