[英]IN operator in check statement
In SQ02
transaction, I want to use the check command.在
SQ02
事务中,我想使用 check 命令。 Can I replace the OR
operator with another operator, which shorts the command?我可以用另一个运算符替换
OR
运算符,这会缩短命令吗? Is there an operator like IN
, which exists in SQL?是否有像
IN
这样的运算符,它存在于 SQL 中? The check command is something like: CHECK SKB1-BUKRS EQ '1000'
or CHECK SKB1-BUKRS EQ '2001'
or CHECK SKB1-BUKRS EQ '5221'
.检查命令类似于:
CHECK SKB1-BUKRS EQ '1000'
或CHECK SKB1-BUKRS EQ '2001'
或CHECK SKB1-BUKRS EQ '5221'
。 Is there an operator like IN
, which exists in SQL?是否有像
IN
这样的运算符,它存在于 SQL 中? CHECK SKB1-BUKRS in ('1000', '2001', '5221')
When I write in the Record Processing section: START-OF-SELECTION.当我在记录处理部分写:START-OF-SELECTION。 CHECK skb1-bukrs IN gt_ranges.
检查 gt_ranges 中的 skb1-bukrs。
I am not an expert when it comes to SQ02
I can see however that there are sections for DATA
and INITIALIZATION
so the example below should work.我不是
SQ02
的专家,但我可以看到有DATA
和INITIALIZATION
部分,所以下面的例子应该可以工作。 IN
operator in ABAP (excluding OpenSQL of course) can only be used with ranges. ABAP 中的
IN
运算符(当然不包括 OpenSQL)只能用于范围。
Example:例子:
REPORT zzz.
DATA: gt_ranges TYPE RANGE OF bukrs.
TABLES: skb1.
INITIALIZATION.
gt_ranges = VALUE #(
( sign = 'I' option = 'EQ' low = '1000' )
( sign = 'I' option = 'EQ' low = '2001' )
( sign = 'I' option = 'EQ' low = '5221' )
).
START-OF-SELECTION.
CHECK skb1-bukrs IN gt_ranges.
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.