View previous topic :: View next topic
|
Author |
Message |
scorp_rahul23
New User
Joined: 06 May 2008 Posts: 96 Location: Delhi
|
|
|
|
I am getting Error while running below code. Not sure what more changes I need to do in this.
Code: |
"EXECIO * DISKR MPRIN (STEM TEMPVAR. FINIS"
CURRENT=1
HEAP=1100
RCODE=0;
DO UNTIL RCODE <> 0
"EXECIO "HEAP" DISKR MPRIN "CURRENT" (STEM TEMPVAR. FINIS"
RCODE=RC
DO I =1 TO TEMPVAR.0
IF SUBSTR(TEMPVAR.I,20,10) = " " THEN
DO
PUSH TEMPVAR.I
"EXECIO 1 DISKW MPROUT"
END
END
CURRENT=CURRENT+HEAP;
SAY HEAP
"EXECIO * DISKW MPROUT (STEM OUT. FINIS"
END
EXIT 0
|
Code: |
EXECIO error. Unable to obtain storage.
EXECIO error. Unable to obtain storage.
Storage not available.
20 +++ PUSH TEMPVAR.I
Error running FILE7, line 20: Failure in system service
***
|
|
|
Back to top |
|
|
gcicchet
Senior Member
Joined: 28 Jul 2006 Posts: 1702 Location: Australia
|
|
Back to top |
|
|
scorp_rahul23
New User
Joined: 06 May 2008 Posts: 96 Location: Delhi
|
|
|
|
Code: |
/*** REXX */ "
DO WHILE (RETURN_CODE ¬= EOFFLAG)
"EXECIO 1 DISKR OLD"
RETURN_CODE = RC
IF RETURN_CODE = 0 THEN
DO
PARSE PULL RECORD
QUEUE RECORD;
IF SUBSTR(RECORD,30,10) = " " THEN
"EXECIO 1 DISKW MPROUT";
SAY "WRITTEN"
END;
END;
|
I changed to this but still there is issue with this logic. Not getting that |
|
Back to top |
|
|
Nic Clouston
Global Moderator
Joined: 10 May 2007 Posts: 2455 Location: Hampshire, UK
|
|
|
|
How many records in your input file? As the posts in the link say - do not process large files via rexx. If you are just doing a dataset copy then use a dataset copy utility - IEBGENER or your sort product.
You do not need to read onto the heap/stack. Just read into a record:
Code: |
"EXECIO 1 DISKW INFILE(input_record"
|
This will create a variable called INPUT_RECORD1 |
|
Back to top |
|
|
expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8797 Location: Welsh Wales
|
|
|
|
From what you have coded above, a simple sort step would be far more efficient |
|
Back to top |
|
|
|