设置抬头的,效果如下:

ALV:HTML_TOP_OF_PAGE_SAP刘梦_新浪博客_python

​​

​​

ALV:HTML_TOP_OF_PAGE_SAP刘梦_新浪博客_python_02

​​

主要代码如下:

DATA :LT_DATA  TYPE  TABLE  OF SPFLI .

START-OF-SELECTION .
SELECT * FROM SPFLI INTO TABLE LT_DATA .

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = SY -REPID
I_CALLBACK_HTML_TOP_OF_PAGE = 'HTML_TOP_OF_PAGE'
I_STRUCTURE_NAME = 'SPFLI '
I_HTML_HEIGHT_TOP = 30 "控制表头栏目的初始高度
TABLES
T_OUTTAB = LT_DATA
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2 .
IF SY -SUBRC <> 0 .
* Implement suitable error handling here
ENDIF .

*&---------------------------------------------------------------------*
*& Form HTML_TOP_OF_PAGE
*&---------------------------------------------------------------------*
*在使用 document->add_text的时候, 如果使用 SAP_STYLE 参数,
*显示文本的效果就定了(字体,大大小,颜色等),用了其他的控制参数也没作用。
*----------------------------------------------------------------------*
* -->DOCUMENT text
*----------------------------------------------------------------------*
FORM HTML_TOP_OF_PAGE USING DOCUMENT TYPE REF TO CL_DD_DOCUMENT .

DATA : TEXT TYPE SDYDO_TEXT_ELEMENT .
DATA : M_P TYPE I ,
M_BUFFER TYPE STRING .


* TEXT = '标题'.
* CALL METHOD DOCUMENT->ADD_TEXT
* EXPORTING
* TEXT = TEXT
* SAP_STYLE = 'HEADING'.



 (考虑到html解析问题,此句代码用图片展示)
​​

ALV:HTML_TOP_OF_PAGE_SAP刘梦_新浪博客_html_03

​​

 

   CALL  METHOD DOCUMENT ->HTML_INSERT   "使用html insert css布局保证了 标题永远居中 
EXPORTING
CONTENTS = M_BUFFER
CHANGING
POSITION = M_P .

"插入两行空行
CALL METHOD DOCUMENT ->NEW_LINE .

TEXT = '用户名:' .
CALL METHOD DOCUMENT ->ADD_TEXT
EXPORTING
TEXT = TEXT
SAP_EMPHASIS = 'Strong' .

"添加间隙 2
CALL METHOD DOCUMENT ->ADD_GAP
EXPORTING
WIDTH = 2 .


TEXT = SY -UNAME .
CALL METHOD DOCUMENT ->ADD_TEXT
EXPORTING
TEXT = TEXT
SAP_FONTSIZE = CL_DD_DOCUMENT =>LARGE
SAP_FONTSTYLE