点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好,
要从外部应用程序创建采购申请,我使用了RFC。
但是我必须首先读取材料数据,因此我使用数据库查询从MARA表中读取材料。 但是,有时当我尝试创建请求时,会收到一条消息,告诉我材料未激活。
我尝试使用BAPI_MATERIAL_GET_DETAIL,BAPI_MATERIAL_GET_ALL和BAPI_MATERIAL_GETALL来阅读材料,但是所有这些功能模块都需要输入材料编号,并且我想获取所有材料。
如何使用数据库查询检查材料是否处于活动状态? 还是有没有可以用来读取所有材料的功能模块 而没有输入材料号作为输入?
谢谢。
您可以使用RFC_READ_TABLE函数准备任何数据库表。 可以在SQL WHERE条件下调用该函数,并且在阅读MARA时无需提供材料编号。
请注意,SAP并未正式发布该函数。 请确保阅读相关的OSS注释。
最诚挚的问候
Dominik Tylczynski
Hello Dominik,
重播。 但是WHERE子句中的条件是什么,又来自哪个表?
执行功能模块RFC_READ_TABLE时,得到表的描述,并且具有"已停用"描述(称为ENTAR)的列为空。
注意。
Malek Guenichi
您可以使用RFC_READ_TABLE从MARA表中读取物料主数据。 在QUERY_TABLE参数中指定表格名称。
在FIELDS参数中,您可以指定要读取的表格字段。
如果您只需要读取特定材料,例如 您可以将其输入特定材料组中的OPTIONS参数,例如 MATKL ='物料组'。 OPTIONS参数的语法与WHERE条件的SQL语法相同。
或者,您可以使用BAPI_MATERIAL_GETLIST函数根据选择条件来读取物料清单。 对该功能的详细记录。
最诚挚的问候
Dominik Tylczynski
实际问题是,对于某些材料,当我创建采购申请时 通过RFC,我收到消息说我的装备未激活。 (请参阅上面的描述以及您对第一份答复的评论)
所以我只想检索激活的材料,而我不知道是哪一栏负责的。
这意味着问题尚未解决。 。
无论如何,谢谢您,我很想帮助我。
一周热门 更多>