SAP ALV添加标题的方法

1. function alv

标题栏

在这里插入图片描述
在这里插入图片描述

HTML_TOP_OF_PAGE

有2种方法,1种是ADD_TEXT和ADD_TEXT方法来实现在这里插入图片描述
&---------------------------------------------------------------------
*& Form html_top_of_page
&---------------------------------------------------------------------
FORM HTML_TOP_OF_PAGE USING DOCUMENT TYPE REF TO CL_DD_DOCUMENT.

DATA: TEXT TYPE SDYDO_TEXT_ELEMENT.
DATA:L_MATNR TYPE MARA-MATNR.
DATA:L_MONTH TYPE NUMC2.

TEXT = ‘工厂:’ && S_WERKS-LOW.
CALL METHOD DOCUMENT->ADD_TEXT
EXPORTING
TEXT = TEXT
SAP_FONTSIZE = CL_DD_AREA=>MEDIUM
SAP_EMPHASIS = CL_DD_AREA=>STRONG.
CALL METHOD DOCUMENT->ADD_GAP
EXPORTING
WIDTH = 10.
CALL METHOD DOCUMENT->NEW_LINE.
CALL METHOD DOCUMENT->NEW_LINE.
CALL FUNCTION ‘CONVERSION_EXIT_MATN1_OUTPUT’
EXPORTING
INPUT = S_MATNR-LOW
IMPORTING
OUTPUT = L_MATNR.

TEXT = ‘物料号:’ && L_MATNR.
CALL METHOD DOCUMENT->ADD_TEXT
EXPORTING
TEXT = TEXT
SAP_FONTSIZE = CL_DD_AREA=>MEDIUM
SAP_EMPHASIS = CL_DD_AREA=>STRONG.
CALL METHOD DOCUMENT->ADD_GAP
EXPORTING
WIDTH = 16.
CALL METHOD DOCUMENT->NEW_LINE.
CALL METHOD DOCUMENT->NEW_LINE.

TEXT = ‘年份:’ && S_BDATJ-LOW.
CALL METHOD DOCUMENT->ADD_TEXT
EXPORTING
TEXT = TEXT
SAP_FONTSIZE = CL_DD_AREA=>MEDIUM
SAP_EMPHASIS = CL_DD_AREA=>STRONG.
CALL METHOD DOCUMENT->ADD_GAP
EXPORTING
WIDTH = 10.

L_MONTH = S_POPER-LOW.
TEXT = ‘月份:’ && L_MONTH.
CALL METHOD DOCUMENT->ADD_TEXT
EXPORTING
TEXT = TEXT
SAP_FONTSIZE = CL_DD_AREA=>MEDIUM
SAP_EMPHASIS = CL_DD_AREA=>STRONG.
CALL METHOD DOCUMENT->ADD_GAP
EXPORTING
WIDTH = 10.

ENDFORM.

另外1种是编写HTML代码实现
在这里插入图片描述

event事件

1、FORM frm_alv_output .
PERFORM frm_build_fcat CHANGING it_fcat.
CLEAR: is_layo.
is_layo-zebra = ‘X’.
PERFORM frm_build_events CHANGING it_events. “调用 frm_build_events
CALL FUNCTION ‘REUSE_ALV_GRID_DISPLAY_LVC’
EXPORTING
i_callback_program = sy-repid

  • I_CALLBACK_PF_STATUS_SET    = ' '
    
  • I_CALLBACK_USER_COMMAND     = ' '
    
  • I_CALLBACK_TOP_OF_PAGE      = ' '
    
  • I_CALLBACK_HTML_TOP_OF_PAGE = ' '
    
  • i_callback_html_end_of_list = c_end_of_page
    is_layout_lvc               = is_layo
    it_fieldcat_lvc             = it_fcat
    
  • I_DEFAULT                   = 'X'
    i_save                      = 'X'
    it_events                   = it_events  ”方法中调用 it_events 
    
  • I_HTML_HEIGHT_TOP           =
    
  • I_HTML_HEIGHT_END           =
    
    TABLES
    t_outtab = it_result
    EXCEPTIONS
    program_error = 1
    OTHERS = 2.
    ENDFORM. " FRM_ALV_OUTPUT

2、FORM frm_build_events CHANGING pt_events TYPE slis_t_event.
DATA: ls_events TYPE slis_alv_event.

CALL FUNCTION ‘REUSE_ALV_EVENTS_GET’
EXPORTING
i_list_type = 0
IMPORTING
et_events = pt_events
EXCEPTIONS
list_type_wrong = 1
OTHERS = 2.

  • 为alv添加top_of_page
    CLEAR ls_events.
    READ TABLE pt_events INTO ls_events WITH KEY name = slis_ev_top_of_page.
    IF sy-subrc = 0.
    MOVE c_top_of_page TO ls_events-form.
    MODIFY pt_events FROM ls_events INDEX sy-tabix.
    ELSE.
    ls_events-form = c_top_of_page.
    ls_events-name = c_top_of_page.
    APPEND ls_events TO pt_events.
    ENDIF.

  • 为alv添加end_of_page
    CLEAR ls_events.
    READ TABLE pt_events INTO ls_events WITH KEY name = slis_ev_end_of_list.
    IF sy-subrc = 0.
    MOVE c_end_of_page TO ls_events-form.
    MODIFY pt_events FROM ls_events INDEX sy-tabix.
    ELSE.
    ls_events-form = c_end_of_page.
    ls_events-name = c_end_of_page.
    APPEND ls_events TO pt_events.
    ENDIF.

ENDFORM. " FRM_BUILD_EVENTS
3、FORM frm_top_of_page.
DATA: ls_header TYPE slis_listheader,
lt_header TYPE slis_t_listheader.
DATA: l_str TYPE string,
l_bukr TYPE string.
CLEAR: ls_header.
REFRESH: lt_header.
*—处理屏幕数据,作为表头--------------

*----处理ALV表头期间输出
CLEAR: l_str,l_bukr.

***公司名称
SELECT SINGLE butxt INTO l_bukr
FROM t001
WHERE bukrs = p_rbukrs.

CONCATENATE p_ryear
‘年度’
p_monat
‘月’
INTO l_str.

*---------------------------------------
ls_header-typ = ‘S’.
ls_header-info = l_bukr.
APPEND ls_header TO lt_header.
CLEAR ls_header.
ls_header-typ = ‘S’.
ls_header-info = ‘损益表’.
APPEND ls_header TO lt_header.
ls_header-typ = ‘S’.
ls_header-info = l_str.
APPEND ls_header TO lt_header.
ls_header-typ = ‘S’.
ls_header-info = ‘(除特别注明外,金额单位均为人民币元)’.
APPEND ls_header TO lt_header.
CALL FUNCTION ‘REUSE_ALV_COMMENTARY_WRITE’
EXPORTING
it_list_commentary = lt_header

  • I_LOGO             =
    
  • I_END_OF_LIST_GRID =
    i_alv_form         = 'X'.
    

ENDFORM. "frm_top_of_page
&---------------------------------------------------------------------
*& Form frm_end_of_page
&---------------------------------------------------------------------

  •   text
    

----------------------------------------------------------------------
FORM frm_end_of_page.
DATA: ls_header TYPE slis_listheader,
lt_header TYPE slis_t_listheader.
DATA: l_str TYPE string.
CLEAR: ls_header.
REFRESH: lt_header.

CONCATENATE ‘法定代表人____________’
’ ’
‘主管会计工作负责人____________’
’ ’
‘会计机构负责人___________’
INTO l_str.

*---------------------------------------
ls_header-typ = ‘S’.
ls_header-info = ‘后附财务报表附注为财务报表的组成部分’.
APPEND ls_header TO lt_header.
CLEAR ls_header.
ls_header-typ = ‘S’.
ls_header-info = l_str.
APPEND ls_header TO lt_header.
CALL FUNCTION ‘REUSE_ALV_COMMENTARY_WRITE’
EXPORTING
it_list_commentary = lt_header

  • I_LOGO             =
    
  • I_END_OF_LIST_GRID =
    i_alv_form         = 'X'.
    

ENDFORM. "frm_end_of_page

2. ooalv

layout里面的grid_title参数
在这里插入图片描述

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值