我是AS400的新手,我找到了一份工作,我正在使用AS400和Powerlink(XA)来访问和管理大型ERP数据。我找到了一种使用System I Nagivator表通过Excel VBA和SQL访问数据的方法。
我的问题是我无法在Navigator中找到正确的Schemas>表来提供与AS400中我想要的数据相匹配的excel VBA。
问题:假设我想找到商品的价格,我想在Navigator中找到价格表。在AS400中是否有办法获得与导航器中的同一个表匹配的价格表名称?
这是我的第一个问题,如果需要更多信息,请告诉我。
请帮助,谢谢!
答案 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将显示您的作业当前锁定的文件。也就是说,为您的工作打开的文件。价格字段应该在其中一个中。