[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 ...
随机推荐
- 在oracle中怎么把一张表的数据插入到另一张表中
把table2表的数据插入到table1中 insert into table1 select * from table2
- JavaScript 计时事件
JavaScript 计时事件 通过使用 JavaScript,我们有能力作到在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行.我们称之为计时事件. 在 JavaScritp 中使用计 ...
- 让div 实现 input效果
<div class="arcils-info" c /> .arcils-info { border: none; width: 100%; font-size: 1 ...
- 借助Q.js学习javascript异步编程。
金字塔式 //add1 function step1(n, callback) { setTimeout(function(){ callback.call(null, n + 1); }, 100) ...
- Access自动编号的初始值设置及重置编号 转
方法如下: ALTER TABLE tableName ALTER COLUMN Id COUNTER (100, 5) 其中:tableName为要修改的表名,Id为自动编号列,100为初始值,5为 ...
- Laravel PHP Web开发框架
Laravel是一套简洁.优雅的PHP Web开发框架(PHP Web Framework).它可以让你从面条一样杂乱的代码中解脱出来:它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁.富于 ...
- apt-cache madison package-name
apt-cache madison package-name 搜索软件有那些可用版本,
- 化简复杂逻辑,编写紧凑的if条件语句
当业务逻辑很复杂,涉及多个条件的真假,或者多种条件下都会执行同一动作时,如何编写紧凑的if语句呢?本文借由一个实际例子,利用数学的布尔逻辑整理条件,最终产生if语句. 问题 在<X3 重聚> ...
- 对话Facebook人工智能实验室主任、深度学习专家Yann LeCun
对话Facebook人工智能实验室主任.深度学习专家Yann LeCun Yann LeCun(燕乐存),Facebook人工智能实验室主任,NYU数据科学中心创始人,计算机科学.神经科学.电子电气科 ...
- JavaScript的应用
DOM, BOM, XMLHttpRequest, Framework, Tool (Functionality) Performance (Caching, Combine, Minify, JSL ...