ABAP实现ALV表头的DEMO:

运行效果:

代码:

***********************************************************************
*TEST
***********************************************************************
REPORT ZTESTR1_XFL NO STANDARD PAGE HEADING
MESSAGE-ID LINE-SIZE LINE-COUNT .
************************************************************************
* Tables Definitions
************************************************************************
*TABLES:xxxxx. ************************************************************************
* Data Definitions
************************************************************************
DATA:BEGIN OF GT_ITAB OCCURS ,
NAME() TYPE C,
AGE TYPE I,
CLASS() TYPE C,
END OF GT_ITAB. TYPE-POOLS : SLIS.
DATA:GT_EVENT TYPE SLIS_T_EVENT,
GW_EVENT LIKE LINE OF GT_EVENT.
DATA:LISTHEADER TYPE SLIS_T_LISTHEADER,
WA_LISTHEADER LIKE LINE OF LISTHEADER.
DATA: GS_LAYOUT TYPE SLIS_LAYOUT_ALV,
GT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE. ************************************************************************
* Selection Screen
************************************************************************ ************************************************************************
* Initialization
************************************************************************
INITIALIZATION. ************************************************************************
* At Selection Screen
************************************************************************
AT SELECTION-SCREEN. ************************************************************************
* At Selection Screen Output
************************************************************************
AT SELECTION-SCREEN OUTPUT. ************************************************************************
* Report Format
************************************************************************
TOP-OF-PAGE. END-OF-PAGE.
************************************************************************
* Main Process
************************************************************************
START-OF-SELECTION.
PERFORM GET_DATA.
PERFORM BUILD_EVENTS.
PERFORM FRM_TOP_OF_PAGE.
PERFORM CATA_LOG.
PERFORM ALV_SHOW. END-OF-SELECTION. *&---------------------------------------------------------------------*
*& Form GET_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM GET_DATA .
GT_ITAB-NAME = '张三'.
GT_ITAB-AGE = .
GT_ITAB-CLASS = 'Class1'.
APPEND GT_ITAB.
CLEAR GT_ITAB. GT_ITAB-NAME = '李四'.
GT_ITAB-AGE = .
GT_ITAB-CLASS = 'Class2'.
APPEND GT_ITAB.
CLEAR GT_ITAB. ENDFORM. " GET_DATA FORM BUILD_EVENTS.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE =
IMPORTING
ET_EVENTS = GT_EVENT
EXCEPTIONS
LIST_TYPE_WRONG =
OTHERS =
.
IF SY-SUBRC <> .
* Implement suitable error handling here
ENDIF. READ TABLE GT_EVENT WITH KEY NAME = 'TOP_OF_PAGE' INTO GW_EVENT.
IF SY-SUBRC = .
MOVE 'FRM_TOP_OF_PAGE' TO GW_EVENT-FORM.
MODIFY GT_EVENT FROM GW_EVENT INDEX SY-TABIX.
ENDIF. ENDFORM. FORM FRM_TOP_OF_PAGE.
DATA: H_DATUM() TYPE C,
H_UZEIT() TYPE C.
CLEAR:LISTHEADER,WA_LISTHEADER.
*标题
WA_LISTHEADER-TYP = 'H'.
WA_LISTHEADER-KEY = ''.
WA_LISTHEADER-INFO = 'XXX学校'.
APPEND WA_LISTHEADER TO LISTHEADER.
CLEAR:WA_LISTHEADER. *中标题
WA_LISTHEADER-TYP = 'S'.
WA_LISTHEADER-KEY = ''.
WA_LISTHEADER-INFO = '学生名单'.
APPEND WA_LISTHEADER TO LISTHEADER.
CLEAR:WA_LISTHEADER. WRITE SY-DATUM TO H_DATUM DD/MM/YYYY.
WRITE SY-UZEIT TO H_UZEIT USING EDIT MASK '__:__:__'.
*小标题
WA_LISTHEADER-TYP = 'A'.
WA_LISTHEADER-KEY = ''.
CONCATENATE 'Today:' H_DATUM 'Time:' H_UZEIT
INTO WA_LISTHEADER-INFO.
APPEND WA_LISTHEADER TO LISTHEADER.
CLEAR:WA_LISTHEADER. CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = LISTHEADER
* I_LOGO = ''
* I_END_OF_LIST_GRID =
* I_ALV_FORM = .
ENDFORM. *&---------------------------------------------------------------------*
*& Form CATA_LOG
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM CATA_LOG.
DEFINE FILEDCAT.
GT_FIELDCAT-FIELDNAME = &.
GT_FIELDCAT-SELTEXT_L = &.
APPEND GT_FIELDCAT.
END-OF-DEFINITION.
FILEDCAT 'NAME' '姓名'.
FILEDCAT 'AGE' '年龄'.
FILEDCAT 'CLASS' '班级'.
ENDFORM. " CATA_LOG *&---------------------------------------------------------------------*
*& Form ALV_SHOW
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM ALV_SHOW . GS_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
* 显示ALV的函数
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = SY-REPID
IS_LAYOUT = GS_LAYOUT
IT_FIELDCAT = GT_FIELDCAT[]
IT_EVENTS = GT_EVENT
I_SAVE = 'A' "保存全局,特定變式
TABLES
T_OUTTAB = gt_itab
EXCEPTIONS
PROGRAM_ERROR =
OTHERS = . ENDFORM. " ALV_SHOW

  

最新文章

  1. Ajax 概念 分析 举例
  2. C#-WebForm-复合控件
  3. 网络编程(一):用C#下载网络文件的2种方法
  4. Silver Cow Party(最短路,好题)
  5. 使用自定义字体 @font-face 小试
  6. maven库文件所在目录
  7. 华为&quot;128为大整数相加&quot;机试题
  8. 剑指OFFER之数值的整数次方(九度OJ1514)
  9. &lt;meta 标签的详细使用
  10. jcarousellite 实现图片列表滚动
  11. BPMN 2.0规范
  12. 给Android程序猿的六个建议
  13. Windows下Apache+Django+mod_wsgi的static和media问题处理
  14. Random Forest Classification of Mushrooms
  15. R语言︱数据规范化、归一化
  16. springboot操作mongodb
  17. Python Day2 (二)
  18. 《算法》第六章部分程序 part 6
  19. Le Chapitre X
  20. vi入门到精通

热门文章

  1. Geometry and Appearances【转】
  2. useReducer代替Redux小案例-2(八)
  3. hive分区表新增字段,已有分区显示为null
  4. PHP 输出日志到文件 DEMO
  5. PHP 类属性
  6. java连接数据库失败:java.sql.SQLException: Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: YES)
  7. 123457123456#2#----com.ppGame.XueYingYu76--前拼后广--儿童英语_pp
  8. 基于grafana+prometheus构建Flink监控
  9. Python - Django - 简单分页的实现
  10. Windows2008R2+iis7.5环境下的dz论坛X3版伪静态设置教程