View previous topic :: View next topic
|
Author |
Message |
tammy cook
New User
Joined: 30 Nov 2005 Posts: 2
|
|
|
|
I am trying to create a tape backup in COBOLII of three VSAM files, one of which is being changed to a spanned file (lrecl of > 100000). My program compiles, but I get an unsuccessful open or close error when I try to run the program. The error is on the open. The FD is
LABEL RECORDS ARE STANDARD
BLOCK CONTAINS 0 CHARACTERS
RECORDING MODE IS S. |
|
Back to top |
|
|
jon_s_rice
Active User
Joined: 24 Mar 2005 Posts: 102 Location: Douglasville, GA USA
|
|
|
|
For a VSAM file you need to define a key if the file is KSDS, also a select similar to:
SELECT ACCTMSTR-FILE-IN
ASSIGN TO ACCTMIN
ORGANIZATION IS INDEXED
ACCESS IS SEQUENTIAL
RECORD KEY IS ACCTMSTR-KEY
FILE STATUS IS ACCTMSTR-FILE-STATUS.
There is a different assign for an ESDS file. I thing assign to as-ddname. |
|
Back to top |
|
|
tammy cook
New User
Joined: 30 Nov 2005 Posts: 2
|
|
|
|
I am not creating a VSAM file as the backup, it is tape.
Is there a way around the size limit when creating a tape? I have seen a utility ADRDSSU which backs up to tape with no size limit. |
|
Back to top |
|
|
DavidatK
Active Member
Joined: 22 Nov 2005 Posts: 700 Location: Troy, Michigan USA
|
|
|
|
Tammy,
I think you?re limited to 32K record. One method would be to break the record up in the COBOL program and write the record in sections. Make it a variable record length, including an indicator, this could be a key (sequential number) that is applied to each piece of the record. This way, with the length and key you can re-assemble the record. |
|
Back to top |
|
|
mmwife
Super Moderator
Joined: 30 May 2003 Posts: 1592
|
|
|
|
Hi Tammy,
IBM now supports large block sizes. They call them something like BLOGS or BLOIS or some such. Problem is it's only supported in Assembler Language. |
|
Back to top |
|
|
|