我是靠谱客的博主 小巧汉堡,这篇文章主要介绍SAP Ranges 的用法,现在分享给大家,希望可以做个参考。

 在SAP中,有时候需要把单值的结构变成区间的结构,也就是类似SELECTION-OPTION的功能,SAP提供了RANGES来实现该功能.

单值的实例:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
RANGES:g_werks FOR vbrp-werks. "所有 CLEAR g_werks. g_werks-sign = 'I'. g_werks-option = 'EQ'. g_werks-low = '1001'. APPEND g_werks. g_werks-sign = 'I'. g_werks-option = 'EQ'. g_werks-low = '1002'. APPEND g_werks. g_werks-sign = 'I'. g_werks-option = 'EQ'. g_werks-low = '1003'. APPEND g_werks. g_werks-sign = 'I'. g_werks-option = 'EQ'. g_werks-low = '1005'. APPEND g_werks. g_werks-sign = 'I'. g_werks-option = 'EQ'. g_werks-low = '1011'. APPEND g_werks.

 

G_ranges就相当于 SELECTION-OPTION定义的类型。

这种方式适合值的个数并不多的情况,当值的个数特别多的时候,会显得代码特别长。遇到过一个工厂的 ranges ,进行权限控制,我的做法是抽离成一张 自建的权限表,循环权限表,往 ranges 里边放值。

实例:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
RANGES:r_werks FOR marc-werks. SELECT * INTO CORRESPONDING FIELDS OF TABLE it_check FROM zztrd_check_perm. LOOP AT it_check INTO wa_check. "权限调整,抽离权限表 modify by fx 2020.06.18 r_werks-sign = 'I'. r_werks-option = 'EQ'. r_werks-low = wa_check-WERKS. "循环往 Ranges 里面放值 APPEND r_werks. ENDLOOP.

选项介绍:

1.SIGN 值为 I 和 E 。 I是包含, E是排除, 一般使用I。

2.OPTION 如果HIGH 为空 ,为单值选择 。有 EQ、NE、GT、LE、LT等逻辑操作  对于*的  CP包含  NP是排除

 如果HIGH 不为空 为区间选择 有BT,NB可选

3.LOW 低值

4.HIGH 高值

最后

以上就是小巧汉堡最近收集整理的关于SAP Ranges 的用法的全部内容,更多相关SAP内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(91)

评论列表共有 0 条评论

立即
投稿
返回
顶部