1、data: fieldcat type slis_t_fieldcat_alv with header line. it_fieldcat = fieldcat 属性(用来定义表单中的各个列的相关信息) Fieldcat-col_pos = n. 输出列 Fieldcat-tabname = FIELDNAME. 对应的内表字段名Fieldcat-seltext_s/m/l = 列名. 输出列文本(_s:短文本_l:长文本) Fieldcat-emphasize = CX10. 带有颜色的高亮列(其中X=(1-7)颜色同format) Fieldcat-hotspot = X. 作为热点显示可
2、触发鼠标触发事件 Fieldcat-currency = CURRKEY. 表 TCURX 中的货币名称 Fieldcat-quantity(3) 计量单位 Fieldcat-qfieldname 参考计量单位的字段名称 Fieldcat-round = n. 四舍五入至小数位数下n 位 Fieldcat-exponent = n. 浮点数的幂指数为n Fieldcat-key = X.关键字段 Fieldcat-icon = X. 作为图标输出 Fieldcat-symbol = X. 输出作为符号 Fieldcat-checkbox = X. 作为复选框输出 Fieldcat-just =
3、 SPACE, R, LC. 对齐方式 Fieldcat-lzero = X. 输出前导零 Fieldcat-no_sign = X.输出抑制符号 Fieldcat-no_zero = X. 为输出隐藏零 Fieldcat-edit_mask = SPACE, mask. 输出为mask的模式 Fieldcat-fix_column = X. 固定列 Fieldcat-do_sum = X. 总计列值总和 Fieldcat-no_out = X. 列不输出 Fieldcat-tech = X. 该字段为技术字段 Fieldcat-outputlen = n 列的字符宽度为n Fieldcat-
4、decimals_out = n 能控制小数点的位数为nFieldcat-datatype = C,I,N 定义数据类型2 SORT sortable type slis_t_sortinfo_alv with header line.it_sort = sortable(排序) Sortable-Fieldname 字段名 Up 升序排列 Down 降序排列 Subtot3 Layout layout type slis_layout_alv . is_layout = layout 属性 (用于定义ALV表单的相关格式、属性) info_fieldname = LINE_COLOR 设置特
5、殊行颜色(将LINE_COLOR增加到内表字段,写CX10到特殊行的LINE_COLOR, X为颜色值) colwidth_optimize = X. 优化列宽设置no_colhead = X 不显示列名no_vline = 不显示列间竖线zebra f2code = &ETA 设置触发弹出详细信息窗口的功能码,这里是双击no_vline这个用来设置列间隔线 detail_initial_linesdetail_popup 是否弹出详细信息窗口 detail_titlebar 设置弹出窗口的标题栏 totals_text totals_only group_change_edit header
6、_text4按钮 DATA: i_events TYPE slis_t_event WITH HEADER LINE. 事件:it_eventsi_callback_pf_status_set = i_callback_user_command出口程序触发事件对应子程序:FORM PF_STATUS_SET USING rt_extab TYPE slis_t_extab. FORM user_command USING ucomm LIKE sy-ucomm selfield TYPE slis_selfield. 系统按钮功能码:功能代码: 函数文本: 图标名称:ETA 细节 ICON_S
7、ELECT_DETAILEB9 调用报告. ICON_TABLE_SETTINGSREFRESH刷新 ICON_REFRESHALL 全部选择 ICON_SELECT_ALLSAL 取消全选 ICON_DESELECT_ALL OUP 按升序排列 ICON_SORT_UPODN 按降序排列ICON_SORT_DOWN ILT 设置过滤器 ICON_FILTER UMC 总计 ICON_SUM SUM 小计. ICON_INTERMEDIATE_SUM RNT_PREV 打印预览ICON_LAYOUT_CONTROL VEXCEL Microsoft Excel ICON_XLSAQW 字处理.
8、 ICON_WORD_PROCESSING %PC 本地文件 . ICON_EXPORT%SL 邮件收件人 ICON_MAILABC ABC 分析 ICON_ABC GRAPH 图形 ICON_GRAPHICS OL0 更改布局. ICON_ALV_VARIANTS OAD 选择格式.ICON_ALV_VARIANT_CHOOSE AVE 保存格式. ICON_ALV_VARIANT_SAVE INFO 信息 ICON_INFORMATION 4 ALV表头设置 i_callback_html_top_of_pageform top_of_page using cl_dd type ref t
9、o cl_dd_document.语法同HTML fomat二、 REUSE_ALV_GRID_DISPLAY 常用参数用法by liyily_liyiNeusoft Group ERP DivisionJan.2008This document contains 17 pages. It can be transmitted or printed as a whole. No portion of it can be modified or reproduced without the written permission from the author.Table of ContentsK
10、EY WORDS : REUSE_ALV_GRID_DISPLAY 参数 1.前提条件ALV Report是SAP中一种常见的报表展现形式,它可以标准化、简单化R/3系统中的表单,可以提供给用户一个统一的表单格式以及用户接口。ALV既能显示简单表单(SIMPLE LIST)又能显示有序表单(SEQUENTIAL LIST),编写一个ALV程序包含以下基本流程: 第一步:定义将要用到的表,即TALBES定义部分,然后定义TYPE-POOLS: SLIS 第二步:定义“第一步”中提到的这些数据类型或者内表的实体对象 第三步:定义一些需要用到的变量 第四步: 定义自己的选择屏幕 第五步: 定义INI
11、TIALIZATION部分,在这个部分往往要指定w_repid的值, w_repid = sy-repid 第六步: start-of-selection部分用一个子函数完成对ALV表单标题区域的赋值(i_list_comments)用一个子函数完成自己所需要数据的抓取用一个子函数完成要显示列表的列名行(第一行)的相关赋值(i_fieldcat_alv)以及设置用一个子函数完成输出格式的设置(i_layout)用一个子函数FORM DISPLAY_DATA来显示上面封装好的数据,需要调用两个常用的FUNCTION MODULE: FUNCTION “显示表单数据REUSE_ALV_COMMEN
12、TARY_WRITE “显示表单标题本文将着重介绍ABAP中显示表单数据REUSE_ALV_GRID_DISPLAY函数中常用参数的含义及用法,REUSE_ALV_LIST_DISPLAY中参数与此类似。由于本文介绍ALV表单标题输出函数,需要读者对简单ALV报表有所了解。文档最后通过一个实例演示了该函数中常用参数的实际用法及效果。2.开发实例ALV报表需要展现的数据抓取封装完成以后,需要用到FUNCTION输出数据,一个常用的FUNCTION MODULE是REUSE_ALV_GRID_DISPLAY,该函数将以GRID风格将数据展现给前台用户。该函数主要包含以下常用参数:参数名称默认值用法
13、I_INTERFACE_CHECKSPACE接口一致性检查I_BYPASSING_BUFFER是否使用BUFFERI_BUFFER_ACTIVE如果每次显示ALV都是相同的字段目录,则该字段目录会被放到一个特殊的缓存里,加快ALV的显示速度。I_CALLBACK_PROGRAM调用程序名称I_CALLBACK_PF_STATUS_SET设置屏幕菜单I_CALLBACK_USER_COMMAND实现对应菜单项及相应事件功能I_CALLBACK_TOP_OF_PAGE设置ALV表头I_CALLBACK_HTML_TOP_OF_PAGE加入HTML格式的表头I_CALLBACK_HTML_END_O
14、F_LIST加入HTML格式的表尾I_STRUCTURE_NAME为输出表数据结构的命名,指定了这个参数,域目录将会自动生成I_BACKGROUND_ID设置报表背景I_GRID_TITLE设置抬头信息I_GRID_SETTINGS打印表头设置IS_LAYOUT设定输出样式IT_FIELDCAT设定显示的项目名称及输出设定IT_SPECIAL_GROUPS如果字段目录中一些字段通过SP_GROUP被分组在一起.必须为这些组传递一个组的文本内表IT_SORT排序设置IT_FILTER过滤设置I_DEFAULT用户是否可以定义默认的布局: 可以定义默认布局,SPACE 不可以定义默认布局I_SAV
15、E保存表格布局: 只能保存全局变式U 只能保存特定变式A 都可以保存SPACE 不能保存变式IS_VARIANT管理表格布局IT_EVENTS设置抬头和结尾IT_EVENT_EXIT设置回调的方法的执行行为,表明用户所写的代码是在执行标准执行之前还是之后IS_PRINT从后端开始打印的参数I_SCREEN_START_COLUMN对话格式展现的开始列I_SCREEN_START_LINE对话格式展现的开始行I_SCREEN_END_COLUMN对话格式展现的结束列I_SCREEN_END_LINE对话格式展现的结束行I_HTML_HEIGHT_TOPHTML表头高度I_HTML_HEIGHT_
16、ENDHTML表尾高度IT_ALV_GRAPHICS是否可以在图表中显示ALVIT_HYPERLINK使用超链接T_OUTTAB需要展现的表下面针对常用的输入参数进行详细介绍:I_CALLBACK_PROGRAM:定义调用程序名称,一般为当前程序sy-repid。I_CALLBACK_PF_STATUS_SET:定义屏幕菜单,此参数允许报表展现用户自定义的屏幕菜单。如设定i_callback_pf_status_set=定义如下FORM,程序自动调用PF01菜单。FORMPF_STATUS_SETUSINGrt_extabTYPEslis_t_extab.setpf-statusPF01.EN
17、DFORM.I_CALLBACK_USER_COMMAND:此参数响应菜单项及相应事件。如I_CALLBACK_USER_COMMAND =点击相应的按钮或双击等操作触发对应定义的事件。user_commandusingi_ucommlikesy-ucommis_selfieldtypeslis_selfield.casei_ucomm.whenIC1messagei888(sabapdocu)withDOUBLECLICKED!CREATECALLSCREEN1001endcase.I_CALLBACK_TOP_OF_PAGE:设置ALV表头信息。如I_CALLBACK_TOP_OF_PAG
18、ETOP-OF-PAGETOP-OF-PAGE.DATA:t_headerslis_t_listheader,wa_headerslis_listheader,t_lineLIKEwa_header-info,ld_linei,ld_linesec.wa_header-typS标题字体大小.wa_header-infothe top of alvprogram.alv页上方的标题.APPENDTOt_header.FUNCTION输出表标题.EXPORTINGit_list_commentaryt_headeR.此参数设置的表头格式如下:IT_FIELDCAT:设定显示的项目名称。如设定it_
19、fieldcatfieldcat_alv下面将信息填充至fieldcat_alv后,报表运行时自动展现填充的信息。frm_display_alvDEFINEh_out.wa_fieldcat-fieldname1wa_fieldcat-seltext_l2.appendwa_fieldcattofieldcat_alv.clearwa_fieldcat.END-OF-DEFINITION.h_outmatklmaterialgroupmatnrnummeinsunitmaktxdescENDFORM.展现效果如下:I_SAVE:设定是否可以保存报表布局(具体参数值见上表)。如I_SAVE 此设
20、置允许保存所有布局。IS_LAYOUT:设定报表输出样式。该参数确定字段宽度、行颜色、是否显示分隔线等等属性,通常定义为slis_layout_alv类型组。如:gs_layoutslis_layout_alv.gs_layout设置Grid的字段列宽度自动适应GS_LAYOUT-COLWIDTH_OPTIMIZE = 设置Grid的行颜色变换显示GS_LAYOUT-ZEBRA = 设置弹出窗口的标题栏GS_LAYOUT-DETAIL_TITLEBAR = 详细内容设置Grid的多行选择列,其中BOX必须为内表的一列,为一个字符长度GS_LAYOUT-BOX_FIELDNAME= BOX设置Grid是否显示行分割线GS_LAYOUT-NO_VLINE= 设置Grid的合计行显示在明细的上面GS_LAYOUT-TOTALS_BEFORE_ITEMS= 设置Grid不显示弹出明细显示窗口GS_LAYOUT-DETAIL_POPUP= 设置Grid显示LED列, LIG
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1