打印

錯在那裡-clp & rpg

錯在那裡-clp & rpg

以下是有問題的程式, 但不知道錯在那裡? 請個位高手指導我這新手.

CLP:
                                                               
    OVRDBF     FILE(LF_A) TOFILE(LF_A) SHARE(*YES)         
    OPNQRYF    FILE((LF_A)) QRYSLT('Field1 = +                 
                 %wldcrd("N*")') KEYFLD((Field2))               
                                                               
    OVRPRTF    FILE(PRTF) TOFILE(PRTF) PAGESIZE(66 132) +  
                 LPI(6) CPI(15) OVRFLW(60) OUTQ(&PRT) +        
                 SCHEDULE(*IMMED) HOLD(&HOLD)                  
               
                             
    CALL       PGM(&RPGN)   
    RCLRSC                  
    DLTOVR     FILE(*ALL)   
    ENDPGM                  
                                                              

RPG:

H        1   Y                                             
*----------------------------------------------------------
FLF_A  IP  E           K        DISK                     
*                                                         
FPF_A    IF  E           K        DISK                     
F            A                                KRENAMEA1   
*                                                         
FPRTF   O   E             81     PRINTER                  
*----------------------------------------------------------
IA                                                         
I                                              FIELD2  L1     
I            DS                                             
I            DS                                       
I                                        1  12 FIELD1   
I                                        1   1 F_A   
I                                        2   2 F_B   
I                                        3   3 F_C   
*-----------------------------------------------------
  * MAIN PROGRAM                                 
  *----------------------------------------------
C   L1                EXSR SRL1                 
C                     EXSR SR01                 
  *----------------------------------------------
  * SUBROUTINE - SRL1                           
  *----------------------------------------------
CSR         SRL1      BEGSR                     
  *                                             
C           F_A      IFEQ 'N'                  
C                     CLEARRP_H                 
  C                     CLEARRP_D                     
  *                                                   
C                     MOVELA1      #A01   7      
  *                                                   
C                     MOVELFIELD2      #DNO         
C           FIELD2      CHAINPF_A                 99   
C  N99                MOVELFILED3      #DNM         
C   99                MOVEL*BLANK    #DNM         
  *                                                                                                  
C                     WRITERP_H                       
  *                                                   
C           #A01     CHAINPF_A                 99   
C                     ENDIF                           
  *                                                   
CSR                   ENDSR                           
  *----------------------------------------------------
  * SUBROUTINE - SR01                                 
  *----------------------------------------------------
CSR         SR01      BEGSR                  
  *                                            
C           F_A      IFEQ 'N'               
C                     MOVELA1      A01#   
C                     MOVELA2      A02 #   
C                     MOVELA3      A03 #   
  *                                            
C                     MOVELA8     A08 #        
C                     MOVELA9     A09 #        
C                     MOVELA10     A10#         
C                     MOVELA11      A11 #         
  *                                                  
C           *IN81     IFEQ *ON                     
C                     WRITERP_H                     
C                     SETOF                     81  
C                     ENDIF                        
                                                     
  *                                   
C                     WRITERP_D      
C                     ENDIF         
  *                                   
CSR                   ENDSR         
************** End of data ***********



REPORT:
RP_H:

#DNO           #DNM
NAME                ADDRESS                PHONE NO.

RP_D:
A01#                A08#                        A11#
A02#                A09#                        
A03#                A10#


BUT THE REPORT COME OUT AS BELOW:
#DNO           #DNM        (PAGE1)

#DNO           #DNM (PAGE2)

#DNO           #DNM (PAGE3)
NAME            ADDRESS                PHONE NO.
ABC                STREET ….                02…….
…..

有的只顯示RP_H, 沒有RP_D 為什麼會如此?

TOP

先判读下open query 是否正确, 用 CPYFRMQRYF 在open query 之后把open query 结果 cpy到 自己lib的临时表,确认 这个正确。

TOP


感谢一直以来您对我们的支持!
当前时区 GMT+8, 现在时间是 2008-10-11 03:50 京ICP证060528 号

Designed By 17DST