Previous Topic Next topic Print topic


Configuration Options

The following table lists the options that you can set via the File Handler configuration file.

ASCIIMAINFRAMEPRINT Specifies whether to use ASCII printer control characters when CHARSET is set to ASCII.
BASENAME Specifies whether filenames specified in tags can be expressed without the pathname.
CBL_CFGREAD_DYNFH Forces the File Handler to reread its configuration file for configurable customer file handlers when DYNREDIR is set to DYNCONFIG.
COMMITFLUSH In the context of a program that is not using FILESHARE, specifies whether the COMMIT and ROLLBACK statements cause all file updates to be flushed to disk, as well as releasing record locks.
CONCATNAME Specifies whether filenames including the plus character ("+") are to be interpreted as normal filenames or as file concatenations.
CONVERTDBSPACE Enables the conversion of double-byte character set (DBCS) spaces to ASCII spaces when reading a line sequential file.
CONVERTEUCKATAKANA Enables conversion of EUC single-width double-byte characters to their double-width Katakana equivalents when reading a line sequential file.
CONVERTSTATUS Specifies the name of a program that is called after the File Handler has finished processing, to map returned status values for emulation purposes.
DATACOMPRESS Specifies whether data compression is in effect and the type of compression.
DATAFILE Maps the file name, passed to an OPEN statement, onto another name.
EXPANDPOSITIONING When using the WRITE AFTER POSITIONING statement (OS/VS COBOL compatibility), determines whether the written record includes carriage control information.
EXPANDTAB Determines whether to expand TAB characters, encountered in line sequential or line advancing files during a READ operation, into the equivalent number of spaces.
FASTREAD When reading an indexed file, specifies whether or not the File Handler performs extra checking to ensure data integrity.
FHREDIR Specifies whether files can be handled by a remote server using Fileshare.
FILEMAXSIZE Specifies the size in bytes for holding offsets used in locking calls, allowing access to very large files.
FILEPOINTERSIZE For format 8 indexed files, specifies the length in bytes to use to store file pointers.
FSIDXINTEGRITY Writes to disk any changed nodes held within the File Handlers index cache, before returning status information to the client program.
IDXDATBUF Determines the size of buffer used when accessing the data portion of a file with organization INDEXED. This option replaces DATACACHE, which is no longer supported.
IDXFORMAT Specifies the format to use when creating indexed files.
IDXNAMETYPE Specifies the format of the filename type for both the data file and, if present, the index file.
IGNORELOCK Specifies whether to ignore locks when reading files open for input.
INDEXCOUNT Specifies the number of index nodes to be cached for an indexed file. This option replaces INDEXCACHE, which is no longer supported.
INDEXFILE Maps the name of the index file (for those indexed file formats that have a separate index file).
INSERTNULL When performing WRITE or REWRITE operations on line sequential or line advancing files, determines whether to insert NULL (x"00") characters before non-printable characters. Also determines whether to strip out those NULL characters during READ operations.
INSERTTAB When performing WRITE or REWRITE operations on line sequential or line advancing files, determines whether to replace TAB characters with sequences of spaces
KEYCHECK Specifies whether the File Handler checks that the key definition defined in your application matches that of the indexed file you are opening
KEYCOMPRESS Specifies the type of key compression in use
LOADONTOHEAP Specifies whether the file handler loads the file into memory before executing any I/O operations.
LOCKTYPE Specifies the type of record locking in use.
LOG Specifies whether any unusual file-related situations, such as corrupted files, or automatic file recovery, are noted in a log file for later examination.
LOGFILENAME When the LOG option is active, specifies the name of the logfile to produce.
LSFILETERM Controls the behaviour of the File Handler upon encountering the EOF character x"1a" when reading line sequential files.
LSRECDELIM Specifies the characters used as the record delimiter in line sequential files.
MAINFRAMEPRINT For those files using WRITE AFTER ADVANCING or WRITE BEFORE ADVANCING, determines whether to use mainframe printer format (filetype(11)).
NAMEOPTIONS Specifies whether the name you pass to the OPEN statement can contain file handler directives enclosed in square brackets.
NFSFILELOCK
NODESIZE Specifies the size of the index nodes to use for an indexed file.
NOSEQCHECK When an indexed file with ACCESS SEQUENTIAL is opened for OUTPUT or EXTEND, specifies whether a check is made that the primary key of each new record written is greater than that of any previous key.
OPENINPUTSHARED Specifies whether files that you open for input, and for which you do not specify a LOCK MODE clause, can be shared by other users.
OSVSREWRITE Specifies whether to permit the WRITE statement for sequential files that are open for output. If so, these WRITE statements behave exactly like REWRITE statements.
READSEMA Specifies whether the system attempts to gain a semaphore for shared files when I/O operations are performed that do not modify the file.
READTODELIM Specifies whether the file pointer is advanced to the next logical record in the file when reading in a record that is longer than the user data area.
RELDATBUF Determines the size of buffer used when accessing a file with organization RELATIVE.
RELRECDELIM Determines the characters used as the record delimiter in fixed length relative files.
RETRYLOCK When an operation attempts to access locked records, indicates whether you wish to retry the operation.
RETRYOPEN When an operation attempts to access locked files, indicates whether you wish to retry the operation.
RETRYTIME Specifies whether the integer given in the RETRYLOCK or the RETRYOPEN parameter specifies the number of attempts or the number of seconds.
RUNITLOCKDETECT Specifies whether you can detect that a record has been locked by a separate OPEN statement issued from within the same run unit.
SEARCHONCREATE Determines whether the File Handler searches each specified directory on a multi-directory path for a file with the same name as the one being created.
SEQDATBUF Determines the size of buffer to use when accessing a file with organization SEQUENTIAL. This option replaces DATACACHE, which is no longer supported.
SKIPLOCK When a locked record is encountered during a sequential READ, specifies whether to advance the current record pointer.
SPACEFILL When performing READ operations on line sequential or line advancing files, determines whether to fill with spaces that part of the record area beyond the data that is read.
STARTUNLOCK Determines whether a START operation will remove existing locks for files specified with single record locking; that is, without the WITH LOCK ON MULTIPLE RECORDS phrase.
STRIPSPACE When performing WRITE or REWRITE operations on line sequential or line advancing files, determines whether to remove trailing space characters.
SUPPRESSADV For record sequential files, determines whether to ignore the ADVANCING phrase of the WRITE statement.
TRACE Specifies whether Xfhtrace is enabled.
TRACEFILEEXTEND Affects the functioning of File Handler tracing.
TRACEFILENAME When the TRACE option is active, specifies the name of the trace file to produce.
USEVSAMKEYDEFS When set to ON, specifies to use the keys defined in the catalog via the JCL and IDCAMS instead of the keys defined in the executing program.
WRITELINE Determines whether mainframe or PC behavior is used for WRITE record.
WRITETHRU Determines whether to write file modifications out to disk immediately. Alternatively, the modifications may be buffered internally, either by the COBOL system or by the operating system, and flushed to disk at a later stage.
CAUTION:

The FILEMAXSIZE option specifies the number of bytes used internally to store file offsets. This also affects internal locking mechanisms. Programs sharing the same file all need to use the same FILEMAXSIZE settings to ensure semaphores and record locks are handled correctly, thereby avoiding potential file corruption in shared files.

The FILEMAXSIZE option defaults to 4, limiting file addressability to 32 bit values which is compatible with earlier versions of Micro Focus systems. The other setting for the FILEMAXSIZE option is 8, which allows up to 64 bit values for file addressing on Windows platforms when accessing the NTFS file system, but changes the underlying record locking mechanism.

Do not set FILEMAXSIZE to 8 under any of the following circumstances:

  • You are running applications on an operating system which does not support a 64-bit file system.
  • You are running applications that access FAT file systems, since such file systems do not support file addressability greater than 32-bit file addressing.
  • If any accessing program needs to access a shared file in a 32-bit file system.
  • You are sharing files with applications using earlier versions of the Micro Focus COBOL product that only supported 32-bit file access.

See the appendix File Systems for more information on 64-bit and 32-bit file systems.

Previous Topic Next topic Print topic