1.SAP里面的关键字 “HIDE” 在双击事件的触发当中可以看成是一个临时的存储器,你可以把它理解成为一个系统的workarea(工作区)。
也就是说,系统可以自动存储你在hide语句中所定义的字段,然后利用这些字段作为where条件中的选择参数去select你想要的表里面的数据。
你说如果去掉了hide的话也能触发新页面,这个是对的,因为这个地方新页面是否出现和hide没有关系,它只会和你的WINDOW STARTING AT X X 语句有关。
ENDING AT X X
2.HIDE:
1) The field for "HIDE" is a globe variable
2) It writes the field to LIST buffer
3) The written field is invisible on the screen
4) From event AT LINE-SELECTION, the content of the field in the current line is
read back
例:
report ytest002
tables:spfli,splight.
start-of-selection.
skip.
*&输出
uline at /(91).
write:/ sy-vline,(15) '航线承运人',sy-vline,(15) '航班连接',sy-vline,(15),
'国家代码',sy-vline,(15) '起飞城市',sy-vline,(15) '起飞机场'.
uline at /(91).
*&输出
select * from spfli.
write:/ sy-vline,(15) spfli-carrid,sy-vline,
(15) spfli-connid,sy-vline,
(15) spfli-countryto,sy-vline,
(15) spfli-cityfrom,sy-vline,
(15) spfli-airpfrom,sy-vline,
*&隐藏关键字
hide:spfli-carrid,spfli-connid.
uline at /(91).
endselect.
at line-selection.
*&只输出第一页
if sy-lsind = 1.
*根据隐藏字段读取并打印从表
select * from spflight
where carrid = spfli-carrid and connid = spfli-connid
write:/ spflight-carrid,sy-vline,splight-connid,
sy-vline,splight-fldate,sy-vline,sflight-price
endselect.
endif.
阅读(5111) | 评论(0) | 转发(0) |