美文网首页SAP
SAP工具箱 同步外部数据库任意表

SAP工具箱 同步外部数据库任意表

作者: syjf1976_abap | 来源:发表于2021-10-23 00:39 被阅读0次

    前言

    前文介绍过怎么通过ABAP访问外部数据库

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

    本文主要介绍一个简单的工具

    同步外部数据库的任意表到ECC/S4的表中

    通过文末的代码,大家也可以了解一下ABAP怎么通过ADBC动态访问外部数据库表

    程序执行

    输入需要同步的数据库连接(详见配置篇). 需要同步的表名,及读取数据的限制条目.

    执行后,提示成功的记录数

    该程序连接外部ORACLE数据库及外部HANA数据库,测试通过

    注意事项

    程序主要从外部数据库读取表内容写入同名本地表中

    需要同步的表需要在ECC/S4系统中存在并且远程数据库的表关键字必须与本地表一致(因为使用modify 从内表更新表, 如果主键不一致,会导致更新后的数据减少)

    非关键字段无需一致,同名字段自动赋值.

    每次执行只能同步一个表的内容,如果需要批量同步多个表,需要再写一个程序调用该程序.

    外部系统也可以是ECC/S4系统. 这样就可以实现两个ECC系统中的表数据内容同步了.

    该程序未对日期字段做特殊处理,实际应用时需要调整读取外部系统的SQL语句.

    源代码截图

    程序实现代码非常简单, 动态读取外部表内容的FORM详见文末源代码部分.

    动态读取外部表内容部分有详细的注释,解释每个语句的含义.

    总结

    同步外部数据库的表到ECC/S4系统是ADBC访问数据库的一个简单应用. 在这个基本功能的基础上,通过补充部分配置信息,可以实现一个简单的LT系统(SAP的一个数据底层数据同步工具)

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

    待增加功能:

    • 补充配置表维护需要同步的表,同步周期,时间戳字段名,上次时间戳值等

    • 简单过滤条件(只同步需要的数据)

    • 补充配置表维护字段隐射关系(包含内容转换关系)

    • 实现双向同步

    • ......

    后续考虑补充上述逻辑实现这个简单的数据同步工具.

    相关文章

      网友评论

        本文标题:SAP工具箱 同步外部数据库任意表

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