ALV自动排序求和小计

来源:互联网 发布:淘宝会员名大全简单 编辑:程序博客网 时间:2024/05/18 13:24

部分用户要求进入报表的时候就实现自动小计求和,如下代码标识了相关字段的作用。

FORM do_sum_for_vendor CHANGING gt_sort TYPE slis_t_sortinfo_alv.

  DATA gs_fields TYPE slis_sortinfo_alv.
*key
*  CLEAR gs_fields.
*  gs_fields-fieldname = 'Z'. "排序关键字段
*  gs_fields-spos      = 1."排序顺序
*  gs_fields-up        = 'X'."默认按升序排列
*  gs_fields-down        = 'X'. "默认按降序排列
*  gs_fields-subtot    = 'X'."输出小计
*  APPEND gs_fields TO gt_sort.

  CLEAR gs_fields.
  gs_fields-fieldname 'LIFNR'.
  gs_fields-spos      1.
  gs_fields-up        'X'.
  gs_fields-subtot    'X'.
  APPEND gs_fields TO gt_sort.

  CLEAR gs_fields.
  gs_fields-fieldname 'WAERS'.
  gs_fields-spos      1.
  gs_fields-up        'X'.
*  gs_fields-subtot    = 'X'.
  APPEND gs_fields TO gt_sort.

ENDFORM.                    "do_sum_for_vendor


设计排序以及按哪些字段求和后,在显示处写入

*PERFORM do_sum_for_vendor CHANGING gt_sort.

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      i_callback_program       sy-repid
      i_callback_pf_status_set 'SET_PF9'"设置菜单按钮
      i_callback_user_command  'USER_COM9'"触发事件设置
      i_grid_title             '手工创建'"标题
      is_layout                gs_layout
      it_fieldcat              gt_fields
      it_events                gs_events
      i_save                   'X'
      it_sort                  gt_sort “求和关键在于该部位
    TABLES
      t_outtab                 zallow_data01"临时内表
    EXCEPTIONS
      program_error            1
      OTHERS                   2.


0 0
原创粉丝点击