SAP 工具箱数据同步平台五日志改进

作者:ABAP技巧与实战 约 7 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:ABAP, Data Engineering, 开发, 数据工程
SAP 工具箱数据同步平台五日志改进 - 封面图
SAP 工具箱数据同步平台五日志改进 - 封面图

原创 无峰 [ ABAP 技巧与实战 ](javascript:void\(0\);)

**点击蓝字** 关注我们

前言

数据同步平台是在ABAP中开发的一个数据同步工具,类似于LTRC,通过配置实现任意两个数据库的数据同步(ABAP需要配置相关的外部数据库连接).

数据同步平台的底层通过调用ADBC类实现远程数据库的读取,写入.

详情请参阅以下链接

> 详见链接 无峰,公众号:ABAP 技巧与实战 [ SAP工具箱 数据同步平台( 一 简介 )

> ](https://mp.weixin.qq.com/s?__biz=Mzg4MjA1MjE4NQ==&mid=2247487015&idx=1&sn=584a97d471cfc430c62096fab64cf00a&chksm=cf5dd311f82a5a0735f9fbba6be9abd8150a8ac2d7e2a3cd3a33034202784af1ad5744fc7098&token=738161928&lang=zh_CN#rd)

> 详见链接 无峰,公众号:ABAP 技巧与实战 [ SAP工具箱 数据同步平台( 二 配置 )

> ](https://mp.weixin.qq.com/s?__biz=Mzg4MjA1MjE4NQ==&mid=2247487036&idx=1&sn=109d7a86c102ebd8f89e75c94df918dd&chksm=cf5dd30af82a5a1c9e911c98eeec606e5c6f7a81bd95142d8122bf7fa03f56dfce641e94d571&token=738161928&lang=zh_CN#rd)

> 详见链接 无峰,公众号:ABAP 技巧与实战 [ SAP工具箱 数据同步平台(三 改进)

> ](https://mp.weixin.qq.com/s?__biz=Mzg4MjA1MjE4NQ==&mid=2247487366&idx=1&sn=90918dd19e07bae2eb80ba51123a8999&chksm=cf5dd2b0f82a5ba6ad60a8d2a41d0e16292ece86db7689b4da1221798110ec75c45306358d07&token=738161928&lang=zh_CN#rd)

> 详见链接 无峰,公众号:ABAP 技巧与实战 [ SAP工具箱 数据同步平台(四 大表处理改进)

> ](https://mp.weixin.qq.com/s?__biz=Mzg4MjA1MjE4NQ==&mid=2247487379&idx=1&sn=aa635a6a1faff5e0080c41d1700cfd64&chksm=cf5dd2a5f82a5bb3c46a961ddf717661c76208f52624ab61e3c1159671d1e9c161788703f718&token=738161928&lang=zh_CN#rd)

**本文主要介绍数据平台的日志功能改进**

旧版日志功能局限

数据同步平台的第一版只考虑了ABAP的表与外部系统表之间的同步,因此大部分功能包括日志功能都会读取ABAP中的数据字典对象,

用来定义内表,定义ALV的字段.

优化数据同步平台的平台属性后(可以通过平台同步任意两个非ABAP的外部数据库),原本获取ABAP数据内容的逻辑就会出现问题.

有可能读取不到数据字典对象,会导致日志显示同步内容时报错.

思维导图

作为一个程序员,很惭愧一直都没有使用思维导图,因此在这个日志改进时,尝试画了一个思维导图.

**思维导图对于梳理思路还是有一定作用的.**

关于思维导图软件

• Xmind 收费,好看,功能强大

• freemind 免费,相对难看,功能差不多

SAP 工具箱数据同步平台五日志改进 - 封面图
SAP 工具箱数据同步平台五日志改进 - 封面图

新版日志功能改进

• 通过程序调用ID整合日志

• 考虑字段映射标记

• 考虑大表分包日志记录

• 日志中记录表名信息

_**01** _

**程序调用ID整合日志**

每个接口编号可能定义一个主表/多个从表,因此每次执行时会显示多个表的执行结果.

每个表的执行结果单独记录日志ID. 在接口中通过程序调用ID来整合这个接口的所有的日志ID(图一).

日志显示时,可以看到同一个程序调用ID的所有日志信息(如图二)

如果选中的日志存在多个表,会弹窗让用户选择最终要显示的表内容(如图三)

SAP 工具箱数据同步平台五日志改进 - 封面图
SAP 工具箱数据同步平台五日志改进 - 封面图

图一

SAP 工具箱数据同步平台五日志改进 - 封面图
SAP 工具箱数据同步平台五日志改进 - 封面图

图二

SAP 工具箱数据同步平台五日志改进 - 封面图
SAP 工具箱数据同步平台五日志改进 - 封面图

图三

_**02** _

**日志中记录表名信息**

日志ID的记录维度是表名及表的分包,写入日志表时,把目标表名同时写入了<产生的单据号码>字段(如图四).这样,在日志显示时,可以直观的看到表名信息.

SAP 工具箱数据同步平台五日志改进 - 封面图
SAP 工具箱数据同步平台五日志改进 - 封面图

图四

_**03** _

**考虑字段映射标记**

字段映射功能用来设置是否启用配置表 ZTSYNC_C2中配置的字段隐射规则.如果启用了字段隐射, 源表内容和目标表内容就可能不一致.

改进的日志功能考虑了数据的字段映射标记(图五),同时记录源表数据内容及目标表数据内容.并且根据源或目标数据库是否为当前ABAP系统(连接名DEFAULT)来确定是否使用数据字典定义(使用数据字典定义可以获取更多的字段信息,比如字段描述).

启用后,显示日志时会拆分成源表/目标表两个选项,用户可以选择显示源表或目标表的日志(如图三)

对于没有配置字段隐射的接口, 因为源表与目标表相同,日志中只需要显示目标表内容(如图六)

SAP 工具箱数据同步平台五日志改进 - 封面图
SAP 工具箱数据同步平台五日志改进 - 封面图

图五

SAP 工具箱数据同步平台五日志改进 - 封面图
SAP 工具箱数据同步平台五日志改进 - 封面图

图六

_**04** _

**考虑大表分包处理**

为了避免大表处理出现内存溢出的错误,记录的日志内容也依赖于配置中的分包数.每个分包记录一份日志.

如图一的同步结果看到接口SYN001配置了一个主表ZTTS_H,一个从表ZTTS_I .

点击显示日志时, 可以看到主表7条记录按包数2拆分成了4个包,从表6条记录按包数2拆分成3个分包(如图二)

勾选多个日志,可以把这些日志中记录的表内容合并显示. (如图七,因为是外部数据库表,没有获取字段描述,ALV中用字段名显示)

图八中使用了数据字典定义ALV,所以包含了字段描述信息及主键信息.

SAP 工具箱数据同步平台五日志改进 - 封面图
SAP 工具箱数据同步平台五日志改进 - 封面图

图七

SAP 工具箱数据同步平台五日志改进 - 封面图
SAP 工具箱数据同步平台五日志改进 - 封面图

图八

总结

数据同步平台改进平台属性后, 日志功能也随之改变.

这样可以真正作为一个平台,同步任意两个数据库系统之间的数据,并且记录详细的操作日志,数据传递内容日志.

这些日志整合在接口日志查询中(ZIFLOG), 可以查询数据同步平台的执行情况及执行传递的数据内容.

如果接口中启用了字段映射,日志中可以分别查看映射前的源表数据及隐射后的目标表数据.

**约定**

如果你对这篇文章感兴趣,请帮忙点赞,在看,分享.

( **如果你真的喜欢这篇文章,请记得回来打个赏,作为支持我继续下去的动力,这是一个正反馈过程.

越多的人打赏,作者越有动力分享,读者就能享受更多的福利.毕竟打赏的金额富不了我,穷不了你,却能支持这个公众号长久发文.** )

SAP 工具箱数据同步平台五日志改进 - 封面图
SAP 工具箱数据同步平台五日志改进 - 封面图

**公众号 : syjf1976_abap**

**ABAP开发技巧**

**微信号 : 392077**

**请扫码加入公众号群,提问或参与话题讨论**

ABAP技巧与实战

关于作者:ABAP技巧与实战

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「SAP工具箱数据同步平台五日志改进.md」整理生成,仅用于内部技术分享与学习交流。