【发布时间】:2016-08-24 13:22:28
【问题描述】:
我需要从复杂的 COBOL 结构(大型机)生成 xml 文件。 我不能使用 XML GENERATE cobol 函数,因为数据树太大而无法放入 W-S(大约 8 个嵌套数组,每个数组大约出现 75 个 30 字节), 所以没有一个组项可以传递给 xml 生成函数。
我能想到的唯一选择是通过逐级遍历所需 adabas 表的层次结构并填充文件来“手动”生成 xml, 这个选项对我来说的问题是我不知道如何每次都再次检查文件并“嵌套”下一个节点。
有没有更好的方法?
数据来自 ADABAS 表,我也可以使用自然表,是否有更好的使用自然表的解决方案?据我所知,自然不允许嵌套超过 3 层,这对我来说是个问题。
谢谢!
【问题讨论】:
-
您最好更好地说明您的数据。除了名称之外,您没有描述嵌套结构。
-
IBM COBOL 6.1 将 Working-Storage 限制为 2,147,483,646 字节,单个 01 级别可以是 999,999,999 字节。在 IBM COBOL 4.2 中,这些限制都是 134,217,727 字节。您确定您拥有超过 128 兆字节的数据吗?
-
嗨,是的,我们正在使用 134,217,727 字节版本。而且我确信我的数据更多,我收到一个编译错误,说它大于 134,217,727。 (我正在建一棵树,虽然里面要存储的数据可能不到128mb,但结构必须符合最坏的情况,而且超出了限制...... . . . . . 比尔,xml应该代表一棵树,最多8层,每个节点都有自己的属性,树代表公司的层次结构。谢谢
-
1.您需要提供您的 Adabas 文件的描述和明显分层递归查询的逻辑,否则不可能提出任何建议。 2. 我会质疑将这么多数据放在单个 XML 文档中的设计。如果您解决了 XML 生成问题,您(或其他人)将立即面临处理这个怪物的问题。
-
您将如何从程序中获取数据?您知道记录大小的限制,不是吗?
标签: xml cobol mainframe zos adabas-natural