View previous topic :: View next topic
|
Author |
Message |
rakesh.psnvnk Currently Banned New User
Joined: 12 Jun 2010 Posts: 3 Location: HYDERABAD
|
|
|
|
can i overwrite (not append) records of same length in esds or in rrds vsam. |
|
Back to top |
|
|
superk
Global Moderator
Joined: 26 Apr 2004 Posts: 4652 Location: Raleigh, NC, USA
|
|
|
|
Yes, of course. |
|
Back to top |
|
|
Bill O'Boyle
CICS Moderator
Joined: 14 Jan 2008 Posts: 2501 Location: Atlanta, Georgia, USA
|
|
|
|
If this is BATCH and you're attempting a direct READ on an ESDS record, using a specific RBA/XRBA, with intent on updating (or not), this can ONLY be done in ASSEMBLER.
However, for CICS/ESDS access, this can be done (regardless of the language) using the CICS FILE API's.
I can't speak for RRDS processing, due to limited exposure....
Bill |
|
Back to top |
|
|
superk
Global Moderator
Joined: 26 Apr 2004 Posts: 4652 Location: Raleigh, NC, USA
|
|
|
|
Was I wrong? I thought COBOL supports a REWRITE for any of the VSAM formats, providing that they're opened in the correct (I-O) mode? |
|
Back to top |
|
|
Bill O'Boyle
CICS Moderator
Joined: 14 Jan 2008 Posts: 2501 Location: Atlanta, Georgia, USA
|
|
|
|
Kevin,
Even in Enterprise COBOL 4.2, the ability to issue a Batch ESDS direct READ (via an RBA/XRBA) is not supported. I would have thought by now, it would be part of the language?
I'm sure you can sequentially read records until you reach the one you need, but in a large file, this could take a while as you'd need to identify record-criteria after each READ as the associated RBA/XRBA is unknown to COBOL.
IIRC, there's a way around this by defining the ESDS Base Cluster with an alternate index, but CRS has set in and I my recall factor has very much diminished.
Maybe Batch RBA direct READ's can be done in Enterprise PL/I
Somebody else probably knows the alternate index trick for COBOL....
Bill |
|
Back to top |
|
|
Akatsukami
Global Moderator
Joined: 03 Oct 2009 Posts: 1788 Location: Bloomington, IL
|
|
|
|
Bill O'Boyle wrote: |
Maybe Batch RBA direct READ's can be done in Enterprise PL/I |
Don't think so, although if your records are of fixed length you could kludge up a record number as FLOOR(RBA/record_length)+1 |
|
Back to top |
|
|
Bill O'Boyle
CICS Moderator
Joined: 14 Jan 2008 Posts: 2501 Location: Atlanta, Georgia, USA
|
|
|
|
Yes, you could take a SWAG at building an RBA/XRBA, but if the given HLL can't (under the covers), infiltrate the given ACB/RPL, you're back to square one....
The Enterprise COBOL for z/OS V4.2 Programming Guide (SC23-8529-01), section "1.10.2.4 Specifying access modes for VSAM files", states -
Quote: |
You can access records in VSAM sequential files only sequentially. You can access records in VSAM indexed and relative files in three ways: sequentially, randomly, or dynamically. |
Unless I'm interpreting this incorrectly, ESDS Direct READ's by RBA/XRBA, of the Base Cluster, are not supported.
One would have to assume that after all these years, this ability would be supported <sigh>?
Bill |
|
Back to top |
|
|
|