IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

reading the SYSIN parm file with in a loop


IBM Mainframe Forums -> COBOL Programming
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
yogi.47eie

New User


Joined: 16 Aug 2006
Posts: 45
Location: india

PostPosted: Tue Sep 05, 2006 1:36 pm
Reply with quote

Hi ,
I am going to read a SYSIN parm file,with in a loop.Scenario is like this,
I am reading theSYSIN parm file,when i read the 4 th record it is satisfying my condition,then control is coming out of the loop.Next time i am reading the parm file,At that time i am expecting to read the first record again.But when i enter into the loop again my control is going to the 5 th record onwards.Can i read the SYSIN file from the first record?Like a PS file can i close and open the SYSIN parm file ,so that i can read from the first record?
Back to top
View user's profile Send private message
raghunathns

Active User


Joined: 08 Dec 2005
Posts: 127
Location: rochester

PostPosted: Tue Sep 05, 2006 11:29 pm
Reply with quote

SYSIN is only for instream. it is not possible to read twice.

if you want you can read and store in an array and then process the array. multiple times.

or

use another dd. and work as a seq file.
Back to top
View user's profile Send private message
DavidatK

Active Member


Joined: 22 Nov 2005
Posts: 700
Location: Troy, Michigan USA

PostPosted: Wed Sep 06, 2006 4:47 am
Reply with quote

yogi.47eie,

Yes, you can, treat it as any other file, use ?SELECT?, ?FD?, ?OPEN/CLODE?.

Code:

FILE-CONTROL.                                         
                                                     
    SELECT SYSIN-FILE                                 
    ASSIGN TO SYSIN.                                 
                                                     
DATA DIVISION.                                       
FILE SECTION.                                         
FD  SYSIN-FILE                                       
    LABEL RECORDS STANDARD                           
    BLOCK CONTAINS 0 RECORDS.                         
01  SYSIN-REC                PIC X(80).               
                                                     
WORKING-STORAGE SECTION.                             
                                                     
LINKAGE SECTION.                                     
                                                     
PROCEDURE DIVISION.                                   
                                                     
PROGRAM-START.                                 
                                               
    OPEN INPUT SYSIN-FILE.                     
                                               
    PERFORM 4 TIMES                             
        READ SYSIN-FILE                         
        DISPLAY SYSIN-REC                       
    END-PERFORM.                               
                                               
    CLOSE SYSIN-FILE.                           
                                               
    OPEN INPUT SYSIN-FILE.                     
                                               
    PERFORM 4 TIMES                             
        READ SYSIN-FILE                         
        DISPLAY SYSIN-REC                       
    END-PERFORM.                               
                                               
    CLOSE SYSIN-FILE.                           

    GOBACK.


JCL
Code:

//JS00100  EXEC PGM=#TEST                         
//STEPLIB  DD DSN=YOUR.PDS.LOADLIB,DISP=SHR
//SYSIN    DD *                                   
RECORD 1                                           
RECORD 2                                           
RECORD 3                                           
RECORD 4                                           
RECORD 5                                           
RECORD 6                                           
RECORD 7                                           
RECORD 8                                           
/*                                                 
//SYSOUT   DD SYSOUT=*                             
//SYSPRINT DD SYSOUT=*


Results

Code:

.SARPAGE 4                   
.                           
.RECORD 1                   
.RECORD 2                   
.RECORD 3                   
.RECORD 4                   
.RECORD 1                   
.RECORD 2                   
.RECORD 3                   
.RECORD 4                   


Dave
Back to top
View user's profile Send private message
yogi.47eie

New User


Joined: 16 Aug 2006
Posts: 45
Location: india

PostPosted: Thu Sep 14, 2006 5:55 pm
Reply with quote

Hi David ,
Thanks a lot ,as per the request they asked us to use the table logic ,it went fine.

Regards
Yogi
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> COBOL Programming

 


Similar Topics
Topic Forum Replies
No new posts Compare 2 files and retrive records f... DFSORT/ICETOOL 3
No new posts FTP VB File from Mainframe retaining ... JCL & VSAM 8
No new posts Extract the file name from another fi... DFSORT/ICETOOL 6
No new posts How to split large record length file... DFSORT/ICETOOL 10
No new posts Extracting Variable decimal numbers f... DFSORT/ICETOOL 17
Search our Forums:

Back to Top