中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 操作系统 > IBM Server
数据区DTAARA+RPGIV的运用介绍
作者:未知 时间:2005-09-13 15:53 出处:ChinaUnix.net 责编:chinaitpower
              摘要:数据区DTAARA+RPGIV的运用介绍

[b:21439bc277]数据区DTAARA+RPGIV的运用[/b:21439bc277]

我们在程序之间进行数据交换的时候,可以使用参数(Parameter)、数据库文件、数据队列(DATAQ)等方式。使用参数表的方法仅仅能够在作业内部进行。而数据区(Data Area)方式可以在不同作业之间进行数据交换,我们可以把Data Area看成是程序之间进行数据交换的公共数据区。

系统在每一个作业中自动提供一个本地数据区LDA(Local Data Area),每一个数据区提供字符类型、长度为1024Byte、初始化为空白的数据区。如果我们通过SBMJOB提交一个批处理作业至后台执行,LDA将自动复制它的数据至提交作业的LDA,因此提交的后台作业可以存取原来作业的LDA任何数据;当提交的作业结束,关闭这个LDA退出。使用DSPDTAARA命令显示本地数据区,注意选项Data Area为*LDA(本地数据区)。

执行DSPDTAARA *LDA后,我们可以看见数据区的内容:左边Offset表明了字符串的起始位置。
<图1>

我们还可以使用CRTDTAARA生成一个显示命名的数据区。其最大的数据区最大长度可以为2000Byte,其数据库类型可以是字符类型、数值类型、逻辑类型以及DDM类型,显示生成的数据区必须使用命令DLTDTAARA进行删除,此外还有一个CL是WRKDTAARA,此命令集成了对数据区的操作。下图显示了使用: CRTDTAARA DTAARA(LIU/DTAARA1) TYPE(*CHAR) LEN(2000) TEXT('My Data Area')生成的数据区DTAARA1。
[code:1:21439bc277]                                       Create Data Area (CRTDTAARA)                          
                                                                                
 Type choices, press Enter.                                                     
                                                                                
 Data area  . . . . . . . . . . . > DTAARA1       Name                          
   Library  . . . . . . . . . . . >   LIU         Name, *CURLIB                 
 Type . . . . . . . . . . . . . . > *CHAR         *DEC, *CHAR, *LGL, *DDM       
 Length:                                                                        
   Length . . . . . . . . . . . . > 2000          1-2000                        
   Decimal positions  . . . . . .                 0-9                           
 Initial value  . . . . . . . . .                                               
 Remote data area . . . . . . . .                 Name                          
   Library  . . . . . . . . . . .                 Name, *LIBL, *CURLIB          
 Remote location  . . . . . . . .                 Name                          
 APPC device description  . . . .   *LOC          Name, *LOC                    
 Local location . . . . . . . . .   *LOC          Name, *LOC, *NETATR           
 Mode . . . . . . . . . . . . . .   *NETATR       Name, *NETATR                 
 Remote network identifier  . . .   *LOC          Name, *LOC, *NETATR, *NONE    
 Text 'description' . . . . . . . > 'My Data Area'                              
                                                                                
                                                                        More... 
 F3=Exit   F4=Prompt   F5=Refresh   F12=Cancel   F13=How to use this display    
 F24=More keys                                   [/code:1:21439bc277]                               
                                                                                
<图2>

那么如何在RPGIV中定义以及使用Data Area呢?请看下例:

定义本地数据区:见代码0002~0003行,在DS前面加入U(第23列),你不必提供LDA的名字;Infor1在LDA下面定义长度为8、小数点为0。
定义命名数据区:见代码0004~0005行,先显式地定义数据区名Receipts,接着定义了Receipts的子结构Name、ID、Amount。
[code:1:21439bc277]
 Columns . . . :    6  76           Browse                        LIU/QRPGLESRC 
 SEU==>                                                                DATAARA1 
 FMT *   *. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+. 
        *************** Beginning of data ************************************* 
0001.00  * Data Area Example 1                                                  
0002.00 D                UDS                                                    
0003.00 D Infor1                         8  0                                   
0003.01  *                                                                      
0004.00 D Receipts       UDS                                                    
0005.00 D Name                          20                                      
0005.01 D ID                             7                                      
0005.02 D Amount                        13                                      
0006.00  *                                                                      
0013.00 C                   EVAL      *INLR=*ON                                 
0015.00 C                   RETURN                                              
0016.00 **                                                                      
        ****************** End of data **************************************** 
                                                                                
                                                                                
                                                                                
                                                                                
 F3=Exit   F5=Refresh   F9=Retrieve   F10=Cursor   F11=Toggle   F12=Cancel      
 F16=Repeat find        F24=More keys                                           
                                         (C) COPYRIGHT IBM CORP. 1981, 2002.
[/code:1:21439bc277]

此外,可以使用关联语句对外部数据区或者本地数据区与RPGIV数据结构进行关联,需要注意的是,定义本地数据区如果使用了D类定义,不要再重复使用*DTAARA DEFINE定义本地数据区(在下例中,一旦使用了上一例子中的本地数据区定义,就不必使用本例的第0013.01行对本地数据区的定义)。

请看下例:使用DTAARA DEFINE语句将数据结构与数据区相关联,DEFINE语句因子1(Factor1)必须为*DTAARA;
第0013.01行将本地数据区与字段定义Infor1相互关联;
第0013.04行显示定义的数据区Receipts(使用CL命令CRTDTAARA建立的数据区Receipts)与数据结构Receipts相关联,由于外部数据区名与RPGIV内部数据结构名一致,因此因子2(Factor2)可以是空白;
第0013.07行定义的数据区DtaAra1与RPGIV定义的变量DtaFld相关联。
[code:1:21439bc277]
备注:
0013.01 C    *DTAARA     DEFINE   *LDA          Infor1                 
          ↑          ↑       ↑
            因子1必须为  因子2外部数据区名,  结构项可以包括字段、
            *DTAARA      本地数据区写入*LDA   数据结构、数据结构子项
[/code:1:21439bc277]
[code:1:21439bc277]
Columns . . . :    6  76           Browse                        LIU/QRPGLESRC 
 SEU==>                                                                DATAARA2 
 FMT *   *. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+. 
        *************** Beginning of data ************************************* 
0001.00  * Data Area Example 2                                                  
0003.00 D Infor1          S             18                                      
0003.01  *                                                                      
0004.00 D Receipts       UDS                                                    
0005.00 D Name                          20                                      
0005.01 D ID                             7                                      
0005.02 D Amount                        13  2                                   
0006.02  *                                                                      
0006.03 D DtaFld          S            200                                      
0006.04  *                                                                      
0013.00 ** Local Data area associated with infor 1                              
0013.01 C     *DTAARA       DEFINE    *LDA          Infor1                      
0013.02 **                                                                      
0013.03 ** Data area Receipts associated with dtata structure Receipts          
0013.04 C     *DTAARA       DEFINE                  Receipts                    
0013.05 **                                                                      
0013.06 ** Data area DTAARA1 associated with field DtaFld                       
0013.07 C     *DTAARA       DEFINE    DtaAra1       DtaFld                      
0013.08 **                                                                      
0013.09 C                   EVAL      *INLR=*ON                                 
0015.00 C                   RETURN                                              
0016.00 **                                                                      
        ****************** End of data **************************************** 
                                                                                
F3=Exit   F5=Refresh   F9=Retrieve   F10=Cursor   F11=Toggle   F12=Cancel      
 F16=Repeat find        F24=More keys  
[/code:1:21439bc277]

需要指出,并非定义了数据区与数据结构的关联数据就可以自动进行输入输出了,必须使用显式的“写”或者“读”语句对数据其进行操作。
下面进行分段阐述。

[b:21439bc277]<1>数据区操作语句:IN读数据区以及数据区锁定[/b:21439bc277]

语句IN将数据区的内容读入程序,因子2必须包含DTAARA DEFINE所定义的结果项。如果将因子1定义*LOCK保留字,数据区的数据将被锁定,则可以防止其他程序修改此数据区的数据;如果原先的IN语句已经指定了*LOCK保留字,则以下的IN语句将会保持锁定状态,直至发出UNLOCK语句;同理,如果原先IN语句没有指定*LOCK保留字,则以下的IN语句处于非锁定状态。
不可以在本地数据区使用*LOCK保留字,见下例:
[code:1:21439bc277]
0013.09 C                   IN        Infor1                                    
0013.10 **                                                                      
0013.11 C     *LOCK         IN        Receipts                                  
0013.12 **                                                                      
0013.13 C     *LOCK         IN        DtaFld                                    
[/code:1:21439bc277]

[b:21439bc277]<2>数据区操作语句:OUT写数据区操作以及数据区锁定[/b:21439bc277]

语句OUT将数据区写入数据区(或者叫用数据修改数据区的数据)。因子2必须包含DTAARA DEFINE语句定义的结果项。
此外,只有已经使用IN语句或者是其他隐式读语句(使用数据结构存取数据)对数据区进行了读操作,才可以使用OUT语句。如果在因子1使用*LOCK保留字,则在写操作的时候对数据区进行锁定;如果因子1为空白,则默认状态为不锁定。
对本地数据区不可以使用锁定保留字*LOCK。
[code:1:21439bc277]
0013.15 C                   OUT       Infor1                                    
0013.16 **                                                                      
0013.17 C     *LOCK         OUT       Receipts                                  
0013.18 **                                                                      
0013.20 C                   OUT       DtaFld                                    
0013.21 **                                                                      
[/code:1:21439bc277]

[b:21439bc277]<3>数据区操作语句:UNLOCK解除数据区锁定[/b:21439bc277]

UNLOCK操作解除在因子2定义的数据区。在已经解锁的数据区使用UNLOCK操作不会引起系统错误。
不可以在本地数据区使用UNLOCK。
[code:1:21439bc277]
0013.21 **                                                                      
0013.22 C                   UNLOCK    Receipts                                  
0013.23 **        
[/code:1:21439bc277]
△附加完整DTAARA3的RPGLE代码:
[code:1:21439bc277]
Columns . . . :    6  76           Browse                        LIU/QRPGLESRC 
 SEU==>                                                                DATAARA3 
 FMT *   *. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+. 
        *************** Beginning of data ************************************* 
0001.00  * Data Area Example 2                                                  
0003.00 D Infor1          S             18                                      
0003.01  *                                                                      
0004.00 D Receipts       UDS                                                    
0005.00 D Name                          20                                      
0005.01 D ID                             7                                      
0005.02 D Amount                        13  2                                   
0006.02  *                                                                      
0006.03 D DtaFld          S           2000                                      
0006.04  *                                                                      
0013.00 ** Local Data area associated with infor 1                              
0013.01 C     *DTAARA       DEFINE    *LDA          Infor1                      
0013.02 **                                                                      
0013.03 ** Data area Receipts associated with dtata structure Receipts          
0013.04 C     *DTAARA       DEFINE                  Receipts                    
0013.05 **                                                                      
0013.06 ** Data area DTAARA1 associated with field DtaFld                       
0013.07 C     *DTAARA       DEFINE    DtaAra1       DtaFld                      
0013.08 **                                                                      
0013.09 C                   IN        Infor1                                    
0013.10 **                                                                      
0013.11 C     *LOCK         IN        Receipts                                  
0013.12 **                                                                      
0013.13 C     *LOCK         IN        DtaFld                                    
0013.14 **                                                                       
0013.15 C                   OUT       Infor1                                    
0013.16 **                                                                      
0013.17 C     *LOCK         OUT       Receipts                                  
0013.18 **                                                                      
0013.20 C                   OUT       DtaFld                                    
0013.21 **                                                                      
0013.22 C                   UNLOCK    Receipts                                  
0013.23 **                                                                      
0013.24 C                   EVAL      *INLR=*ON                                 
0015.00 C                   RETURN                                              
0016.00 **                                                                      
        ****************** End of data **************************************** 
                                                                                
 F3=Exit   F5=Refresh   F9=Retrieve   F10=Cursor   F11=Toggle   F12=Cancel      
 F16=Repeat find        F24=More keys 
[/code:1:21439bc277]



<图1>




<图2>


 nhxingliang 回复于:2005-08-24 11:17:55
学习中.........
谢谢了!!!!!!!!! :em02:  :em02:  :em02:

 kempzhang 回复于:2005-08-24 11:55:56
那昨天说到的那个 *NAMVAR    DEFINE    *LDA          Infor1 
*NAMVAR 和*DTAARA 这两个参数有啥不同?Qingzhou大哥能否解释下?

 qingzhou 回复于:2005-08-24 12:13:22
[quote:d0741f1427="kempzhang"]那昨天说到的那个 *NAMVAR    DEFINE    *LDA          Infor1 
*NAMVAR 和*DTAARA 这两个参数有啥不同?Qingzhou大哥能否解释下?[/quote:d0741f1427]
使用DEFINE操作码的因子1有2种情况,一是使用*DTAARA,二是使用*LIKE,我也没用过使用*NAMVAR的情况。
===============================================
4.4.20  DEFINE(字段定义)

[code:1:d0741f1427] 操作码 因子1 因子2 结果字段 指示器
DEFINE *LIKE 引用字段名 定义的字段
DEFINE *DTAARA 外部数据区 内部字段[/code:1:d0741f1427]

    根据因子1的规定,DEFINE操作可做下列事情:
•根据其它字段的属性(长度和小数位)定义一个字段。
•定义一个字段作数据区。
    可以在计算中任一个地方说明DEFINE操作,可把控制级项(7和8列)可以是空格或L1-L9指示器、LR指示器或L0项合成一组语句,放在程序的适当地方。控制级项仅用于文本。不允许条件指示器项(9-11列)。

4.4.20.1  *LIKE DEFINE

    在因子1上有*LIKE 的“DEFINE(字段定义)”操作,根据其它字段的属性(长度和小数位)来定义一个字段。
    因子2上必须有一个引用的字段名,而结果字段必须是要被定义的字段名。因子2上说明的字段,可以在程序中或外部定义,它为要定义的字段提供属性。因子2不能是一个文字或命名常量。如果因子2是一个数组、数组元素或表名,用数组元素或表的属性来定义该字段。结果字段不能是数组、数组元素、数据结构或一个表名。
    64-68列(字段长度)用来规定结果字段比因子2长些或短些,数字前的加号(+)指出增加的长度;减号(-)表示减少的长度。65-68列是增加或减少的长度(右对齐)或是空格。如果64-68列上是空格,则结果字段的长度与因子2长度相同来定义,对要定义的字段不能修改小数位。
    字段长度项只允许对图形、数字和字符型字段定义。
    对于图形字段,字段长度要用双字节字符来计算。
    *LIKE DEFINE的例子见4.4.20.2图129。

4.4.20.2  *DTAARA DEFINE

    在因子1上有*DTAARA的DEFINE操作把一个字段、一个数据结构、一个数据结构字段或一个数据区数据结构(RPGⅣ程序内)与一个AS/400数据区(RPGⅣ程序之外)相联系。
    用因子2说明一个数据区的外部名。用*LDA说明局部数据区的名或用*PDA说明程序初始化参数(PIP)数据区。如果因子2是空格,则结果字段是RPGⅣ名和该数据区的外部名。
    在结果字段说明一个在程序中已经定义的字段名,可以是数据结构名、一个数据结构子字段名、或一个数据区数据结构。用这些名加上IN及OUT操作一起来从因子2指定的数据区中接收数据。当在结果字段上说明了一个数据区数据结构时,RPGⅣ在程序开始时从数据区中接收数据,并在程序结束时将数据写回到该数据区中去。
    结果字段不能是一个程序状态数据结构名、一个文件信息数据结构(INFDS)名、一个多次出现的数据结构名、一个输入记录字段名、一个数组名、一个数组元素或一个表名。它也不能是一个多次出现的数据结构的子字段名、一个数据区数据结构名、一个程序状态数据结构名、一个文件信息数据结构(INFDS)名,或一个在*DTAARA DEFINE语句上的出现过的数据结构名,或已在定义规范表中用DTAARA键字定义为一个数据区的数据结构名。
    在64-70列上,可以定义结果字段中的长度和小数位。这些说明必须与因子2上说明的数据区的外部描述相匹配。局部数据区是长度为1024的字符型数据,但在程序内,可以访问的局部数据区。长度可大于或小于1024。

[code:1:d0741f1427] 
      *...1....+....2....+....3....+....4....+....5....+....6....+....7...+....
      CL0N01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq....
      *
      C*  FLDA是7位字符字段,FLDB是5位数字二位小数的数字字段,FLDP
      C*  是7位的字符字段。
      C     *LIKE         DEFINE    FLDA          FLDP
      C*
      C*  FLDQ是9位的字符字段。
      C     *LIKE         DEFINE    FLDA          FLDQ             +2
      C*
      C*  FLDR是6位的字符字段。
      C     *LIKE         DEFINE    FLDA          FLDR            - 1
      C*
      C*  FLDS是5位数字二位小数的数字字段。
      C     *LIKE         DEFINE    FLDB          FLDS
      C*
      C*  FLDT是6位数字二位小数的数字字段。
      C     *LIKE         DEFINE    FLDB          FLDT           +  1
      C*
      C*  FLDU是3位数字二位小数的数字字段。
      C     *LIKE         DEFINE    FLDB          FLDU            - 2
      C*
      C*  FLDX是3位数字二位小数的数字字段。
      C     *LIKE         DEFINE    FLDU          FLDX
 
      *...1....+....2....+....3....+....4....+....5....+....6....+....7...+....
      CL0N01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq....
      C*
      C*  数据区(TOTGRS)的属性(长度与小数位)必须与外部数据区相同。
      C
      C     *DTAARA       DEFINE                  TOTGRS           10 2
      C
      C*  结果字段(TOTNET)是RPG Ⅳ程序中所用的数据区名,因子2
      C*  (TOTAL)是程序定义的数据区名。
      C
      C     *DTAARA       DEFINE    TOTAL         TOTNET
      C
      C*  结果字段(SAVTOT)是RPG Ⅳ程序中用的数据区名,因子2
      C*  (*LDA)指出它是本地数据区。
      C
      C     *DTAARA       DEFINE    *LDA          SAVTOT
  

                              图129  DEFINE 操作[/code:1:d0741f1427]

 Fair_man 回复于:2005-08-24 14:07:44
没用过RPGIV,从楼上的解释,是一样的东西。

 qingzhou 回复于:2005-08-24 14:21:23
:oops: Sorry,刚才查了一下相关资料,的确有使用*NAMVAR作为DEFINE操作码的因子1的情况。
我下午仔细琢磨了一下,个人理解是这样的:

*NAMVAR是表示让I表定义的#LDA中的字段与*LDA进行相关联;
0084.00      C** READ LDA                                                               
0085.00      C           *NAMVAR   DEFN *LDA      #LDA                          
0086.00      C                     IN   *NAMVAR       
                          
*DTAARA是表示将本地数据区与字段定义Infor1相互关联。
0013.01 C     *DTAARA       DEFINE    *LDA              Infor1 

下面有具体的DSPF+RPGIII程序使用LDA的例子。                            

[b:5eee1a09b9]R21AMLBE/QDSPSRC(AASLDAD)[/b:5eee1a09b9]
[code:1:5eee1a09b9]

 Columns . . . :    1  71           Browse                     R21AMLBE/QDSPSRC 
 SEU==>                                                                 AASLDAD 
 FMT A* .....A*. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7  
        *************** Beginning of data ************************************* 
0001.00      A****************************************************************  
0002.00      A**  RICOH CO.                                                 **  
0003.00      A**  PGM ID          AASLDAD                                   **  
0004.00      A**  PGM NAME        INPUT LDA                                 **  
0005.00      A**------------------------------------------------------------**  
0006.00      A**  PGM DESCRIPTION                                           **  
0007.00      A**                                                            **  
0008.00      A**  CREATION DATE         98/03/25                            **  
0009.00      A**  PROGRAMMER NAME       H.YAMAZAKI                          **  
0010.00      A****************************************************************  
0011.00      A                                      PRINT                       
0012.00      A****************************************************************  
0013.00      A          R FMT01                                                 
0014.00      A                                      PUTOVR                      
0015.00      A                                      CF24(24)                    
0016.00      A                                  1  3DATE EDTCDE(Y)              
0017.00      A                                  1 12TIME                        
0018.00      A                                  1 23'**  INPUT LDA  **'         
0019.00      A                                      OVRATR DSPATR(RI UL)        
0020.00      A                                  1 63'AASLDA'                    
0021.00      A            XWSID         10   O  1 70                            
0022.00      A*                                                                 
0023.00      A                                  3  8'#LUSER:'                   
0024.00      A            #LUSER        10A  B  3 16DSPATR(UL)                  
0025.00      A                                  3 48'#LWSID:'                   
0026.00      A            #LWSID        10A  B  3 56DSPATR(UL)                  
0027.00      A                                  4  8'#LWSNO:'                   
0028.00      A            #LWSNO         2A  B  4 16DSPATR(UL)                  
0029.00      A                                  4 48'#LOUTQ:'                   
0030.00      A            #LOUTQ        10A  B  4 56DSPATR(UL)                  
0031.00      A                                  5  8'#LJOPT:'                   
0032.00      A            #LJOPT         1A  B  5 16DSPATR(UL)                  
0033.00      A                                  5 48'#LRETN:'                   
0034.00      A            #LRETN         2A  B  5 56DSPATR(UL)                  
0035.00      A                                  6  8'#LTSTC:'                   
0036.00      A            #LTSTC         8A  B  6 16DSPATR(UL)                  
0037.00      A                                  6 48'#LDFMT:'                   
0038.00      A            #LDFMT         1A  B  6 56DSPATR(UL)                  
0039.00      A                                  7  8'#LENVM:'                   
0040.00      A            #LENVM         1A  B  7 16DSPATR(UL)                  
0041.00      A                                  7 48'#LJOBD:'                   
0042.00      A            #LJOBD        10A  B  7 56DSPATR(UL)                  
0043.00      A                                  8  8'#LJOBQ:'                   
0044.00      A            #LJOBQ        10A  B  8 16DSPATR(UL)                  
0045.00      A                                  8 48'#LSYSM:'                   
0046.00      A            #LSYSM         8A  B  8 56DSPATR(UL)                  
0047.00      A                                  9  8'#LFACT:'                   
0048.00      A            #LFACT         2A  B  9 16DSPATR(UL)                  
0049.00      A                                  9 48'#LXDEV:'                   
0050.00      A            #LXDEV         2A  B  9 56DSPATR(UL)                  
0051.00      A                                 10  8'#LSJOB:'                   
0052.00      A            #LSJOB        10A  B 10 16DSPATR(UL)                  
0053.00      A                                 10 48'#LBDTE:'                   
0054.00      A            #LBDTE         8A  B 10 56DSPATR(UL)                  
0055.00      A                                 11  8'#LIUSR:'                   
0056.00      A            #LIUSR        10A  B 11 16DSPATR(UL)                  
0057.00      A                                 11 48'#LTUSR:'                   
0058.00      A            #LTUSR        10A  B 11 56DSPATR(UL)                  
0059.00      A                                 12  8'#FCOQR:'                   
0060.00      A            #LFCOQ        10A  B 12 16DSPATR(UL)                  
0061.00      A                                 13  8'#FCCDR:'                   
0062.00      A            #LFCCD         4A  B 13 16DSPATR(UL)                  
0063.00      A                                 14  8'#LKEY1:'                   
0064.00      A            #LKEY1        18A  B 14 16DSPATR(UL)                  
0065.00      A                                 14 48'#LKEY2:'                   
0066.00      A            #LKEY2        18A  B 14 56DSPATR(UL)                  
0067.00      A                                 15  8'#LKEY3:'                   
0068.00      A            #LKEY3        18A  B 15 16DSPATR(UL)                  
0069.00      A                                 15 48'#LKEY4:'                   
0070.00      A            #LKEY4        18A  B 15 56DSPATR(UL)                  
0071.00      A                                 16  8'#LKEY5:'                   
0072.00      A            #LKEY5        18A  B 16 16DSPATR(UL)                  
0073.00      A                                 16 48'#LKEY6:'                   
0074.00      A            #LKEY6        18A  B 16 56DSPATR(UL)                  
0075.00      A                                 17  8'#LRTNM:'                   
0076.00      A            #LRTNM         2A  B 17 16DSPATR(UL)                  
0077.00      A                                 18  8'#LEFAC:'                   
0078.00      A            #LEF01         2A  B 18 16DSPATR(UL)                  
0079.00      A            #LEF02         2A  B 18 20DSPATR(UL)                  
0080.00      A            #LEF03         2A  B 18 24DSPATR(UL)                  
0081.00      A            #LEF04         2A  B 18 28DSPATR(UL)                  
0082.00      A            #LEF05         2A  B 18 32DSPATR(UL)                  
0083.00      A            #LEF06         2A  B 18 36DSPATR(UL)                  
0084.00      A            #LEF07         2A  B 18 40DSPATR(UL)                  
0085.00      A            #LEF08         2A  B 18 44DSPATR(UL)                  
0086.00      A            #LEF09         2A  B 18 48DSPATR(UL)                  
0087.00      A            #LEF10         2A  B 18 52DSPATR(UL)                  
0088.00      A                                 19  8'#LRFAC:'                   
0089.00      A            #LRF01         2A  B 19 16DSPATR(UL)                  
0090.00      A            #LRF02         2A  B 19 20DSPATR(UL)                  
0091.00      A            #LRF03         2A  B 19 24DSPATR(UL)                  
0092.00      A            #LRF04         2A  B 19 28DSPATR(UL)                  
0093.00      A            #LRF05         2A  B 19 32DSPATR(UL)                  
0094.00      A            #LRF06         2A  B 19 36DSPATR(UL)                  
0095.00      A            #LRF07         2A  B 19 40DSPATR(UL)                  
0096.00      A            #LRF08         2A  B 19 44DSPATR(UL)                  
0097.00      A            #LRF09         2A  B 19 48DSPATR(UL)                  
0098.00      A            #LRF10         2A  B 19 52DSPATR(UL)                  
0099.00      A                                 20  8'#LISEC:'                   
0100.00      A            #LISEC         6A  B 20 16DSPATR(UL)                  
0101.00      A                                 20 48'#LBSEC:'                   
0102.00      A            #LBSEC         6A  B 20 56DSPATR(UL)                  
0103.00      A*                                                                 
0104.00      A                                 24 55'CK24:END OF JOB'           
0105.00      A            XMSG          50   O 24  2OVRDTA OVRATR DSPATR(HI)    
        ****************** End of data **************************************** 
                                                                                
 F3=Exit   F5=Refresh   F9=Retrieve   F10=Cursor   F11=Toggle   F12=Cancel      
 F16=Repeat find        F24=More keys              

[/code:1:5eee1a09b9]

[b:5eee1a09b9]R21AMLBE/QDSPSRC(AASLDA) [/b:5eee1a09b9]
[code:1:5eee1a09b9]

 Columns . . . :    1  71           Browse                     R21AMLBE/QRPGSRC 
 SEU==>                                                                  AASLDA 
 FMT *  ..... *. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7  
        *************** Beginning of data ************************************* 
0001.00      F****************************************************************  
0002.00      F**  RICOH CO.                                                     
0003.00      F**  PGM ID          AASLDA                                    **  
0004.00      F**  PGM NAME        INPUT LDA                                 **  
0005.00      F**------------------------------------------------------------**  
0006.00      F**  PGM DESCRIPTION                                           **  
0007.00      F**                                                            **  
0008.00      F**  CREATION DATE         98/03/25                            **  
0009.00      F**  PROGRAMMER NAME       H.YAMAZAKI                          **  
0010.00      F****************************************************************  
0011.00      F**                                                            **  
0012.00      F**  INTERNAL SUBROUTINE USAGE                                 **  
0013.00      F**------------------------------------------------------------**  
0014.00      F**         @INZ      INITIALIZE  PROCESS                      **  
0015.00      F**         @CHK1     ERROR CHECK                              **  
0016.00      F**         @YMD      DATE FORMAT CHANGE                       **  
0017.00      F**         @MSG      MESSAGE GET                              **  
0018.00      F**         @OUTQ     OUTQ CHECK                               **  
0019.00      F**------------------------------------------------------------**  
0020.00      F**                                                            **  
0021.00      F**  EXTERNAL SUBROUTINE USAGE                                 **  
0022.00      F**------------------------------------------------------------**  
0023.00      F**         CAL201    MESSAGE GET                              **  
0024.00      F**         CAL202    DATE FORMAT CHANGE                       **  
0025.00      F**         CAL206    OUTQ CHECK                               **  
0026.00      F****************************************************************  
0027.00      F**                                                            **  
0028.00      F**  INDICATOR USAGE                                           **  
0029.00      F**------------------------------------------------------------**  
0030.00      F**                                                            **  
0031.00      F**  FILE DESCRIPTION                                          **  
0032.00      F**------------------------------------------------------------**  
0033.00      F**         CBR030D   DISPLAY FILE                             **  
0034.00      F****************************************************************
0035.00      FAASLDAD CF  E                    WORKSTN                           
0036.00      I****************************************************************  
0037.00      I****************************************************************  
0038.00      I**           D A T A   S T R U C T U R E                      **  
0039.00      I****************************************************************  
0040.00      I** LOCAL DATA AREA **                                             
0041.00      I#LDA      EUDSLDA                                                 
0042.00      I*                                                                 
0043.00      I            DS                                                    
0044.00      I                                        1  20 WKEFAC              
0045.00      I                                        1   2 #LEF01              
0046.00      I                                        3   4 #LEF02              
0047.00      I                                        5   6 #LEF03              
0048.00      I                                        7   8 #LEF04              
0049.00      I                                        9  10 #LEF05              
0050.00      I                                       11  12 #LEF06              
0051.00      I                                       13  14 #LEF07 &