且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

ABAP ALV 的一些说明

更新时间:2022-08-22 09:28:38

ALV是系统的一种网格的显示方式,这种方式带有汇总排序筛选等功能,ALV格式的数据是以单元格为单位显示,不象一般的写屏方式拷出来或是导出成文件不同列的内容粘在一块,这种方式便于数据导出来放在电子表格里进行加工.

slis_t_fieldcat_alv是表内字段的整体,slis_fieldcat_alv是某一个字段的内容,将字段的内容写到slis_fieldcat_alv中,然后append到slis_t_fieldcat_alv,后者是整个列表的标题,在显示的时候用到。

slis_fieldcat_alv中的部分字段及意义:fieldname是对应内表中哪个字段,必须。seltext_s/m/l是标题的名字,(一个即可)必须。col_pos表示所在位置,是第一列还是第二列。。intlen表示可以筛选的长度,如果不输得话有可能在筛选的时候显示不够长。hotsot = 'x'表示可以点它来显示次表。

slis_t_event是event的整体可看作event的集合,感觉可以用来写表头。。slis_alv_event是某个event,需要将slis_alv_event append到slis_t_event.它可以包含图片和listheader等,也就是说listheader等是靠event来显示的。

slis_t_listheader是listheader的集合,slis_listheader是某个listheader。将slis_listheader赋值后append到slis_t_listheader中。它是内表的表头。

slis_listheader 包含:typ :H = header,S = Selection,A = action. key :是和s对应的,是那个的标题吧. info:可以是变量和赋值的。跟在key的标题后面,是个表达值。

函数:reuse_alv_events_get:将各个事件的名字写到slis_t_event的name中。这样,可以在后面,根据名字的不同,对不同的event付不同的form,来实现不同功能。

fieldcat属性

col_pos 输出列

tabname 标签名称

currency(5) 货币单位

quantity(3) 计量单位

qfieldname 参考计量单位的字段名称

round ROUND 值

exponent(3) 流动表示的指数

key(1) 关键字段

icon(1) 作为图标输出

symbol(1) 输出作为符号

checkbox(1) 作为复选框输出

just(1) 对齐

lzero(1) 输出前导零

no_sign(1) 输出抑制符号

no_zero(1) 为输出隐藏零

edit_mask 为输出编辑掩码

emphasize(4) 带有颜色的高亮列

fix_column(1) 固定列

do_sum(1) 总计列值

no_out(1) 列没有输出

tech(1) 技术字段

outputlen 列的字符宽度

decimals_out 能控制小数点的位数

这里面很多都是最后一个对后面的都有影响。。。比如你想固定左边的前3列那么在第一列的key = 'x'.然后在要在第四列处key = ' '.这样前3列固定了(只能在grid类型下使用?)

[@more@]