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