实现ALV的TOP_OF_PAGE的两种方法(二)
来源:互联网 发布:淘宝图片包怎么解压 编辑:程序博客网 时间:2024/06/06 13:24
非HTML控制TOP_OF_PAGE的方法,这种方法稍微复杂一点,主要有以下几个步骤(1,2,3)
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
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
阅读全文
0 0
- 实现ALV的TOP_OF_PAGE的两种方法(二)
- 实现ALV的TOP_OF_PAGE的两种方法(一)
- ALV 简单实现HTML抬头的方法 (介绍 二)
- Function实现ALV Table 二:ALV的弹出窗口形式
- Function实现ALV Table 二:ALV的弹出窗口形式
- OO实现ALV TABLE 二:ALV显示的三种形式
- OO实现ALV TABLE 二:ALV显示的三种形式
- alv 两种格式原始的例子
- CLASS CL_DD_DOCUMENT 显示ALV top_of_page
- ALV 简单实现HTML抬头的方法 (介绍 一)
- 弹出ALV的几种方法(ALV POPUP)
- 算法(二):快速排序的两种实现方法
- ABAP ALV中的TOP_OF_PAGE添加任意图标
- ALV 用对象的方法
- ALV Call function 的方法
- android自定义view的两种方法(二)
- Spring自动装配Bean的两种方法(二)
- alv 的面向对象实现
- nodejs服务器与服务器之间通讯问题(nodejs服务器端创建客户端)
- Linux安装配置Tomcat教程
- 监听tab点击事件,获取点击tab的第几个按钮
- nodejs的下载与安装
- nginx 集群系列
- 实现ALV的TOP_OF_PAGE的两种方法(二)
- SQL字段类型
- ARM嵌入式
- nodejs安装以及使用学习
- vue.js的devtools安装
- 常用dos命令
- Android面试题-机型适配之痛,例如三星、小米、华为、魅族等。
- python二维字典
- dos命令