Abap 根据特定条件,哪个功能模块用于从表中检索数据?
在ABAP中,哪个功能模块用于根据特定条件从表中检索数据?好的,如果您正在编写ABAP,您只需直接在代码中编写OpenSQL语句。OpenSQL是ABAP语言的一流部分 但是,如果您询问如何使用函数模块读取表格 您可以使用RFC_READ_table功能模块进行任意表格读取。幸运的是,它启用了RFC。它允许您直接传入where子句 唯一需要注意的是,数据以仅512个字符宽的表结构返回。如果从比这更宽的表中读取,数据将被截断。此外,它是一个平面字段,因此需要手动解析每个表列/字段 因此,它不是特别方便用户,但是如果您没有其他选择,它会很有用Abap 根据特定条件,哪个功能模块用于从表中检索数据?,abap,Abap,在ABAP中,哪个功能模块用于根据特定条件从表中检索数据?好的,如果您正在编写ABAP,您只需直接在代码中编写OpenSQL语句。OpenSQL是ABAP语言的一流部分 但是,如果您询问如何使用函数模块读取表格 您可以使用RFC_READ_table功能模块进行任意表格读取。幸运的是,它启用了RFC。它允许您直接传入where子句 唯一需要注意的是,数据以仅512个字符宽的表结构返回。如果从比这更宽的表中读取,数据将被截断。此外,它是一个平面字段,因此需要手动解析每个表列/字段 因此,它不是特别
它在4.6C(甚至更早)的所有版本中都可用。您可以使用以下FMs:
RS_VARIANT_CONTENTS - Values of a variant returned in a table
RS_VARIANT_EXISTS - Checks whether a variant exists for a report
RS_VARIANT_TEXT - Returns short description of variant
RS_VARIANT_VALUES_TECH_DATA - Reads variant parameters of a report
你也可以试试这个
SD_COND_T685_SELECT - to fetch the access sequence for the given condition type.
SD_T682I_SINGLE_READ - to fetch the condition tables.
通常,您使用ABAP的OpenSQL语句编写它。这与普通的SQL语句非常相似。编写它们比使用功能模块要容易得多,除非您想在远程系统上调用功能模块(远程功能调用,可以从SAP或非SAP系统调用) 这就是它的样子:
TYPES:
BEGIN OF ty_material,
matnr TYPE mara-matnr,
attyp TYPE mara-attyp,
END OF ty_material.
DATA:
gt_material TYPE STANDARD TABLE OF ty_material,
gs_material LIKE LINE OF gt_material.
*--This is an OPENSQL statement--*
SELECT matnr
attyp
INTO TABLE gt_material
FROM mara
WHERE attyp BETWEEN ('01' AND '03').
LOOP AT gt_material
INTO gs_material.
WRITE: / gs_material-matnr, gs_material-attyp.
CLEAR gs_material.
ENDLOOP.
使问题含糊不清。几乎每个函数模块都是基于条件参数访问表的。如果有人想知道:否-函数模块在不访问数据库的情况下仍然是函数模块。问题描述的是一个
查询
,而不是功能模块
。非常感谢!!这确实帮助了我:)我想你误解了这个问题,这个问题不是关于下载条件的。