1

我正在尝试理解 Adabas Natural DDM。大多数情况下它是有道理的,但很难得到对某些细节的解释。

文件以以下内容开始:

00101DB: 000  FILE: 015  - Z-NATDIC-PR  DEFAULT SEQUENCE:
0020
0030TYL  DB  NAME                              F LENG  S D REMARKS
0040---  --  --------------------------------  - ----  - -  ------------------------

这一切都很好。但是,如果类似的行在同一个 DDM 中多次出现,这意味着什么?

例如,上面的摘录来自一个 DDM,它还包含:

03001DB: 255  FILE: 253  - Z-NATDIC-PR  DEFAULT SEQUENCE:
0310
0320TYL  DB  NAME                              F LENG  S D REMARKS
0330---  --  --------------------------------  - ----  - -  ------------------------

...

05901DB: 255  FILE: 253  - Z-NATDIC-PR  DEFAULT SEQUENCE:
0600
0610TYL  DB  NAME                              F LENG  S D REMARKS
0620---  --  --------------------------------  - ----  - -  ------------------------

...

08901DB: 255  FILE: 253  - Z-NATDIC-PR  DEFAULT SEQUENCE:
0900
0910TYL  DB  NAME                              F LENG  S D REMARKS
0920---  --  --------------------------------  - ----  - -  ------------------------

我的理解是:

  • DDM 的存在是为了定义一种用户友好的方式来引用单个 Adabas 文件的字段(有点像 SQL 表)
  • 默认序列定义了一堆字段的顺序(类似于 SQL 列)

我需要澄清:

  • 默认序列的目的是什么?
  • 如果单个 DDM 中有多个默认序列,这意味着什么?
4

3 回答 3

0

Sheena,它按 Adabas 短名称序列排序。我相信这是在逻辑视图的稍后阶段对您的字段进行排序,例如,如果您想稍后在地址字段的末尾添加邮政编码。Adabas,始终将该字段放在文件末尾,如果您在地址第 4 行和下一个字段之间使用短名称,您可以在那里添加邮政编码。在我与自然合作的 21 年中,您是第一个提出这个问题的人 :-)

于 2013-10-16T13:47:12.930 回答
0

默认序列由两个字符的字段短名称指定。系统根据所选文件编号验证短名称。如果数据库可访问,则根据数据库文件中的相应字段检查短名称。如果数据库中不存在这样的字段,则会显示有效短名称的选择列表。如果无法访问数据库,则不会生成选择列表。

于 2013-10-16T11:48:10.293 回答
0

正如 Carl 所提到的,在 DDM 编辑器中,可以显示有效短名称列表作为完成辅助。
但是,这并不能解释该值的用途。
以上内容记录在当前 Natural 文档的“使用 DDM 编辑器”下。

如果您查看自然编程指南,在...
“访问 Adabas 数据库中的数据”下
...解释了它的使用方式。

要使用 Natural 以逻辑顺序访问 Adabas 数据,您可以编写以下代码:

READ view LOGICAL BY descriptor

(对应于 SQL 中的 Select/Order by)

然而,也可以省略描述符并编写以下代码:

READ view LOGICAL

在这种情况下,将按照默认顺序指定的顺序读取数据。
(这也在 READ 语句的 Natural 文档中进行了讨论)

在我与 Software AG 的 Adabas & Natural 和客户共事 35 年左右的时间里,我从未见过这个领域被使用过。它通常留空。

于 2019-12-30T17:29:25.967 回答