[AS/400] 基本概念
本文内容源于 Go4AS400
在 AS/400 中,AS 代表着 Application System。AS/400 是一个安全性高的系统,可以限制用户只能访问、处理特定的信息。AS/400 整合了 DB2 数据库管理系统。
AS/400 里面可以存储、读取的所有东西,都被称为对象(Object)。
Library
每次我们执行命令或调用程序时,AS/400 都从一个被称为库(library) 的地方搜索指定的命令或程序。库是一个对象的集合。QSYS 是系统的根库,所有用户或系统创建的库都被包含在 QSYS 里面。QSYS 也是唯一一个包含其他库的库,
系统库(system library) 是一个库,包含的对象在安装 AS/400 时被创建。系统提供的库都是以 Q 或者 # 开头。
库的类型
系统库,所有 IBM 提供的库,例如 QSYS, QHLPSYS, QUSRSYS....
当前库(current library) ,当前正在使用的库。你的所有的操作都被存于当前库。可以将当前库设置为自己的个人库。
CHGCURLIB TONYLIB
DSPLIBL(Display Library List), 显示库列表
EDTLIBL(Edit Library List), 编辑库列表
Source Physical File
Source Physical File 用于存放不同类型对象的源代码。详情
Physical File
Physical File 根据定义的结构格式,存储数据。其类型为 PF.
Physical file 的结构层级如下。详情
Columns . . . : Browse AMINEM/DDSSRC
SEU==> ACCOUNT
FMT PF .....A..........T.Name++++++RLen++TDpB......Functions++++++++++++++++++
*************** Beginning of data ***************************** . A UNIQUE >>>>> FILE LEVEL
. A R ACCOUNT >>>>> RECORD FORMAT LEVEL
. A ACLEVELID 2P
. A ACORGCOD 3P >>>>> FIELD LEVEL
. A ACCOUNTNUM 12P
. A ACCURRENCY 3A
. A ACNAME 20A
. A K ACLEVELID
. A K ACORGCOD >>>>> KEYFIELD LEVEL
. A K ACCOUNTNUM
. A K ACCURRENCY
****************** End of data ********************************
Multi-member Physical File
创建一个 PF 后,会有一个和 PF 同名的成员默认出现在文件中。详情
Work with Members Using PDM SYSTEM09 File . . . . . . ACCOUNT
Library . . . . AMINEM Position to . . . . . Type options, press Enter.
=Copy =Delete =Display =Rename =Display description
=Save =Change text =Change using DFU =Find string ... Opt Member Date Text
ACCOUNT // >>>> ACCOUNT member inside ACCOUNT physical file Bottom
Parameters or command
===> _________________________________________________________________________
_______________________________________________________________________________ F3=Exit F4=Prompt F5=Refresh F6=Create
F9=Retrieve F10=Command entry F23=More options F24=More keys
Logical File
Logical file 相当于关系型数据库里面的视图(View),不占据实际内存。
logical file 依赖于 physical file,多个 logical file 可以对应同一个 physical file
只是简单地包含了数据选择的定义,当被访问时,从引用的 physical file 读取数据。可以通过 select 和 omit 命令来筛选数据。详情
一个 logical file 例子
Columns . . . : Browse AMINEM/DDSSRC
SEU==> MULTIFRMT
FMT LF .....A..........T.Name++++++.Len++TDpB......Functions++++++++++++++++++
*************** Beginning of data *************************************
. A R ACCOUNT PFILE(AMINEM/ACCOUNT)
. A K ACCOUNTNUM
. A K ACCURRENCY
Physical File 和 Logical File 对比
Physical File | Logical File | |
内存 | 占据内存,包含原始数据 | 不占据任何内存,不包含数据 |
数据格式 | 只包含一个数据格式 | 可包含 32 个数据格式 |
依赖关系 | 不依赖 LF | 依赖 PF |
删除 | 有 LF 引用的 PF 无法被删除 | 依赖 PF 的 LF 可以被删除,而不需删除 PF |
创建 | CRTPF | CRTLF |
Access path
Access path 定义记录读取的顺序。Access path 可以临时或永久地存于系统中。
Access path 的类型
到达顺序访问路径(Arrival sequence access path)
顺序访问,每次访问文件中物理位置的下一条记录
行号直接访问,根据行号直接访问指定行号的记录
关键字顺序访问路径(Keyed sequence access path)
基于 DDS 中关键字段,进行记录访问。一共有三种类型
Immediate
Rebuild
Delayed
常用的是 Immediate。Immeidate 表示只要 Access path 关联的数据有变更,就会立即更新 access path,无论文件是否被打开了。详情
SEU(Source entry Utility)
SEU 是 AS/400 上源代码编辑器。详情
Array
数组,是相同数据类型的集合。详情
DATA STRUCTURE
Data structure 通常用于表示不同数据类型的结构。有一下几个作用
- 把字段分割成子字段
- 组合字段
- 改变字段的格式
- 将非连续的数据整合为连续的格式
- 转换数据
Subsystem
AS/400 包含多个子系统(subsystem),每一个子系统独立地运行在不同的任务(Job)。根据任务的类型,会把任务分配到不同的子系统中。一个子系统可能处理所有的交互任务,另一个子系统处理所有的批处理任务,还有一个系统处理通信任务。一个子系统可以处理不同类型的任务。
每一个子系统都有自己的运行时属性。任务在运行时可以获取子系统的属性。
常用的命令:STRSBS, ENDSBS, WRKSBS
Jobs
Job 是指在 AS400 里被完成的一个任务。可以分为两部分
System Jobs
Spooling job 想一个批量任务,给 job 生成 spool file 。
User Jobs
交互式任务(Interactive job)
批处理任务(Batch job)
通信任务(Communication job)
自启动任务(Auto-start job)
Job Name
任务名称格式为 Job Number/User/Job Nmae
打开任务命令
WRKJOB JOB(/AJAISWAL/SA)
效果
Work with Job (WRKJOB) Type choices, press Enter. Job name . . . . . . . . . . . . > SA Name, *
User . . . . . . . . . . . . . > AJAISWAL Name
Number . . . . . . . . . . . . > -
Output . . . . . . . . . . . . . * *, *PRINT
Option . . . . . . . . . . . . . *SELECT *SELECT, *STSA, *DFNA... Bottom
F3=Exit F4=Prompt F5=Refresh F10=Additional parameters F12=Cancel
F13=How to use this display F24=More keys
Job Queue
任务被提交后,它会被放置一个叫任务队列(job queue) 的地方,根据自身的优先级等待处理。
Data Queue
数据队列( Data Queue ) 用于两个任务之间的异步通信。将数据从一个任务发送到另一个任务时,使用数据队列 QSNDDTAQ 接口,可以实现异步通信。详情
Journaling
日记(Journaling) ,通常意义上,是用于记录日常活动。在 iSeries 里,日记是指记录对象的活动的行为。当一个文件开启了日记,则文件的打开、关闭、数据更新行为都会被记录下来。详情
Display File Keyworkds
Display File 的关键词有很多,用于控制不同的显示效果。常见的关键词有 ALIAS, COLOR, COMP 等。详情
Subfile
Subfile 仅仅是用于显示表格类数据。subfile 的类型有
Message subfile
Message subfile 是一种特别的 subfile ,用于存储消息。详情
调试批处理任务
STRDBG 和 STRISDB 的对比
STRDBG 在适用范围、速度上都优于 STRISDB,所有在调试时优先考虑 STRDBG。
[AS/400] 基本概念的更多相关文章
- 2013年各大小IT公司待遇
2013年各大小IT公司待遇(初版 摘自好网)本人西电硕士,根据今年找工作的情况以及身边同学的汇总,总结各大公司的待遇如下,吐血奉献给各位学弟学妹,公司比较全,你想去的公司不在这里面,基本上是无名 ...
- 2013应届毕业生各大IT公司待遇整理汇总篇(转)
不管是应届毕业生还是职场中人,在找工作时都必然会对待遇十分关注,而通常都是面试到最后几轮才知道公司给出的待遇.如果我们事先就了解大概行情,那么就会在面试之前进行比较,筛选出几个心仪的公司,这样才能集中 ...
- 2013年各大小IT公司待遇,绝对真实,一线数据!(初版)
本人西电硕士,根据今年找工作的情况以及身边同学的汇总,总结各大公司的待遇如下,吐血奉献给各位学弟学妹,公司比较全,你想去的公司不在这里面,基本上是无名小公司了:无名小公司有时也很给力哦以下绝对是各大公 ...
- [AS/400] Control Language(CL) 基本概念
本文内容源于 Go4AS400 简介 AS400 Control Language(CL) 是由指令(Command)组合而成,用于控制操作和调用系统功能.在 CL 程序中,指令用于和系统 OS400 ...
- 一步步Cobol 400 上手自学入门教程01 - 基础概念
先学习基础概念 1.COBOL字符:包含: User-defined words 用户定义字符 System-names Reserved words 关键字 2.用户定义字符User-defin ...
- 声音分贝的概念,dBSPL.dBm,dBu,dBV,dBFS
需要做个音频的PPM表,看着一堆的音频术语真是懵了,苦苦在网上扒了几天的文档,终于有了点收获,下面关于声音的分贝做个总结. 分贝 Decibel 分贝(dB)是一个对数单位(logarithmic u ...
- (转)学习使用Jmeter做压力测试(一)--压力测试基本概念
一.性能测试的概念 性能测试是通过自动化的测试工具模拟多种正常峰值及异常负载条件来对系统的各项性能指标进行测试.负载测试和压力测试都属于性能测试,两者可以结合进行. 通过负载测试,确定在各种工作负载下 ...
- 今天初步了解了informix的锁的概念
今天初步了解了informix的锁的概念 2005-06-12 01:07:05 分类: IT生活 在load的时候,碰到好几次"-134 ISAM Error :no more loc ...
- 网络基本概念备忘:MAC地址,端口,HTTP状态码
MAC地址 英文MAC Address 英文全称: Media Access Control Address 别称:硬件位址 用途:定义网络设备位置 表示:十六进制数,6 Byte 特点:产品出产后M ...
随机推荐
- You must not call setTag() on a view Glide is targeting
概述 在使用Glide加载图片时,如果出现"You must not call setTag() on a view Glide is targeting"的错误,八成是在使用Li ...
- 02.[WPF]如何固定窗口的大小
在WPF开发过程中碰到一个需求,要求保证窗口大小不变,即便是双击 titlebar 也不能改变窗口大小和位置.要实现这样的效果,需要执行如下步骤: 1,分别设置窗口的 Width/MaxWidth/M ...
- 用Ueditor存入数据库带HTML标签的文本,从数据库取出来后,anjular用ng-bind-html处理带HTML标签的文本
ng.module('index-filters', []) .filter('trustHtml', function ($sce) { return function (input) { retu ...
- 确认(confirm 消息对话框)
confirm 消息对话框通常用于允许用户做选择的动作(包括一个确定按钮和一个取消按钮). 语法: confirm(str) str:在消息对话框中要显示的文本 返回值: 当用户点击"确定& ...
- java基础之反射机制
一.概念 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功能称为jav ...
- Ubuntu Apache 伪静态配置 url重写 步骤
1.加载rewrite模块sudo ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.l ...
- [转] 使用CSS3 will-change提高页面滚动、动画等渲染性能 ---张鑫旭
一.先来看一个例子 下面这个例子来自某外文,我这里简单转述下. 视差滚动现在不是挺流行的嘛,然后Chris Ruppel当其使用background-attachment: fixed实现背景图片不随 ...
- HTML5有语义的内联元素详解
HTML5有语义的内联元素详解 time标签 time 元素表示一个时间值,比如 5:35 P.M., EST, April 23, 2007.例如: Example Source Code:< ...
- javascript删除目标div tr 等
var delTr = document.getElementById("要删除的位置"); // 获取要删除的位置”对象“ delTr.parentNode.removeChil ...
- magento后台 Fatal error: Call to a member function getId() on a non-object in错误
后台分类管理出现错误 Fatal error: Call to a member function getId() on a non-object in 在数据库中运行以下sql语句 INSERT I ...