AS400和System I Navigator

时间:2017-04-22 19:17:31

标签: sql excel-vba ibm-midrange iseries-navigator vba

我是AS400的新手,我找到了一份工作,我正在使用AS400和Powerlink(XA)来访问和管理大型ERP数据。我找到了一种使用System I Nagivator表通过Excel VBA和SQL访问数据的方法。

我的问题是我无法在Navigator中找到正确的Schemas>表来提供与AS400中我想要的数据相匹配的excel VBA。

问题:假设我想找到商品的价格,我想在Navigator中找到价格表。在AS400中是否有办法获得与导航器中的同一个表匹配的价格表名称?

这是我的第一个问题,如果需要更多信息,请告诉我。

请帮助,谢谢!

1 个答案:

答案 0 :(得分:4)

首先是一个小术语,AS / 400是一个旧术语,以前称为AS / 400的平台和操作系统的当前名称现在是Power Systems上的IBM i。 IBM i是操作系统。 (直到IBM再次更改名称)

如果您知道表名但不知道IBM i对象名

在IBM i上,数据库内置于操作系统中,许多操作系统对象实际上都是数据库对象。以下是一些SQL概念如何映射到IBM i术语。

SQL              IBM i
--------------   ------------------
Schema           Library
Table            Physical file
Index            Logical file
View             Logical file
Row              Record
Column           Field

不幸的是,在IBM i中,对象名称限制为10个字符。另一方面,SQL名称最多可包含128个字符。您找不到名为CustomerMaster的物理文件。 DB2将长名称映射到系统名称。您可以通过查询目录找到系统名称:

select system_schema_name, system_table_name
  from qsys2.systables
  where table_name = 'Navigator name'

TABLE_NAME将保存表的长SQL名称,SYSTEM_TABLE_NAME将保存IBM i对象名。请注意,长模式名称也可以映射到系统名称。列SCHEMA_NAME保存模式的长SQL名称,而SYSTEM_SCHEMA_NAME保存IBM i库名称。模式名称长度超过10个字符的情况并不常见,因此两个模式名称列通常是相同的。

如果您知道程序名称,并且有权访问来源

这对你来说可能是显而易见的,但我只是为了完整而把它放在这里。您可以在源中查找正在使用的文件,并从屏幕字段回溯到文件。

如果您只有绿屏

如果您具有适当的权限,则可以检索当前作业的打开文件。如果这对您不起作用,则必须向系统管理员或具有权限的人员寻求帮助。这只会让你获得候选文件,而且它们可能是逻辑文件。为此,您必须有权查看您的工作,并且您必须知道系统请求密钥如何映射到您的键盘(这是特定于实现的,并且可能是自定义的,因此您必须检查与公司内部的某人或您的模拟器确定相关的内容。

在我们身后,启动绿屏程序,显示您正在寻找的价格字段。然后按系统请求键。如果您配置为允许此操作,您将在屏幕底部获得一个输入行,并将光标定位到它。

按Enter键。

您现在应该在系统请求菜单中。

选择选项3并再次按Enter键。您应该在当前作业的“显示作业”屏幕中。

如果这一切对您有效,那么选项12将显示您的作业当前锁定的文件。也就是说,为您的工作打开的文件。价格字段应该在其中一个中。