SAP ABAP编程 Ranges用法

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

(SAP 中SELECTION-OPTION 是个很强大的功能,在程序中也经常需要类似SELECTION-OPTION的功能,如果不画屏幕的话,SAP提供了RANGE来实现该功能)

实例如下:

DATA: table_t LIKE TABLE OF spfli,

table_wa LIKE  spfli.

RANGES:g_ranges FOR spfli-carrid.

*"单值

*CLEAR G_ranges[].

*G_ranges-sign = ‘I‘.

*G_ranges-option = ‘EQ‘.

*G_ranges-low = ‘AA‘.

*APPEND G_ranges.

"区间

CLEAR g_ranges[].

g_ranges-sign = ‘I‘.

g_ranges-option = ‘BT‘.

g_ranges-low = ‘AA‘.

g_ranges-high = ‘HH‘.

APPEND g_ranges.

SELECT  * FROM spfli  INTO TABLE table_t WHERE carrid IN g_ranges.

LOOP AT table_t INTO table_wa.

WRITE :  / table_wa-carrid,table_wa-connid,table_wa-cityto.

ENDLOOP.

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

*选项介绍:

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

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

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

*3.LOW     低值

*4.HIGH    高值

时间: 2024-10-05 23:36:58

SAP ABAP编程 Ranges用法的相关文章

SAP ABAP编程 弹出按选择对话框函数-'POPUP_TO_CONFIRM'

SAP  中很多时候是需要弹出式对话框的,提醒客户是否要进行某一个操作,我们可以调用CALL FUNCTION 'POPUP_TO_CONFIRM' 下面简单介绍常用的参数. DATA: G_RETURN TYPE C . CALL FUNCTION 'POPUP_TO_CONFIRM' EXPORTING *                                TITLEBAR                    = '弹出标题' *                        

SAP ABAP编程 常用事物代码

屏幕录制事务代码:shdb  (跟新模式 异步) 比较两个代码事务代码:SE39 function module 事物代码: SE37 ABAP代码执行效率分析: SE30  (DB  tables,性能分析的重点)  左上角(相似功能代码比较) 打印单据样式 事物代码: smartstyles 打印表格        事物代码: Smartforms 定义纸张大小事物代码: spad message消息类的定义: SE91 维护事物代码:  SE93 表/视图的维护: SE54 批量修表视图数

SAP ABAP编程 Table Control动态隐藏列

在SAP DIALOG设计中,有时候需要动态的隐藏某些列,下面是方法. ***数据定义 CONTROLS: table_control TYPE TABLEVIEW USING SCREEN 0100.    "Table Control名称 DATA: l_col LIKE LINE OF table_control-cols.                                               "定义Table Control 列 ***在PBO中 PROC

SAP ABAP编程 取得用户中文名称

有时候我们知道SAP当前用户登录的ID,也就是SY-UNAME,可以取得用户中文名称,如下: ***取得用户中文名称 DATA: g_sheet_jsr TYPE string.  "用户中文名称 DATA: L_DEPARTMENT  TYPE AD_DPRTMNT, L_ADDRNUMBER  TYPE AD_ADDRNUM, L_PERSNUMBER  TYPE AD_PERSNUM, L_UNAME       TYPE SY-UNAME, L_NAME_FIRST  TYPE AD_N

SAP ABAP编程 FOR ALL ENTRIES IN使用指南 将表与内表串联

在ABAP开发中,对于不能使用join的聚集表或者需要使用SELECT 的内表,我们一般使用for all entries in 语句将该表与内表串联,查询出需要的数据,例如 TYPES: BEGIN OF t_asnum, asnum LIKE asmd-asnum, END OF t_asnum. DATA:gt_asnum TYPE TABLE OF t_asnum. CLEAR: g_matkl,gt_asnum. SELECT SINGLE matkl FROM zmm_ys_jsdl

SAP ABAP编程 SY-REPID与SY-CPROG的区别

首先,对它两的解释为   sy-repid is the name of the current program.  "当前程序的程序名 sy-cprog is the name of the calling program.   "调用程序的程序名 写个简单的程序,调个FM ,你就知道区别了,当程序进入FM的时候 sy-repid是这个FM所在FunctionPool的名字, sy-cprog是调用这个FM的Report的程序名. 另外,SY-REPID不能更改,SY-CPROG像其

SAP ABAP编程 MOVE-CORRESPONDING将一个结构中的数据赋予另一个结构中

MOVE-CORRESPONDING用于将一个结构中的数据赋予另一个结构中的对应字段,只能存一行数据. 所以使用时应该是如下形式: TABLES: spfli. DATA: yp_wa LIKE spfli, yp_tab LIKE TABLE OF spfli. TYPES: BEGIN OF sp, sel   TYPE c. INCLUDE STRUCTURE spfli. TYPES: END OF sp. DATA: wa TYPE sp, tab TYPE TABLE OF sp.

SAP ABAP编程 创建采购订单

FUNCTION zmm_jsd_creatpo. *"---------------------------------------------------------------------- *"*"Local interface: *"  IMPORTING *"     VALUE(JSD) TYPE  ZMM_YS_JSD_HEAD-JSD *"  EXPORTING *"     VALUE(E_FLAG) TYPE  C

SAP ABAP编程 采购订单过账

FUNCTION zmm_jsd_post. *"---------------------------------------------------------------------- *"*"Local interface: *"  IMPORTING *"     VALUE(EBELN) TYPE  EKPO-EBELN *"     VALUE(EBELP) TYPE  EKPO-EBELP *"     VALUE(PO