使用JDBC提取SAP S/4 HANA数据

2020-09-06 12:08发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我的用例是获取所有SAP S/4 HANA数据。 我正在为此探索JDBC,因为我知道ODATA API仅提供标准对象,而我需要所有对象。 一旦我第一次获取了全部数据,然后下一次开始,我就需要增量获取数据,这意味着只有自上次检索以来已更改/更新的数据。 没有像 last_modified 这样的公共字段可用于获取所有对象的更新数据。 实现此用例的正确方法是什么?

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我的用例是获取所有SAP S/4 HANA数据。 我正在为此探索JDBC,因为我知道ODATA API仅提供标准对象,而我需要所有对象。 一旦我第一次获取了全部数据,然后下一次开始,我就需要增量获取数据,这意味着只有自上次检索以来已更改/更新的数据。 没有像 last_modified 这样的公共字段可用于获取所有对象的更新数据。 实现此用例的正确方法是什么?

付费偷看设置
发送
6条回答
bbpeas
2楼-- · 2020-09-06 12:42

数据提取(BW/BW4)和版本的目标系统是什么?

槿木_熙
3楼-- · 2020-09-06 12:48

信息" S/4 Hana(或Hana)的更改"不存在。 因此,它不能通过任何常用方法提取。

您可以想象,这对许多客户甚至其他SAP产品都是一个问题,因此每种产品都提供了自己的机制。

示例:

  • BW正在使用提取器,并且应该提供增量。 实际上,大多数仅提供完整增量,这意味着每次都读取整个表内容。
  • SLT,SDI(HanaAdapter)正在使用触发器添加S/4Hana基础数据库,该触发器将更改信息写入 影子表并将其用作通用机制。

因此,目前您可以选择使用任何支持增量的SAP工具,也可以自行在SAP表上构建触发器。/p>

PS:如果您自己实现某项功能,请考虑删除记录,以及记录被更改但一段时间未提交的情况。 一个典型的"嘿,我将列change_date添加到所有表"同时存在两个问题。 您无法看到已删除的记录,因为该记录已被删除。 而且,如果您读取了从凌晨1点到凌晨2点的所有更改,那么如果尚未提交,则将看不到在1:58 am发生的更改,而下次您从凌晨2点到凌晨3点阅读时,现在可以看到已提交的记录,但是change_date错误 。

CPLASF-自律
4楼-- · 2020-09-06 12:45

嗨,Eugeniy,

目标系统是动态的,我的意思是它可以是任何仓库(例如Redshift,Snowflake等)。 该逻辑就位,只需要找到提取数据的方法即可。

落灬小鱼
5楼-- · 2020-09-06 12:58

您好Enda,谢谢您的链接,但我找不到我想要的东西。 能否请您提供更多相关信息?

clasier
6楼-- · 2020-09-06 12:38

非常感谢Werner的出色回答。

一周热门 更多>