As400的库类似于windows上的文件夹,但他与windows有些区别。
主要的层次关系是:库-〉对象-〉成员
其最上一层是一个叫做QSYS的库,这也是唯一一个特殊的库,因为它的下面仍然可以包含其他的库,而除此之外的库下都不能再有库。也就是说,库只有一个层次,不象windows下面的文件夹是可以多层存在的。
紧跟着库下来的一层是对象。一般来说,对象是一个可以实际应用和运行的。例如:编译后的数据文件,打印文件和程序。当然,对象也不仅仅包括这些,还有其他属性的对象,最常见的就是QPRGSRC\QDDSSRC\QDSPSRC,这些名字都是预定俗成的名字,当然也可以改成其他的名字。
这几个对象是作为物理源文件属性的。
对象的下面一层叫做成员。最常见的成员类型包括 PF LF DSPF RPG PRTF。这些类型的成员是我们在实际编程中经常打交道的,因为我们所作的编码工作就是针对这几个类型的成员进行的。成员编译后形成相应的对象。如PF\LF --->可以存储数据的物理文件和相应的逻辑文件;RPG --->可执行的程序,等等。编译系统根据文件不同的类型编译后会形成不同的对象类型。

AS400下编程的文件
1、文件类型
这里所说的文件主要是指物理文件、逻辑文件、显示文件和打印文件。物理文件和逻辑文件主要是存储数据的文件;显示文件主要是用于画面显示格式和属性的;打印文件主要是控制打印文件的布局和显示格式的。这些文件都是在RPG程序中的F表中进行声明的,供程序中数据处理和存储使用。利用通过RPG程序从多个物理文件中取得相应的数据项显示到画面上,也可以通过RPG程序将用户在画面上输入的数据存储到物理文件中。物理文件中的数据是实际客观存在的,而显示文件和打印文件中的数据只是在程序运行时才有存在,程序退出后其中的数据也相应的消失。
2、文件使用
RPG程序中对所用的文件进行声明以后,这些文件中的字段名称都可以作为已知变量使用。比如当对一个文件进行读操作后,该字段名称中的值即为文件当前读到记录的相应的字段的值,在RPG程序中就可以通过引用该字段名称来获得当前记录的相应字段的值。如果要想文件中写入数据,只需要在RPG程序中,将想要写入的数值传送到相应的字段名称中,然后执行文件的写操作,就可以生成一条新的纪录。更新文件也是一样,不同的就是执行文件的更新操作。显示文件和打印文件的使用也类似,都是将想要的数值传入相应文件的相应字段中,然后执行相应的操作即可。

主要的几种说明表(H, F, I, E, C)
RPG语言中对作用不同的部分分别用开头一列字母来划分,也可以称为XX表或XX部。
RPG语言中包括H表、 F表、 E表、 I表、 C表、 L表、 O表。
但是现在经常用到的主要是H表、 F表、 E表、 I表、 C表。
H表(控制说明标):提供你的程序和系统的信息,其中可说明程序的名字、程序所用日期的格式和是否应用交替核对排序和文件翻译。(可选)
F表(文件说明表):描述程序应用的所有文件信息,包括文件名、如何应用文件、文件记录的大小、文件应用的输入输出设备、文件是否被外部指示器控制等。
E表(扩展说明表):描述所有在程序中应用的记录地址文件、表文件和矩阵文件的信息;包括记录地文件、矩阵或表的名字,表或矩阵数据记录的入口数目,表或矩阵的入口数目及长度。
I表(输入说明表):可以定义数据结构,说明输入文件的记录和字段的一些信息。
C表(计算说明表): 描述在数据上作的计算和计算次序,也可以用于控制某些输入输出操作;其信息包括对操作说明控制级和条件指示器,程序中应用的字段和常数,被处理的操作以及处理之后是否设置结果指示器等,这也是我们编码主要处理的部分,这里实现了程序的处理功能。

关于as400的一些讲解相关推荐

  1. AS400数据库事务处理机制

    AS400数据库事务处理机制 记录锁等待与程序处理机制 在多作业并发处理中为了保证事务的完整性,数据库通过记录锁.表锁来确保数据的正确性.一个作业在获得一条记录锁时,如果此记录已经处于锁状态,那么当前 ...

  2. 从命令行到IDE,版本管理工具Git详解(远程仓库创建+命令行讲解+IDEA集成使用)

    首先,Git已经并不只是GitHub,而是所有基于Git的平台,只要在你的电脑上面下载了Git,你就可以通过Git去管理"基于Git的平台"上的代码,常用的平台有GitHub.Gi ...

  3. 详细通俗重点CRF层讲解

    本文翻译自GitHub博客上的原创文章,结尾有原文链接.文章没有晦涩的数学公式,而是通过实例一步一步讲解CRF的实现过程,是入门CRF非常非常合适的资料. 相关项目代码: BERT-BiLSMT-CR ...

  4. 高级数据结构讲解与案例分析

    然而,仅仅掌握好它们不足以应付大厂的算法面试的.为了达到对时间和空间复杂度的理想要求,本节课探究高级数据结构,它们的实现要比那些常用的数据结构要复杂得多.其中重点介绍: 优先队列 图 前缀树 线段树 ...

  5. php 伪静态 page-18.html,PHP 伪静态实现技术原理讲解

    PHP 伪静态实现技术原理讲解 发布于 2015-01-18 23:52:58 | 129 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypertext Pre ...

  6. ssm开发框架原理_SSM 单体框架 - 前端开发:视频讲解

    视频讲解 知乎视频​www.zhihu.com 知乎视频​www.zhihu.com 知乎视频​www.zhihu.com 知乎视频​www.zhihu.com 知乎视频​www.zhihu.com ...

  7. python计算wav的语谱图_Python实现电脑录音(含音频基础知识讲解)

    前言 今天开始进入近期系列文章的第一篇,如何用 Python 来实现录音功能. 在开始"造轮子"之前,个人一直强调一个观点,如果有些东西已经有了,不妨直接去 github 上搜,用 ...

  8. PCL:k-d tree 1 讲解

    1.简介 kd-tree简称k维树,是一种空间划分的数据结构.常被用于高维空间中的搜索,比如范围搜索和最近邻搜索.kd-tree是二进制空间划分树的一种特殊情况.(在激光雷达SLAM中,一般使用的是三 ...

  9. 基础矩阵,本质矩阵,单应性矩阵讲解

    ORB-SLAM点云地图中相机的位姿初始化,无论算法工作在平面场景,还是非平面场景下,都能够完成初始化的工作.其中主要是使用了适用于平面场景的单应性矩阵H和适用于非平面场景的基础矩阵F,程序中通过一个 ...

最新文章

  1. sql经验 convert函数转换日期
  2. matlab对手写数字聚类的方法_scikitlearn — 聚类
  3. 平台型OA=高性价比OA?
  4. python交通标志识别_YOLOv3目标检测实战:交通标志识别
  5. eslint 无法格式化ts_vscode保存代码,自动按照eslint规范格式化代码设置
  6. 说实话,写了这么多程序了,还从来没有用JUnit作为单元测试工具测试过,今天就来学习一下
  7. 模块简介与matplotlib基础
  8. 强大的DataGrid组件[12]_分组(Group)——Silverlight学习笔记[20]
  9. 使用MySQLMTOP监控MySQL性能(二)
  10. java 程序出现标点错误,我是学java的新手,下面代码出现报错,请问是什么原因?如何解决?...
  11. 用html 数据库登陆界面设计,登录界面代码_登录界面设计代码_vs登录界面代码-Guide信息网...
  12. 【Redis 开发与运维】总结篇
  13. goahead如何使用cgi服务_GoAhead2.5源代码分析之9-cgi处理句柄(cgi.c)
  14. python 局域网传文件_Python+pyftpdlib实现局域网文件互传代码示例
  15. 0203逻辑卷管理、RAID磁盘阵列、VD0、管理运行级别
  16. BMP与PPM格式的转换
  17. Sophus库(Linux下)的安装(模板类.hpp,非模板类.h)
  18. 英雄算法联盟---五月集训总结
  19. 真香!安利 6 个 Python 数据分析神器
  20. Scrapy爬取中文数据的问题

热门文章

  1. c语言中menu有什么作用,menu是什么意思 menu有什么作用呢
  2. queue方法中add,offer,remove,poll,element,peek的用法和区别
  3. uniapp初始环境搭建,出于猎奇,也出于热爱编程
  4. R语言处理数据——生成随机数
  5. FLEX插件设计的理解
  6. 深度学习入门计划第八周
  7. 数组——洛谷#P1428 小鱼比可爱(Python实现)
  8. CDA_Level 1_学习笔记3
  9. SAP开始菜单中添加自定义菜单
  10. 普通微型计算机就是多媒体计算机,目前办公室和家庭最常用的是多媒体通用微型计算机.doc...