【发布时间】:2014-06-19 09:09:50
【问题描述】:
SAP 相当明智地禁止您在数据库表中包含深层结构。然而,对于一个新项目,我有一个深度嵌套的结构,我想持久存储。这个结构包括另外十几个结构,每个结构都可能进一步嵌套。这种结构基本上是给定业务合作伙伴的数十个标准 SAP 表中包含的数据的快照。我目前没有预见到构建这个结构、用数据填充它并以 XML 的方式发送它的问题。
但是,我不知道应该如何将整个交易保存到数据库中。由于我不能将这种嵌套的混乱转储到单个表中,因此我必须基本上重新创建 Z 表中的每个基础表关系。由于这看起来工作量太大,除了繁琐且容易出错之外,我正在寻找一种替代解决方案来存储这些数据。
我在其他编程语言中遇到过这种情况,我只需将整个对象的数据转储存储为 XML、平面文件或任何格式 du jour。然后可以在查询表并重建对象并将其加载到内存时加载此数据转储。这是 ABAP 开发的有效方法吗?是否有用于(反)构造通用嵌套结构的现有类或函数模块,还是我必须从头开始编写自己的逻辑?或者有没有我想念的替代品?
【问题讨论】:
-
ABAP 确实支持将表序列化为 XML XStrings。您需要做的就是将生成的 XStrings 存储在一个表中(因为 XStrings 本身是扁平的)。