Skip to main content

This article resolves the situation where a COBOL program running on a mainframe without problems returns an Open error File Status 39 after migrating to Net Express.

Problem:

We have a COBOL program running on a mainframe without any problems on other servers, but after migrataing to Net Express it returns an Open error File Status 39. Why is this?

Resolution:

The reason this is happening is because Net Express uses a non-mainframe dialect by default. This dialect assumes a fixed file format, whereas most of the mainframe data sets have a variable record format.

There are several ways to solve this:

1. Change the FD Description by adding the RECORDING MODE clause, for example:

    FD UZ01DD
         RECORDING MODE IS V.

2.  Use the RECMODE Compiler Directive, for example: RECMODE"VSC24" or RECMODE"V"

Old KB# 14244

#COBOL
#EnterpriseServer
#netexpress
#Server
#Enterprise