My solution, coded many years ago:-
WORKLEN = 2048
- - - - - - - - - - - - - - - - - - 15 Line(s) not Displayed
DO WHILE RESUME = 'Y'
- - - - - - - - - - - - - - - - - - - 5 Line(s) not Displayed
DWORK = Right(D2c(worklen),4,'00'X) || COPIES('00'X,WORKLEN-
4)
ADDRESS LINKPGM 'IGGCSI00 MODRSNRC CSIFIELD
DWORK'
RESUME = SUBSTR(CSIFIELD,150,1) /* GET RESUME FLAG FOR NEXT LOOP
*/
USEDLEN = C2D(SUBSTR(DWORK,9,4)) /* GET AMOUNT OF WORK AREA
USED */
REQDLEN = C2D(SUBSTR(DWORK,5,4)) /* GET AMOUNT OF WORK AREA
REQD */
If REQDLEN > WORKLEN Then Do /* adjust work area length
*/
WORKLEN = REQDLEN
End
Else Do
- - - - - - - - - - - - - - - - - - 107 Line(s) not Displayed
END
END
Dynamically adjusts the WORK area size if needed, and redrives the request.
On Tue, 10 Mar 2009 17:48:05 -0500, Kenneth E Tomiak
<[email protected]> wrote:
>You should get an error code if your workarea is too small and a value of
what
>size you need. Bigger is better.
>
<SNIP>
>>
>>....LDO
>>
Regards
Bruce Hewson
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html