In a message dated 5/24/2005 10:11:26 P.M. Central Daylight Time, [EMAIL PROTECTED] writes:
>In my previous post, I said to take the block size and subtract the >residual count to determine how many bytes were read in. This is >the only way to do it, No. You can get it from DCBLRECL for RECFM=U. Could be true. I don't know much about RECFM=U. At any rate, the access method subtracts the residual count from the max possible size to know what to store into DCBLRECL if RECFM=U. So this technique may not be "the only way to do it", but it does work in all cases. Note that in the case of chained scheduling (DCBOPTCD=C) the residual count will only apply to the last block read. If N blocks are being read and one of them is short, the short block will cause the channel program to stop and the residual count will apply to the short block. All previous blocks are thus known to be full. The original poster, however, said he was using BSAM, which means no chained scheduling and only one block is read per I/O request. So the residual count method still works in this case. You can transfer more than one block per I/O request in reading a PDS member (as chained scheduling would do), but you can't use BSAM to do it. You would have to use QSAM or perhaps EXCP. Bill Fairchild ---------------------------------------------------------------------- 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