SAP RANGE TABLE

SELECT-OPTIONS语句用于创建选择表,这是一种标准化存储复合选择限制的方法,主要用于OPENSQL的WHERE子句。选择表包含SIGN、OPTION、LOW和HIGH四个组件,分别表示运算符的逻辑、运算符类型、低界和高界。RANGES语句则用来创建具有相同结构的内表,但不在选择屏幕中,且不能直接用于数据传递。这种表需在程序中填充并配合SUBMIT语句使用。

系统为每个SELECT-OPTIONS语句创建选择表。选择表的目的是按标准化的方式保存复合选择限制。它们可按多种方式使用。它们的主要目的是使用OPEN SQL语句的WHERE子句把选择标准直接传输到数据库表。选择表是一个带表头行的内表。它的行结构是字段字符串,由四个组件构成,即SIGN,OPTION,LOW和HIGH.

SIGN: SIGN的数据类型是C,长度为1.SIGN是标志,表示保存在OPTION中的运算符是否需要翻转。允许值是I和E.

I:表示“包含” E:表示“排除”

OPTION:OPTION的类型是C,长度为2。OPTION包含选择运算符。如果SIGN包含E,运算符的作用就像它的前面有NOT一样。

如果HIGH是空的,可以使用EQ,NE,GT,LE,LT,CP和NP,这些运算符在编程逻辑表达式中描述。运算符CP和NP没有它们在通常逻辑表达式中所具有的范围。只有当在输入字段中使用了通配符(“*”或“+”)时它们才是有效的。

如果HIGH已被填充,则可以使用BT(位于)和NB(不位于)。这些运算符的功能与BETWEEN和NOT BETWEEN一样。

LOW:LOW的数据类型与数据库表的列类型相同,该表与选择标准相连接。

如果HIGH为空,LOW的内容定义单值选择。它与OPTION中的运算符相结合,为数据库选择指定了条件。

如果HIGH已填充,LOW和HIGH中的内容为间隔选择指定上界和下界。与OPTION中的运算符相结合,该间隔为数据库选择指定了条件。


HIGH:数据与数据库表的列类型相同,该表与选择标准相连接。HIGH中的内容为间隔选择指定了上界。


RANGES语句

要用与选择表相同的结构创建内表,可使用RANGES语句

RANGES <seltab> FOR <f>."该语句创建选择表<seltab>,该表参考数据库表的列<f>或内部字段<f>。选择表<seltab>必须在程序中填充。不必在程序中再用TABLES语句声明数据库表。

例:

DATA: BEGIN OF <seltab> OCCURS 10,

SIGN(1),

OPTION(2),

LOW LIKE <f>,

HIGH LIKE <f>,

END OF <seltab>.

用RANGES语句创建的选择表不是选择屏幕的一部分,它们在程序<prog>中不能用于数据传递,该程序由下列语句启动:SUBMIT <prog> WITH <seltab> IN <table>.表<table>可以在调用程序中用RANGES创建。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值