Can all of these COBOL statements be lumped together to use one write statement to file?

StackOverflow https://stackoverflow.com/questions/21100964

  •  27-09-2022
  •  | 
  •  

문제

Can all of these declaration be lumped together so that I could just write parameter to a file?

Example: WRITE TEMP from myVariable

 01 LINE1       PIC X(80) VALUE 'String'.          
 01 LINE2.                                                        
    02 FILLER   PIC X(79) VALUE 'String'.   
    02 FILLER   PIC X(01) VALUE '>'.                              
 01 LINE3.                                                        
    05 R-TO     PIC X(10) VALUE 'String: <'.                     
    05 NEW-ADDR PIC X(69).                                        
    05 FILLER   PIC X(01) VALUE '>'.                              
 01 LINE4       PIC X(04) VALUE 'String'.                           
 01 LINE5       PIC X(80) VALUE 'String'.         
 01 LINE6.                                                        
    05 V-TO     PIC X(04) VALUE 'String'.                            
    05 ADDR6    PIC X(76).                                        
 01 LINE7       PIC X(80) VALUE 'String'.  
    SKIP1.                                                        
도움이 되었습니까?

해결책

01  myVariable.
 05 LINE1       PIC X(80) VALUE 'String'.          
 05 LINE2.                                                        
    10 FILLER   PIC X(79) VALUE 'String'.   
    10 FILLER   PIC X(01) VALUE '>'.                              
 05 LINE3.                                                        
    10 R-TO     PIC X(10) VALUE 'String: <'.                     
    10 NEW-ADDR PIC X(69).                                        
    10 FILLER   PIC X(01) VALUE '>'.                              
 05 LINE4       PIC X(04) VALUE 'String'.                           
 05 LINE5       PIC X(80) VALUE 'String'.         
 05 LINE6.                                                        
    10 V-TO     PIC X(04) VALUE 'String'.                            
    10 ADDR6    PIC X(76).                                        
 05 LINE7       PIC X(80) VALUE 'String'.  

"String" is six bytes, so it won't fit into the two four-byte fields.

This will do what you ask, but I'm not sure it is what you want.

Do you want a variable-length record with each element devoid of trailing spaces?

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top