我是靠谱客的博主 小巧汉堡,最近开发中收集的这篇文章主要介绍SAP Ranges 的用法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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

单值的实例:


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 里边放值。

实例:


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 Ranges 的用法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

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

评论列表共有 0 条评论

立即
投稿
返回
顶部