带多行标题的alv_list
来源:互联网 发布:ubuntu ssh key 登录 编辑:程序博客网 时间:2024/05/01 22:57
REPORT z_alv_multi_title_lines NO STANDARD PAGE HEADING.
*---ALV
TYPE-POOLS slis.
DATA: l_events TYPE slis_t_event,
gs_layout TYPE slis_layout_alv,
fieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE,
eventcat TYPE slis_t_event WITH HEADER LINE.
DATA: l_variant TYPE TABLE OF disvariant WITH HEADER LINE.
DATA: BEGIN OF itb_output OCCURS 0,
field1 LIKE mseg-menge,
field2 LIKE mseg-menge,
field3 LIKE mseg-menge,
field4 LIKE mseg-menge,
END OF itb_output.
START-OF-SELECTION.
PERFORM eventtab_build CHANGING l_events.
PERFORM input_data.
PERFORM write_data.
*&---------------------------------------------------------------------*
*& Form write_data
*&---------------------------------------------------------------------*
FORM write_data .
PERFORM get_fieldcat.
gs_layout-zebra = 'X' .
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
i_callback_program = sy-repid
is_layout = gs_layout
is_variant = l_variant
it_fieldcat = fieldcat[]
it_events = eventcat[]
TABLES
t_outtab = itb_output[]
EXCEPTIONS
program_error = 1
OTHERS = 2.
ENDFORM. " write_data
*&---------------------------------------------------------------------*
*& Form GET_FIELDCAT
*&---------------------------------------------------------------------*
FORM get_fieldcat.
CLEAR fieldcat.
fieldcat-tabname = 'ITAB_OUTPUT'.
fieldcat-fieldname = 'FIELD1'.
fieldcat-col_pos = 1.
fieldcat-seltext_l = '出库1'.
fieldcat-key = 'X'.
fieldcat-outputlen = 11.
APPEND fieldcat.
CLEAR fieldcat.
fieldcat-tabname = 'ITAB_OUTPUT'.
fieldcat-fieldname = 'FIELD2'.
fieldcat-col_pos = 10.
fieldcat-seltext_l = '出库2'.
fieldcat-key = 'X'.
fieldcat-outputlen = 10.
APPEND fieldcat.
CLEAR fieldcat.
fieldcat-tabname = 'ITAB_OUTPUT'.
fieldcat-fieldname = 'FIELD3'.
fieldcat-col_pos = 10.
fieldcat-seltext_l = '入库1'.
fieldcat-key = 'X'.
fieldcat-outputlen = 10.
APPEND fieldcat.
CLEAR fieldcat.
fieldcat-tabname = 'ITAB_OUTPUT'.
fieldcat-fieldname = 'FIELD4'.
fieldcat-col_pos = 10.
fieldcat-seltext_l = '入库2'.
fieldcat-key = ''.
fieldcat-outputlen = 10.
APPEND fieldcat.
ENDFORM. " GET_FIELDCAT
*&---------------------------------------------------------------------*
*& Form EVENTTAB_BUILD
*&---------------------------------------------------------------------*
FORM eventtab_build CHANGING p_events TYPE slis_t_event.
DATA l_event TYPE LINE OF slis_t_event.
*---get all events of alv.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0 "reuse_alv_list_display,see the details in function doc.
IMPORTING
et_events = p_events
EXCEPTIONS
list_type_wrong = 1
OTHERS = 2.
*---build alv event itable.
READ TABLE p_events INTO l_event WITH KEY name = 'AFTER_LINE_OUTPUT'.
eventcat-name = l_event-name.
eventcat-form = 'AFTER_LINE_OUTPUT'.
APPEND eventcat.
READ TABLE p_events INTO l_event WITH KEY name = 'TOP_OF_PAGE'.
eventcat-name = l_event-name.
eventcat-form = 'F_TOP_OF_PAGE'.
APPEND eventcat.
ENDFORM. " EVENTTAB_BUILD
*&--------------------------------------------------------------------*
*& Form AFTER_LINE_OUTPUT
*&--------------------------------------------------------------------*
* 输出ALV的表头,手动配置这些
*---------------------------------------------------------------------*
FORM after_line_output USING gs_lineinfo TYPE slis_lineinfo.
DATA: i TYPE i.
DATA: d(394) TYPE c .
DATA: l_line(398) TYPE c.
DESCRIBE FIELD d OUTPUT-LENGTH i.
IF gs_lineinfo-tabindex = 1.
MODIFY LINE 1 LINE VALUE FROM sy-uline(gs_lineinfo-linsz).
MODIFY LINE 2 LINE FORMAT COLOR 7.
CLEAR l_line.
l_line = sy-vline.
l_line+9 = '总出库'.
l_line+20 = sy-vline.
l_line+30 = '总入库'.
l_line+39 = sy-vline.
MODIFY LINE 2 LINE VALUE FROM l_line.
ENDIF.
ENDFORM. "AFTER_LINE_OUTPUT
*&--------------------------------------------------------------------*
*& Form F_TOP_OF_PAGE
*&--------------------------------------------------------------------*
* 给ALV表头输出预留行空间
*---------------------------------------------------------------------*
FORM f_top_of_page.
WRITE : / sy-uline,
/ sy-uline.
ENDFORM. "F_TOP_OF_PAGE
*&---------------------------------------------------------------------*
*& Form input_data
*&---------------------------------------------------------------------*
FORM input_data .
itb_output-field1 = 100 .
itb_output-field2 = 200 .
itb_output-field3 = 300 .
itb_output-field4 = 400 .
APPEND itb_output .
ENDFORM. " input_data
- 带多行标题的alv_list
- 没有标题的标题
- 我的标题
- 修改Dialog的标题
- 文章的标题
- 文章的标题2
- 文章的标题3
- 获取网页的标题
- 带标题的表格
- 窗口的标题问题
- 待写的标题
- VC++标题的改变
- 标题党的胜利
- navigationbar 的标题
- 固定DataGrid的标题
- ownerDraw ListView 的标题
- 测试文件的标题
- 第一篇文章的标题
- 弹出窗口并wirte内表内容
- 锁机制-动态通用锁
- 按内表某些字段汇总处理
- 硬盘分区的ext3文件系统被格式化,剩余空间不变?
- 创建总账科目类型会计凭证
- 带多行标题的alv_list
- Filter在Web开发中的应用
- update module
- [发]发布一个极速的平面寻路WIN32组件
- eclipse导入ApiDemos
- Android长度单位详解(dp、sp、px、in、pt、mm、dip)
- 快速排序的C++实现代码
- Linux 下进程间通信机制(二) Pipe和Fifo
- EXCEL文件上传与下载