免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 居士
打印 上一主题 下一主题

【原创文章】AS/400程序员培训(中级)(作者:胖有型) [复制链接]

论坛徽章:
0
61 [报告]
发表于 2008-04-01 22:56 |只看该作者
非常感谢啊

论坛徽章:
0
62 [报告]
发表于 2008-04-02 10:17 |只看该作者
多谢无私奉献!!

论坛徽章:
0
63 [报告]
发表于 2008-04-05 12:48 |只看该作者

回复 #1 居士 的帖子

good! thinks!!

论坛徽章:
0
64 [报告]
发表于 2008-04-07 14:59 |只看该作者
太感动啦!!!!

论坛徽章:
0
65 [报告]
发表于 2008-04-08 10:29 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
66 [报告]
发表于 2008-04-08 13:48 |只看该作者
才看了前三章

论坛徽章:
0
67 [报告]
发表于 2008-04-08 22:15 |只看该作者
其实以下内容早就记录下来了,但是一直没有时间来张贴。
建议修改地方1
2.5
2.5.1 内容说明
File Designation:
P:
S:
以上两个只有在用到RPG Logic(RPG逻辑)的时候才这样定义,即流程由RGP逻辑控制(也就是RPG编译器控制流程进行)
F:翻译应该是“全过程文件”吧。即由程序控制流程。

建议修改地方2
2.5
2.51
File Format
E: 声明的文件,是外部描述的文件(即文件在程序运行之前就已存在?)
说明:为E说明你引入的这个对象(object)已经存在,必须存在,否则会编译报错

F: 声明的文件,是一个程序描述文件?(不知道什么意思,没用过)
说明:为F说明你引入的这个文件是在内部定义的,你必须在程序中进行定义才行
实例:

建议修改地方3
2.6
2.6.1
E:所谓结构,可以理解为一个“由多个变量组合而成的大变量”。
  所谓结构,就是数据结构。类似于C语言中的结构体

建议修改地方4
2.6
2.6.1
From:
     这里仅可以用于定义DS后的字段/子项中,它与后面to/length中的to连用,构成from to结构
     表示从该数据结构的某个位置到某个位置
例如:
     DMYDS      DS
     D  DSFLD01        1      2    //表示从MYDS的第1个位置开始到第2个位置,长度为2
     D  DSFLD02        3      4    //表示从MYDS的第3个位置开始到第4个位置,长度为2

建议修改地方5
2.6.2 常用例子
定义一个10 位长,其中含2 位小数的字符型变量,并使其初始值为1
D MYFLD S 10 2 INZ(1)

上面的例子有问题,先不说别的,就“2 位小数的字符型变量”这句话就有问题。其次你在Internal Data Type说到:“空:变量定义为字符型、压缩型数字”,所以我觉得应该是“2 位小数的压缩十进制变量”(推测)

建议修改地方6
2.8 C 行说明
2.8.1 写在前面
RPG中cycle 牵扯的是RPG Logic相关的知识,是在RPG程序设计(指发明)之初,由RPG编译器控制程序流程,此时在C表最后就不能添加SETON LR 和RETURN退出程序。


建议修改地方7
3 和程序相关的数据库知识
3.1 LF(逻辑文件)
3.1.1 逻辑文件概念
LF文件可以设置数据的各种约束条件(唯一性、主外键、自定义约束),通过LF对象间接操作PF对象可以实现像SQL数据库一样的约束条件。就是将将定义和约束分开实现,所以不能说LF仅仅是个视图,只能说他同时也拥有视图的功能(理由:可以屏蔽PF中的某些项,也可以实现多个表的连接)。
--------------------------------------------------------------------------------------------------
疑问地方1
2.5
2.51
File Format
当这里声明为F时,后面的Device必须为Printer?不能为DISK?


疑问地方2
2.5
2.51
Record Address Type
有疑问,只能对设置键值的LF文件使用么?

疑问地方3
不管是F表抑或是D表  按F4后有个Prompt type 这个里面有很多中不同的格式,有什么区别比如说:D和DX C和CX等

疑问地方4
RPGLE和RPG的区别?CL和CLD和CLP的区别

疑问地方5
2.6
2.6.1
Internal Data Type:
定义变量的类型,允许的值有:
空:变量定义为字符型、压缩型数字
通过学习,我了解空的时候为字符型,那什么时候空代表压缩十进制?当在Decimal Positions进行设置以后表示压缩十进制?

Leave the field blank for a character field, or a packed decimal standalone field, or a zoned cimal field data structure subfield.
还有就是,按照这个说明,应该还包括区位十进制吧?
那这三种又是怎么区分的~!

疑问地方6
2.6.3 补充说明
变量的定义,除了在D 行定义之外,还可以在C 行通过赋值语句直接定义

D FLD01 S 2 INZ(‘01’)

C MOVE ‘01’ FLD01 2 //2 在length 处,右对齐是等价的
疑问:RPG里面有没有全局变量和局部变量一说?如果有,那D表定义的应该算全局变量吧,C表定义的仅仅是临时的局部变量,这两者能等价么?

疑问地方6
2.6.3 补充说明
D MYDS DS
D MYFLD01 1 8
D MYFLD02 1 8 0
这种用法算不算变成技巧呢?还是仅仅像你说的一样在作弊?

并且有这么一种定义方式
D MYDS  DS
D   MYFLD00   1   8
D   MYFLD01   1   2
D   MYFLD02   3   8
D   MYFLD10   9   12
有上面这种用法,当你输入的一个长度为8的MYFLD00,有时仅仅需要其字段的一部分,就可以用上面的方式实现,这也算作弊?

疑问地方7
逻辑文件中的K值实现排序,但是在strsql下select逻辑文件,但是得到的不是排好序的数据,还是你原来插入数据的顺序。那么逻辑文件中的K值排序功能在哪里实现,怎么实现?


疑问地方8
当游标指向某条记录时,也就意味着系统对于该条记录进行了定位读取,此时可以取出当前记录的值,可以修改当前记录的值;
当游标指向某条记录之前,或之后,意味着系统仅仅对该条记录进行了定位,但并未进行读取,此时不知道该条记录的值,也无法对该条记录进行修改。
疑问:不甚理解,请详细说明。

--------------------------------------------
以上内容是个人愚见,希望得到高人指教。

论坛徽章:
0
68 [报告]
发表于 2008-04-09 22:51 |只看该作者
非常楼上的热心,我也说过,这份东西会有些错漏。
不过近来,以及在可预见的一段时间之内,将会比较忙,所以还请版主,或其它热心人帮助整理一下,以免得误导后人。

再次重申:
有关的描述,一切以实际运行结果为准,我只是随手写写,绝非教科书,大家可根据实际情况酌情进行更改,见谅。

论坛徽章:
0
69 [报告]
发表于 2008-04-10 03:26 |只看该作者

谢谢,老大

谢谢,老大

论坛徽章:
0
70 [报告]
发表于 2008-04-10 11:35 |只看该作者

回复 #1 居士 的帖子

支持一下。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP