程序文件部分中带有Cobol表的FD?

时间:2012-10-22 23:17:44

标签: file input cobol

我有一个输入文件,其中包含前40个字节中的名称和编号,然后是该名称的四个不同的基金和基金编号。我想知道如何在我的文件部分中创建一个Cobol表来读取这些数据。我有这个,但显然它大于或小于80字节?或许我的桌子错了?

FD  SALES-FILE                               
RECORDING MODE IS F.                     

01  SALES-RECORD.                            
    05  BROKER-REGION         PIC 9.         
    05  BROKER-CITY           PIC X(19).     
    05  BROKER-NAME           PIC X(20).     

01  SALES-BROKER-TBL.                        
    05 BROKER-TBL-DATA        OCCURS 4 TIMES.
       10  FUND-NUMBER        PIC 9(2).      
       10  PRICE-FLAG         PIC 9.         
       10  DEPOSIT-AMT        PIC 9(5)V99.   

SALES-RECORD有40个字节,那么表每个条目有10个字节并且发生4次,所以最多加80个吧?谁知道我做错了什么?

1 个答案:

答案 0 :(得分:1)

尝试以下方法......

01  SALES-RECORD.                            
    05  BROKER-REGION         PIC 9.         
    05  BROKER-CITY           PIC X(19).     
    05  BROKER-NAME           PIC X(20).                                    
    05 SALES-BROKER-TBL.                        
       10 BROKER-TBL-DATA        OCCURS 4 TIMES.
          15  FUND-NUMBER        PIC 9(2).      
          15  PRICE-FLAG         PIC 9.         
          15  DEPOSIT-AMT        PIC 9(5)V99.   

如果我理解正确,经纪人和4只基金都出现在同一记录中。所以你在这里所要做的就是将记录布局合并到一个记录中。

Broker Region,City和Name需要40个字节,然后每个Broker Table行需要10个字节。其中四个组成Sales Broker Table并需要另外40个字节。这样每条记录总共可以提供80个字节。