View previous topic :: View next topic
|
Author |
Message |
leninmathangi
New User
Joined: 10 Sep 2008 Posts: 11 Location: Chennai - India
|
|
|
|
Im getting the message FILE SCANIN2 NOT UNALLOCATED, DATA SET IS OPEN when the below code is trying to allocate the variable second time in loop.
"ALLOC DA("JOBPDS") F(SCANIN2) SHR REUSE"
"EXECIO * DISKR SCANIN2 (STEM INREC2."
Code:
Code: |
"ALLOC DA('"JOBNAMES"') F(SCANIN1) SHR REUSE"
"ALLOC DA('"OUTPUT"') F(SCANOUT) SHR REUSE"
"EXECIO * DISKR SCANIN1 (STEM INREC1."
IF INREC1.0 > 0 THEN DO JOBNUM = 1 TO INREC1.0
JOB = STRIP(INREC1.JOBNUM)
JOBPDS = "'" || INPDS || "(" || JOB || ")'"
"ALLOC DA("JOBPDS") F(SCANIN2) SHR REUSE"
"EXECIO * DISKR SCANIN2 (STEM INREC2."
QUEUE INREC1.JOBNUM
IF RC > 2 | INREC2.0 == 0 THEN LEAVE
DO I = 1 TO INREC2.0
IF POS(SEARCH1,INREC2.I) <> 0 THEN DO
POS1 = POS(SEARCH1,INREC2.I)
IF POS1 <> 0 THEN DO
SUBSTRING = SUBSTR(INREC2.I,POS1+4,9)
PROCNAME = " " || STRIP(SUBSTRING)
QUEUE PROCNAME
END
NEW = QUEUED()
END /*IF*/
END /*DO SEARCH FOR ONE JOB*/
END /*DO SEARCH ALL JOBS*/
NEW = QUEUED()
"EXECIO 0 DISKR SCANIN2 (FINIS"
"EXECIO 0 DISKR SCANIN1 (FINIS"
"EXECIO" NEW "DISKW SCANOUT"
"EXECIO 0 DISKW SCANOUT (FINIS"
"FREE F(SCANIN1)"
"FREE F(SCANIN2)"
"FREE F(SCANOUT)"
|
Please help me. |
|
Back to top |
|
|
Pedro
Global Moderator
Joined: 01 Sep 2006 Posts: 2547 Location: Silicon Valley
|
|
|
|
Move your finis so that it is within the loop:
Code: |
"EXECIO 0 DISKR SCANIN2 (FINIS" |
The finis is the one that closes the file. |
|
Back to top |
|
|
leninmathangi
New User
Joined: 10 Sep 2008 Posts: 11 Location: Chennai - India
|
|
|
|
Thank you Pedro. It worked fine. |
|
Back to top |
|
|
|