Ah! Got it. The OP has been absent from this discussion for a while. Either the problem is solved, or he has gotten tired of our debate. <g>
Charles -----Original Message----- From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of Bill Godfrey Sent: Monday, June 03, 2013 9:56 AM To: [email protected] Subject: Re: Examples of getbuf and build usage BUILD is only capable of creating a BUFCB that is immediately followed by the buffers, as it only has one operand to indicate the memory location, as you no doubt know. Earlier you said your program does not use BUILD. If your program had used BUILD, like the OP's does, and given it the address of an area above the line, which we don't know in the OP's case, it would be necessary to copy the BUFCB part of the area below the line and point the DCB to the copy. This possibility is not mentioned in the manual. The description of the BUILD operand says "If the area resides above the line, it cannot be used by other access method macros". This page in Chapter 21 of Using Data Sets: http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/DGT2D4A0/3.2.8 says "For BSAM, IBM recommends that you allocate data areas or buffers through GETMAIN, STORAGE, or CPOOL macros and not through BUILD, GETPOOL, or by the system during OPEN. Allocated areas can be above the line." This leads me to believe that the OP's program was not written with buffers above the line in mind, since it uses BUILD, but that is just a guess. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
