Joined: 29 Oct 2010 Posts: 187 Location: Toronto, ON, Canada
Thanks. The FIRST(100) does what I expected it to do.
When I code the RRN(1,100) then ICETOOL invokes an E15 user exit program. What puzzles me is why this program doesn't do some simple math and determine that once it has sent out 100 records that there is no need to read more records since nothing more will get written.
Given the umpteen variations of the different operands which can be mixed and matched, it is NOT just "simple math"! I built in some short cuts for special operands such as FIRST(n), but to build in short cuts for every possible variation was prohibitive. Keep in mind that for a general purpose utility, what non-developers see as "simple" often isn't "simple" for the guy who has to actually develop it, and there are many tradeoffs.
Nothing stops you from using a simple DFSORT job with STOPAFT=n if you understand how that works.