我需要以某种格式从 SAP ABAP 系统中提取数据,然后将其加载到 Oracle 数据库中(xlsx、csv、dmp 等)
提取数据后,我将使用 Pentaho 将其上传到 Oracle 数据库中。
有没有办法从SAP中提取数据?我还需要自动化它(提取),但这现在不是太大的问题,我可以稍后再考虑/担心这部分。
如果不可能这样做,解释原因会很有帮助!
您有多种选择来执行此操作。
如果您正在运行 SAP BW,有许多标准工具可以帮助您进行提取和自动化流程。
否则,您可以编写一个简单的 ABAP 程序(类型 1)来从表中读取数据并将其放入平面文件中。
否则,您可以编写远程功能模块 (RFC) 并使用 SAP 的 RFC 库调用它。
您还可以使用 Web 服务包装 RFC 函数并通过 SOAP/HTTP 调用它。
最后,如果您有权访问数据库,您甚至可以编写脚本来提取所需的数据。
从数据库表中提取内容的程序的简单示例:
report ZEXTRACT_EXAMPLE.
data: lt_t001 type table of t001.
data: ls_t001 type t001.
data: lv_filename type string value '/tmp/outfile.txt'.
select * from t001 into table lt_t001.
open dataset lv_filename for output in text mode encoding default.
loop at lt_t001 into ls_t001.
transfer ls_t001-bukrs to lv_filename.
endloop.
close dataset lv_filename.
这确实很原始,但你明白了。它将数据从数据库表选择到内部表(在内存中),并将其写入名为的文件/tmp/outfile.txt
在服务器上,您可以从那里获取它。 (您必须将输出更改为您所需的格式)。
然后,您可以使用 SM36 安排您的程序作为后台作业定期运行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)