免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2466 | 回复: 6
打印 上一主题 下一主题

2个以上PF文件合成一个多记录名的逻辑文件,对此文件的操作及性能 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-11-24 22:35 |只看该作者 |倒序浏览
如题,想把两个以上的PF文件和成一个逻辑文件,然后对该文件操作,怎么操作?速度怎样?

建逻辑文件LF1 如下:


A       R    PFR1
A             FLD1A
A             FLD1B
A             FLD1C
A       K    FLD1A
A       K    FLD1B
A
A       R    PFR2
A             FLD2A
A             FLD2B
A             FLD2C
A       K    FLD2A
A       K    FLD2B

文件1和文件2的KEY值是相同的,假设PF1有3条记录,PF2 有5条记录,那么合并后的LF1有几条记录呢?而且该文件有2个记录名,该怎样操作呢?
如果该文件有2个以上的文件后操作速度怎样呢?

论坛徽章:
0
2 [报告]
发表于 2006-11-25 00:08 |只看该作者
还有,因为有两个不同的记录名与不同的两套字段名,程序用时按第一个记录名下的字段名吧?

论坛徽章:
0
3 [报告]
发表于 2006-11-26 11:10 |只看该作者
好久以前试过,我用的方法是pfile里指定了多个文件,使用这个文件的时候要先rename

论坛徽章:
0
4 [报告]
发表于 2006-11-26 13:33 |只看该作者
照2楼的方法做就可以了,如果是由两个PF合成一个LF,那么这两个PF要用到的栏位,全部重新定义一个名字,RPG中每次使用这个LF的时候,就直接会采用新定义的栏位名字了,如下原理一样:

A          R DDF452R                                   
A                                            PFILE(ZDF452)   
A            N45201                    RENAME(F45201)  
A            N45202                    RENAME(F45202)  
A            N45203                    RENAME(F45203)  
A            N45204                    RENAME(F45204)  
A            N45205                    RENAME(F45205)  
A            N45206                    RENAME(F45206)  
A            N45207                    RENAME(F45207)  
A            N45208                    RENAME(F4520  
A            N45209                    RENAME(F45209)  
A            N45210                    RENAME(F45210)  
A            N45211                    RENAME(F45211)

论坛徽章:
0
5 [报告]
发表于 2006-11-26 18:58 |只看该作者
关于操作,读取的时候不可以写它的纪录名,要写文件名,更新的时候要更新纪录名,要用指示器标明的,好像

论坛徽章:
0
6 [报告]
发表于 2006-11-27 08:28 |只看该作者
PF

  1. A          R U1R01                     PFILE(POTU1)     
  2. A*  《キー》                                            
  3. A          K U1SDNO                                    
  4. A*  《選択》                                            
  5. A          S U1JTX                     COMP(EQ ' ')     
  6. A          R JKR01                     PFILE(SDTJK)     
  7. A*  《キー》                                            
  8. A          K JKSKNO                                    
  9. A*  《選択》                                          
  10. A          S JKJTX                     COMP(EQ ' ')   
复制代码


RPG

  1. FPOTU1J01IF  E           K        DISK
  2. IU1R01      78      
  3. IJKR01       79      
  4. C           *LOVAL    SETLLPOTU1J01                           
  5. C                     SETOF                     7879         
  6. C                     READ POTU1J01                 74        
  7. C           *IN74     DOWEQ*OFF                              
  8. C           *IN78     IFEQ *ON  
  9. C                     ..
  10. C                     ..
  11. C                     ENDIF   
  12. C           *IN79     IFEQ *ON     
  13. C                     ..
  14. C                     ..
  15. C                     ENDIF   
  16. C                     READ POTU1J01                 74   
  17. C                     ENDDO                              
复制代码

论坛徽章:
0
7 [报告]
发表于 2006-12-02 21:26 |只看该作者
我知道是那样读的,但请教楼上的,如果三个PFILE有不同字段名时读到后的字段名应该是怎样取值?RPG程序中都只用U1R01中的字段RFLD吗? 如下所示:
A          R U1R01                     PFILE(POTU1)     
A*  《キー》                                            
A             RFLD
A          K U1SDNO                                    
A*  《選択》                                            
A          S U1JTX                     COMP(EQ ' ')   
A            JFLD  
A          R JKR01                     PFILE(SDTJK)     
A*  《キー》                                            
A          K JKSKNO                                    
A             SFLD
A*  《選択》                                          
A          S JKJTX                     COMP(EQ ' ')
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP