美文网首页简友广场SAP想法
SAP工具箱 数据同步平台( 一 简介 )

SAP工具箱 数据同步平台( 一 简介 )

作者: syjf1976_abap | 来源:发表于2021-11-03 12:15 被阅读0次

    点击蓝字 关注我们

    前言

    之前写了一篇文章,介绍怎么同步外部数据库的任意表(付费文章无法添加链接,感兴趣的请自行在公众号中查找).当时就萌发了一个念头. 把这个工具扩展一下功能,设计成为一个数据同步平台.

    这一周没怎么写公众号文章,原因之一就是在忙于设计开发这个平台.

    本文主要介绍数据同步平台的功能

    功能简介

    数据同步平台 ZBC_SYNC_REMOTE_TABLE

    数据同步平台可以完成数据在不同系统的表中同步,类似于LT的功能(超级简化版).

    可以通过配置实现一些简单的接口(限定为数据通过中间表传递的方式).同时与ZIFLOG接口日志整合,作为整体接口设计的一个可选方案.

    数据同步平台设计了如下功能, 目前大部分的功能已经实现(出站尚未支持)

    • 全量/变化量方式同步

    • 同时同步多个相关表

    • 对源表的额外过滤条件

    • 字段映射

    • 两种同步方向:出站/入站支持

    • 整合在接口集中监控

    TIPS

    SPRING

    出站: 数据从ECC/S4系统同步到外部系统数据库

    入站: 数据从外部系统数据库同步到ECC/S4系统

    外部系统数据库可以是HANA,ORACLE,SQLSERVER等DBCO支持的数据库类型

    关于DBCO的配置详见链接无峰,公众号:ABAP 技巧与实战ABAP基础知识 访问外部数据库-配置篇

    ZIFLOG

    ZTIFLOG作为接口集中监控平台,整合了以下接口方式的接口内容显示

    • RFC函数(界面内容显示)

    • 直接调用外部系统的HTTP服务可以封装在RFC函数中(JSON内容显示)

    • 通过PO的接口(XML内容显示)

    • 数据同步平台实现的接口(表内容显示)

    详见链接无峰,公众号:ABAP 技巧与实战SAP工具箱之 接口调用集中监控

    两种处理模式

    数据同步平台支持两种处理模式

    • 接口模式

    • 表模式

    01

    接口模式

    接口模式需要配置接口相关的表

    • ZTIF002            接口定义

    • ZTSYNC_C1      同步数据库表配置

    • ZTSYNC_C2      同步数据库表-字段映射(特殊隐射规则),

    ZTIF002中主要配置接口编号及接口的激活状态,记录日志,记录接口内容等信息

    接口配置字段详见链接无峰,公众号:ABAP 技巧与实战SAP工具箱 自动生成发出接口程序(二 接口定义表)

    ZTSYNC_C1 用于配置接口同步的主表,从表及主从表的关联字段,时间戳字段等信息

    • 支持全量及变化量同步数据.

    • 支持同时同步多个表:一个主表,多个从表

    • 支持表同步的额外数据过滤

    • 支持远程表与本地表的字段映射

    • 支持复杂的字段映射关系

    ZTSYNC_C2 可以不配置,此时需要确保目标表和源表字段一致(至少主键字段一致).

    02

    表模式

    该模式下无需配置任何表, 但是平台只能简单的把指定表的所有记录从远程同步到本地,该模式可以用来快速实现不同ECC系统之间的数据同步或不同CLIENT的数据同步).

    通过DB连接及集团限定,可以处理以下两种数据同步场景

    同一个服务器不同CLIENT的同步(指定CLIENT,不指定DB连接,默认连接当前数据库)

    不同的服务器的同步(指定CLIENT,指定DB连接)

    执行过程

    数据同步平台的执行过程

    启动程序ZBC_SYNC_REMOTE_TABLE或事务代码ZSYNC

    01

    选择处理模式

    接口模式下, 只能输入接口编号(接口对应的表及相关同步参数在配置表

    ZTIF002/ZTSYNC_C1/ZTSYNC_C2中维护)

    表模式下,允许输入需要同步的表,指定DB连接名称,接口方向等.

    还需添加一个源集团限制(以便同步不同ECC系统的表)

    为了数据安全,默认只同步Z开头的表(可以去掉勾选).

    02

    执行同步

    如果勾选了显示详细日志. 执行后可以看到数据同步的结果,包含下述内容

    • 接口编号

    • 日志ID

    • 表名

    • 数据处理状态: S 成功 E 失败 R 回滚

    • 读取条目数

    • 写入条目数

    • 持续时间(微秒)

    • 执行的SQL语句

    数据处理状态 R : 一个接口的多个表,如果有一个表同步失败,则其它表标记为状态 R.

    03

    显示同步内容

    点击日志ID,可以跳转到ZIFLOG ,也可以单独执行事务代码 ZIFLOG,输入接口编号或时间查询

    勾选日志编号,点击同步按钮, 可以查看本次同步的数据内容

    如果接口存在多表, 会显示多表选择,如果单表,则不会出现该选择

    显示本次同步的特定表的内容

    如果同步出现错误,日志中会显示报错信息

    总结

    数据同步平台

    • 尝试通过配置实现一些简单接口(从外部中间表读取或数据写入到外部中间表),

    • 尝试部分取代LT(LT同步数据报错处理比较麻烦,如果源表结构改变,需要重新同步所有数据).

    • 作为一个ECC/S4 不同系统,不同集团的数据同步工具.

    关于LT详见链接无峰,公众号:ABAP 技巧与实战SAP操作手册之 LT数据同步配置

    数据同步平台的变化量通过时间戳比较获取,这是获取变化量的最简单的方式,便是实现.只是需要源表中有一个时间戳字段,数据新建或修改后都会更新该字段内容.

    系统所有的配置表可以通过一个统一方式添加时间戳.

    详见连接无峰,公众号:ABAP 技巧与实战SAP小技巧 自定义配置表的简单日志

    数据同步平台目前尚未在项目中应用,后续会尝试应用在一些数据同步的场景中,根据实际运行结果,再调整或补充功能.

    THE

    END

    相关文章

      网友评论

        本文标题:SAP工具箱 数据同步平台( 一 简介 )

        本文链接:https://www.haomeiwen.com/subject/dmdfzltx.html