欢迎来到天天文库
浏览记录
ID:39464194
大小:419.00 KB
页数:29页
时间:2019-07-03
《abap ALV 功能》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、ALVSimpleIntroduction一、ALV相关概念ALV――ABAPLISTVIEWER,这里我们姑且称之为ABAP表单浏览器,用它可以标准化,简单化R/3系统中的表单,它可以提供给用户一个统一的表单格式以及用户接口。二、结合一个具体的实例来看ALV的功能首先我们看下图中的这个ALV的布局(这是一般ALV程序表单的典型布局):根据上面对ALV的直观形象,下面将屏幕上的区域划分成几块,分别来解释它的作用:1.快捷工具栏(如下图)细节按钮,你首先必须选中列表中的一行,然后点击它的话,就会弹出一个窗口,显示选中行的细
2、节内容。(另外:你双击你要选择的行,也可以显示细节)按升序排列,首先选中一列,然后再点击它,就可以看到该列是按照升序重新排列。按降序排列,首先选中一列,然后再点击它,就可以看到该列是按照降序重新排列。设置过滤器,通过设置它可以达到筛选的目的,以列名称作为筛选的筛选标准,填入过滤器相应的标准值,然后就可以筛选出满足自己条件的记录。打印预览,点击它之后,就可以预览一下将要打印内容的布局情况。MicrosoftExcel,调用MS的Excel到当前ALV的列表显示区域。(前提:必须安装了MS的Excel)字处理,字处理的相关设
3、置。本地文件,将当前表单存储到本地机器上,有几种供选择的存储格式。邮件收件人,给系统内用户发邮件图形,点击它可以根据表单情况绘制相关图表。更改布局,点击它可以对表单中的列项目排列次序的互换,删减等。选择布局,从已经保存的布局中选择自己满意的布局。保存布局,对于自己满意的布局,可以通过点击它来将布局保存起来。1.表单标题区这个区域主要是用来显示一些抬头信息(总揽信息),类似于WORD中的页眉。我们在使用的时候根据需要来进行相关填写。2.表单显示区这个区域主要是用来显示我们通过代码筛选出来的数据,相关的操作在下面的程序编写部
4、分详细介绍。三、程序的编写1.写一个ALV程序的基本流程:第一步:定义将要用到的表,即TALBES定义部分,然后定义TYPE-POOLS:SLIS.第二步:定义第一步中提到的这些数据类型或者内表的实体对象第三步:定义一些需要用到的变量第四步:定义自己的选择屏幕第五步:start-of-selection部分用一个子函数完成自己所需要数据的抓取用一个子函数完成要显示列表的列名行(第一行)的相关赋值(i_fieldcat_alv)以及设置用一个子函数完成输出格式的设置(i_layout),比如双击一条记录是否弹出对话框啊?是
5、用哪个功能键触发等等用一个子函数FORMDISPLAY_DATA来显示上面我们已经分别封装好的数据,需要调用两个常用的FUNCTIONMODULE:FUNCTION'REUSE_ALV_GRID_DISPLAY'“用来显示表单数据FUNCTION'REUSE_ALV_COMMENTARY_WRITE'“用来显示表单标题2.在我们写ALV程序的时候,有一个类型组是肯定要用到的:TYPE-POOLS:SLIS。在这个类型组中有很多ALV的自定义数据类型以及结构化数据类型(通过TYPE来定义的),我们在写ALV表单的时候需要调
6、用的。我们常用的几个有(蓝色部分):3.两个重要的数据结构(1)catalogt属性(每列对应一个这样的结构slis_fieldcat_alv,所有的列信息存储到内表中slis_t_fieldcat_alv)fieldname内表字段coltext显示的列头just对齐方式(R,L,C)seltext提示信息emphasize输入列的颜色,Cxyz如果后面不设置那么前列后填充后列no_merging排序时不合并no_zero消除‘0’输出no_sign消除正负号hotspot输入热区,小手+下划线(填充后列)do_sum
7、=‘X’列合计(设置后初始化便出现合计了)no_sum=’X’禁止列合计checkbox输出一个checkbox不能更改col_pos列输出位置inttype列的数据类型col_pos输出列tabname标签名称currency(5)货币单位quantity(3)计量单位qfieldname参考计量单位的字段名称roundROUND值exponent(3)流动表示的指数key(1)关键字段icon(1)作为图标输出symbol(1)输出作为符号checkbox(1)作为复选框输出lzero(1)输出前导零no_sign(
8、1)输出抑制符号no_zero(1)为输出隐藏零edit_mask为输出编辑掩码fix_column(1)固定列do_sum(1)总计列值 "汇总,该字段在ALV的最底部汇总no_out(1)列没有输出tech(1)技术字段outputlen列的字符宽度decimals_out控制小数点的位数(2)Layout属性(
此文档下载收益归作者所有