Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1026487
  • 博文数量: 125
  • 博客积分: 10490
  • 博客等级: 上将
  • 技术积分: 2386
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-03 18:26
文章分类

全部博文(125)

文章存档

2011年(1)

2010年(9)

2009年(17)

2008年(98)

分类:

2008-06-29 22:51:28

在RPGLE程序中使用的文件在程序运行时所反馈的相关信息,( CL命令OVRDBF(覆盖数据库文件)指定参数SEQONLY*NO,就可获得有效的更新反馈信息,如果用文件的覆盖命令,则RPG语言在文件中不做分块或不分块记录。)
其格式如下:

(26-32)

(33-39)

 

关键字

  

1

8

字符

8

*FILE

文件名的前8个字符

9

9

字符

1

 

打开指示器(1=open)

10

10

字符

1

 

文件末(1=文件末)

11

15

区位十进制

5,0

*STATUS

状态码看1.5.1.3

16

21

字符

6

*OPCODE

操作码的头5(左对齐)用字符表示操作类型.例如,如果处理READE,READE放在最左边的5列中.如果操作码为隐式操作(例如,在输出规范表中,主文件读或更新)产生相应操作码(READUPDAT)并放在*OPCODE.

操作码如有6个字母则缩短为5个字母:

DELETE    DELET

EXCEPT    EXCPT

READPE    REDPE

UNLOCK   UNLCK

UPDATE   UPDAT

剩余位包含以下内容

F  对文件名的最后操作

R  对记录格式最后操作

I  最后操作为隐含文件操作

22

29

字符

8

*ROUTINE

过程名的头8个字符或0,由过程指针调用

30

37

字符

8

 

RPGⅣ源语句清单行号

38

42

区十进制

5.0

 

用户为SPECIAL文件错误说明的理由

38

45

字符

8

*RECORD

对于程序描述文件,记录标识指示器左对齐放在字段,剩余六位由空格填充。

对于外部描述文件,当异常/错误发生时,则放置正处理记录名的头8个字符

46

52

字符

7

 

机器或系统信息号

53

66

字符

14

 

不用

 

关键字

  

67

70

区十进制

4,0

*SIZE

屏幕尺寸(在设备屏上产生的行列数)

71

72

区十进制

2,0

*INP

显示的键盘类型,如键盘为字母数字或片假名则置为00’,如为表意字,置为10’

73

74

区十进制

2,0

*OUT

显示类型,如为字母数字或片假名置为00’,如为表意字置为10’,如为DBCS则置为20’

75

76

区十进制

2,0

*MODE

总是00

 
例如:

 

FFilename++IPEASFRlen+LKlen+AIDevice+.Keywords+++++++++++++++++++++++++++Comments++++++++++

      FMYFILE    IF   E             DISK    INFDS(FILEFBK)

      DName+++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++++Comments++++++++++

      DFILEFBK          DS

      D FILE              *FILE                                                  * File name

      D OPEN_IND           9      9                                         * File open?

      D EOF_IND           10     10                                         * File at eof?

      D STATUS          *STATUS                                                * Status code

      D OPCODE          *OPCODE                                                * Last opcode

      D ROUTINE         *ROUTINE                                               * RPG Routine

      D LIST_NUM           30     37                                         * Listing line

      D SPCL_STAT          38     42S 0                                      * SPECIAL status

      D RECORD         *RECORD                                                * Record name

      D MSGID             46     52                                         * Error MSGID

      D SCREEN          *SIZE                                                  * Screen size

      D NLS_IN          *INP                                                   * NLS Input?

      D NLS_OUT         *OUT                                                   * NLS Output?

      D NLS_MODE          *MODE                                                  * NLS Mode?

    例如:

      FFilename++IPEASFRlen+LKlen+AIDevice+.Keywords+++++++++++++++++++++++++++Comments++++++++++

      FMYFILE    O    F  132        PRINTER INFDS(OPNFBK)

      DName+++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++++Comments++++++++++

      DOPNFBK           DS

      D ODP_TYPE               81     82                                       * ODP Type

      D FILE_NAME              83     92                                         * File name

      D LIBRARY                93    102                                      * Library name

      D SPOOL_FILE            103    112                                    * Spool file name

      D SPOOL_LIB             113    122                                     * Spool file lib

      D SPOOL_NUM             123    124B 0                                  * Spool file num

      D RCD_LEN               125    126B 0                                 * Max record len

      D KEY_LEN               127    128B 0                                  * Max key len

      D MEMBER                129    138                                     * Member name

      D TYPE                  147    148B 0                                   * File type

      D ROWS                  152    153B 0                                * Num PRT/DSP rows

      D COLIMNS               154    155B 0                               * Num PRT/DSP cols

      D NUM_RCDS              156    159B 0                                  * Num of records

      D ACC_TYPE              160    161                                     * Access type

      D DUP_KEY               162    162                                 * Duplicate key?

      D SRC_FILE              163    163                                    * Source file?

      D VOL_OFF               184    185B 0                                * Vol label offset

      D BLK_RCDS              186    187B 0                                 * Max rcds in blk

      D OVERFLOW              188    189B 0                                  * Overflow line

      D BLK_INCR              190    191B 0                                  * Blk increment

      D FLAGS1                196    196                                      * Misc flags

      D REQUESTER             197    206                                    * Requester name

      D OPEN_COUNT            207    208B 0                                      * Open count

      D BASED_MBRS            211    212B 0                                 * Num based mbrs

      D FLAGS2                213    213                                     * Misc flags

      D OPEN_ID               214    215                                 * Open identifier

      D RCDFMT_LEN            216    217B 0                                  * Max rcd fmt len

      D CCSID                 218    219B 0                                 * Database CCSID

      D FLAGS3                220    220                                       * Misc flags

      D NUM_DEVS              227    229B 0                               * Num devs defined

 

 

阅读(1372) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~