请教loop条件的写法

[复制链接]
查看11 | 回复5 | 2009-2-3 15:38:41 | 显示全部楼层 |阅读模式
自己做了一个SCREEN, 让用户输入Issue CRR date来筛选出某时间段数据.
用户有可能输入一个日期, 也有可能输入两个日期.
对内表的数据进行筛选, 内表字段ISCRDAT数据类型是DATS 8
在程序中定义的data: cd_lowlike vbak-erdat. 也是日期型8位.
ABAP字段和屏幕字段对应了.
loop条件是这样写的:
LOOP AT OZCRRSG WHERE ISCRDAT >= cd_low andISCRDAT 1.PNG (28.9 KB, 下载次数: 22)
下载附件
2009-4-10 22:18 上传

回复

使用道具 举报

千问 | 2009-2-3 15:38:41 | 显示全部楼层
你是看的循环次数,还是看的最后记录条数啊?
回复

使用道具 举报

千问 | 2009-2-3 15:38:41 | 显示全部楼层
內表記錄表, loop 加where和沒加where記錄數都一樣多, 也就是where沒起作用. where有錯嗎? 糊涂了...
回复

使用道具 举报

千问 | 2009-2-3 15:38:41 | 显示全部楼层
OZCRRSG 你看的哪个内表啊???
需要显示的时候才会有用 , WHERE 语句 不会减少循环的次数的.
回复

使用道具 举报

千问 | 2009-2-3 15:38:41 | 显示全部楼层
是OZCRRSG .
明白了. 原来一直以为Loop后面的条件会立即改变内表的记录行数, 它只控制循环次数. endloop完后, 内表的记录行数才会改变. 如要先前改变内表的记录行数, delete OZCRRSGwhere ISCRDAT >= cd_low andISCRDAT 1.PNG (3.09 KB, 下载次数: 4)
下载附件
2009-4-11 12:27 上传



2.PNG (32.63 KB, 下载次数: 7)
下载附件
2009-4-11 12:27 上传

[ 本帖最后由 steve126 于 2009-4-11 12:27 编辑 ]
回复

使用道具 举报

千问 | 2009-2-3 15:38:41 | 显示全部楼层
说的很详细,很好,支持下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行