加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

oracle – 如何从SAP ABAP系统中提取数据?

发布时间:2020-12-12 16:25:51 所属栏目:百科 来源:网络整理
导读:我需要以一种格式从SAP ABAP系统中提取数据,然后将其加载到Oracle数据库中(xlsx,csv,dmp ..等) 提取数据后,我将使用Pentaho将其上传到Oracle数据库. 有没有办法从SAP提取数据?我还需要自动化它(提取),但现在这不是太大的问题,我可以稍后解决/担心这一部分.
我需要以一种格式从SAP ABAP系统中提取数据,然后将其加载到Oracle数据库中(xlsx,csv,dmp ..等)

提取数据后,我将使用Pentaho将其上传到Oracle数据库.

有没有办法从SAP提取数据?我还需要自动化它(提取),但现在这不是太大的问题,我可以稍后解决/担心这一部分.

如果不可能这样做,解释为什么会有所帮助!

您有很多选择可以做到这一点.

如果您正在运行SAP BW,则有许多标准工具可帮助您进行提取和自动化流程.

否则,您可以编写一个简单的ABAP程序(类型1)来从表中读取数据并将其放入平面文件中.

否则,您可以编写启用远程的功能模块(RFC)并使用SAP的RFC库调用它.

您还可以使用Web服务包装RFC函数,并通过SOAP / HTTP调用它.

最后,如果您有权访问数据库,您甚至可以编写脚本来提取所需的数据.

从DB表中提取内容的程序的简单示例:

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安排程序作为后台作业定期运行.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读