I have an application copied from a SCO UnixWare system (using a Liant COBOL runtime and compiler) to a SUSE Linux system (using Visual COBOL 2.2). Copying was as simple as taring the application, copying over to the new system, and untar. Paths are all the same, as are permissions. The immediate goal is to simply get the application running on the new system. This is the FILE-CONTROL:
SELECT INQFL
ASSIGN TO RANDOM "/mypath/INQFL"
ORGANIZATION IS INDEXED
ACCESS MODE IS DYNAMIC
RECORD KEY IS I-KEY
FILE STATUS IS IND-STATUS.
The application compiles but on execution of the line OPEN INPUT INQFL, IND-STATUS contains "98". The debugger shows the INQFL with "Closed Last status: 9/56".
Not finding much help online, anyone have any ideas?
#98#migration#File#error#status#VisualCOBOL#956#COBOLmainframe230.blogspot.com.tr/.../file-status-codes-or-cobol-abend-codes.html
Code 98 means: File is Locked - OPEN failed
There is also this:
supportline.microfocus.com/.../tip6.asp
Recovering a Corrupted File (File Status 98)
And there's this
objectmix.com/.../738951-error-98-90-a.html
Re: Error 98,90
98,90 is pretty well known as a file locking issue when using mapped
drives.
The main reason for file error 98,90's is when runtimes terminate
incorrectly. Normally when the runtime shuts down it will update some
information in the Vision file header and subtract itself from the
user count that is also in the Vision File header. If the information
in the header is incorrect the runtime will report a corruption
error.
So, the file is 'not good' is the first port of call, IMO
Investigate the conditions under which the original copy from the source system took place - maybe it was done while the system was 'in use'
That's what I'd do first
If no luck then go back to the source system, copy the file to sequential, and re-load under the new system
I hope you get it sorted out
I have an application copied from a SCO UnixWare system (using a Liant COBOL runtime and compiler) to a SUSE Linux system (using Visual COBOL 2.2). Copying was as simple as taring the application, copying over to the new system, and untar. Paths are all the same, as are permissions. The immediate goal is to simply get the application running on the new system. This is the FILE-CONTROL:
SELECT INQFL
ASSIGN TO RANDOM "/mypath/INQFL"
ORGANIZATION IS INDEXED
ACCESS MODE IS DYNAMIC
RECORD KEY IS I-KEY
FILE STATUS IS IND-STATUS.
The application compiles but on execution of the line OPEN INPUT INQFL, IND-STATUS contains "98". The debugger shows the INQFL with "Closed Last status: 9/56".
Not finding much help online, anyone have any ideas?
#98#migration#File#error#status#VisualCOBOL#956#COBOLYes, the new system is definitely treating the indexed file as corrupt. I just tested copying the tarball back to the source system and untarring it. I pointed the application to this copy of the file it and it worked without a hitch.
So I'm thinking the problem is more with the indexed file is simply incompatible with the new system.
The difference is one system is running Liant's RM/COBOL v6.61 for SCO UnixWare 7 and the new system is Visual COBOL v2.2 for Eclipse on SUSE Linux. I wonder if there is a difference in how indexed files are organized between the two, and files aren't directly compatible between the two.
I have an application copied from a SCO UnixWare system (using a Liant COBOL runtime and compiler) to a SUSE Linux system (using Visual COBOL 2.2). Copying was as simple as taring the application, copying over to the new system, and untar. Paths are all the same, as are permissions. The immediate goal is to simply get the application running on the new system. This is the FILE-CONTROL:
SELECT INQFL
ASSIGN TO RANDOM "/mypath/INQFL"
ORGANIZATION IS INDEXED
ACCESS MODE IS DYNAMIC
RECORD KEY IS I-KEY
FILE STATUS IS IND-STATUS.
The application compiles but on execution of the line OPEN INPUT INQFL, IND-STATUS contains "98". The debugger shows the INQFL with "Closed Last status: 9/56".
Not finding much help online, anyone have any ideas?
#98#migration#File#error#status#VisualCOBOL#956#COBOLYes, the new system is definitely treating the indexed file as corrupt. I just tested copying the tarball back to the source system and untarring it. I pointed the application to this copy of the file it and it worked without a hitch.
So I'm thinking the problem is more with the indexed file is simply incompatible with the new system.
The difference is one system is running Liant's RM/COBOL v6.61 for SCO UnixWare 7 and the new system is Visual COBOL v2.2 for Eclipse on SUSE Linux. I wonder if there is a difference in how indexed files are organized between the two, and files aren't directly compatible between the two.
I have an application copied from a SCO UnixWare system (using a Liant COBOL runtime and compiler) to a SUSE Linux system (using Visual COBOL 2.2). Copying was as simple as taring the application, copying over to the new system, and untar. Paths are all the same, as are permissions. The immediate goal is to simply get the application running on the new system. This is the FILE-CONTROL:
SELECT INQFL
ASSIGN TO RANDOM "/mypath/INQFL"
ORGANIZATION IS INDEXED
ACCESS MODE IS DYNAMIC
RECORD KEY IS I-KEY
FILE STATUS IS IND-STATUS.
The application compiles but on execution of the line OPEN INPUT INQFL, IND-STATUS contains "98". The debugger shows the INQFL with "Closed Last status: 9/56".
Not finding much help online, anyone have any ideas?
#98#migration#File#error#status#VisualCOBOL#956#COBOLYes, the new system is definitely treating the indexed file as corrupt. I just tested copying the tarball back to the source system and untarring it. I pointed the application to this copy of the file it and it worked without a hitch.
So I'm thinking the problem is more with the indexed file is simply incompatible with the new system.
The difference is one system is running Liant's RM/COBOL v6.61 for SCO UnixWare 7 and the new system is Visual COBOL v2.2 for Eclipse on SUSE Linux. I wonder if there is a difference in how indexed files are organized between the two, and files aren't directly compatible between the two.
I have an application copied from a SCO UnixWare system (using a Liant COBOL runtime and compiler) to a SUSE Linux system (using Visual COBOL 2.2). Copying was as simple as taring the application, copying over to the new system, and untar. Paths are all the same, as are permissions. The immediate goal is to simply get the application running on the new system. This is the FILE-CONTROL:
SELECT INQFL
ASSIGN TO RANDOM "/mypath/INQFL"
ORGANIZATION IS INDEXED
ACCESS MODE IS DYNAMIC
RECORD KEY IS I-KEY
FILE STATUS IS IND-STATUS.
The application compiles but on execution of the line OPEN INPUT INQFL, IND-STATUS contains "98". The debugger shows the INQFL with "Closed Last status: 9/56".
Not finding much help online, anyone have any ideas?
#98#migration#File#error#status#VisualCOBOL#956#COBOLThe two indexed file formats are not the same by default. The RM COBOL uses the RM File handler and the Visual COBOL product defaults to Micro Focus file handler.
If you wish to read RM files in a Visual COBOL program you have to specify the file as IDXFORMAT"21".
Please see the section here in the docs that covers RM compatibility issues and in particular RM File Handling.
Thanks.
I have an application copied from a SCO UnixWare system (using a Liant COBOL runtime and compiler) to a SUSE Linux system (using Visual COBOL 2.2). Copying was as simple as taring the application, copying over to the new system, and untar. Paths are all the same, as are permissions. The immediate goal is to simply get the application running on the new system. This is the FILE-CONTROL:
SELECT INQFL
ASSIGN TO RANDOM "/mypath/INQFL"
ORGANIZATION IS INDEXED
ACCESS MODE IS DYNAMIC
RECORD KEY IS I-KEY
FILE STATUS IS IND-STATUS.
The application compiles but on execution of the line OPEN INPUT INQFL, IND-STATUS contains "98". The debugger shows the INQFL with "Closed Last status: 9/56".
Not finding much help online, anyone have any ideas?
#98#migration#File#error#status#VisualCOBOL#956#COBOLThank you to both of you! Paul for the mental push that the file was corrupt, and Chris for pointing me to the solution.
I have an application copied from a SCO UnixWare system (using a Liant COBOL runtime and compiler) to a SUSE Linux system (using Visual COBOL 2.2). Copying was as simple as taring the application, copying over to the new system, and untar. Paths are all the same, as are permissions. The immediate goal is to simply get the application running on the new system. This is the FILE-CONTROL:
SELECT INQFL
ASSIGN TO RANDOM "/mypath/INQFL"
ORGANIZATION IS INDEXED
ACCESS MODE IS DYNAMIC
RECORD KEY IS I-KEY
FILE STATUS IS IND-STATUS.
The application compiles but on execution of the line OPEN INPUT INQFL, IND-STATUS contains "98". The debugger shows the INQFL with "Closed Last status: 9/56".
Not finding much help online, anyone have any ideas?
#98#migration#File#error#status#VisualCOBOL#956#COBOLThank you to both of you! Paul for the mental push that the file was corrupt, and Chris for pointing me to the solution.