The MODFCB function modifies various parameters for a non-system Adabas file.
This document covers the following topics:
FILE is the number of the Adabas file to be modified. An Adabas system file cannot be specified. If large object (LB) fields exist in the file, this is the file number of the base file.
ASSOPFAC/DATAPFAC specify the padding factor (1-90) to be in effect for Associator and Data Storage, respectively. Existing blocks retain their original padding factor (see the ADAORD utility).
The Data Storage padding factor (DATAPFAC) setting is ignored for files containing spanned records. The following warning will appear if DATAPFAC is specified for a file that has data storage spanning enabled:
*****DATAPFAC is ignored for files with spanned data storage enabled******
A return code of 4 (CC=4) is also returned.
The optional FILEREADONLY parameter can be used to indicate whether an Adabas database file should be placed in readonly status (where it can be updated only by Adabas utilities) or in normal status (where it can be updated in any normal manner). Valid values are "YES" (place the file in readonly status) or "NO" (place the file in normal status). There is no default value.
Note:
The ADADBS DSREUSE, ISNREUSE, NEWFIELD, RELEASE DE, and RENAME
utility functions do not need to lock the file for their use; these functions
can perform their processing in parallel with active users. This means that you
do not need to set a file in read-only status (FILEREADONLY=YES) if you will be
performing these other ADADBS functions only.
LOBFILE specifies the file number of the LOB file associated with the base file. This parameter is useful in combination with the FILE parameter (which is set to the base file number) to mark the two files as being in sync.
For more information, read Large Object (LB) Files and Fields.
The maximum number of blocks per secondary extent allocation for Data Storage (MAXDS), the normal index (MAXNI), and the upper index (MAXUI). The value specified must specify blocks, be followed by a "B" (for example, MAXDS=8000B), and cannot be more than 65535B. If one of the parameters is either not specified or specifies "0B", the maximum secondary extent allocation for that component has no limit.
In all cases, however, Adabas enforces minimum secondary allocations for these parameters:
MAXDS=6B MAXNI=6B MAXUI=15B
If you specify a value lower than these minimum allocations, the Adabas-enforced minimum value is used.
The maximum compressed record length permitted for the file. The value specified should not be less than the current maximum record size in the specified file.
When a parameter error or a functional error occurs while this utility function is running, the utility ordinarily prints an error message and terminates with user abend 34 (with a dump) or user abend 35 (without a dump). If NOUSERABEND is specified, the utility will not abend after printing the error message. Instead, the message "utility TERMINATED DUE TO ERROR CONDITION" is displayed and the utility terminates with condition code 20.
Note:
When NOUSERABEND is specified, we recommend that it be specified
as the first parameter of the utility function (before all other parameters).
This is necessary to ensure that its parameter error processing occurs
properly.
This parameter is required if the file specified in the FILE parameter is password-protected.
The PGMREFRESH parameter determines whether a user program is allowed to perform a file refresh operation by issuing a special E1 command. If the parameter is not specified, the option remains in its current status: either on (YES) or off (NO).
The RPLUPDATEONLY parameter can be used in the ADADBS MODFCB function to indicate whether an Adabas database file may be updated only by the Event Replicator Server as part of Adabas-to-Adabas replication or by other means as well. This parameter is optional. Valid values are "YES" or "NO". A value of "YES" indicates that the file can only be updated via Event Replicator processing; a value of NO indicates that the file can be updated by any normal means, including Event Replicator processing. There is no default; if no value is specified for the RPLUPDATEONLY parameter in the ADADBS MODFCB function, the value used previously for the file is used.
The SYFMAXUV parameter can be used to specify the maximum number of values kept for a system field with the MU option during the execution of an update (A1) command (in other words, the maximum number of occurrences allowed for MU system fields during the execution of an update command). The value set for SYFMAXUV applies to all system fields in the file with the MU option. Valid values are integers from 1 through 20. The maximum value for SYFMAXUV is 20.
The internal default, if SYFMAXUV is not specified, is zero (0), which Adabas interprets to mean that there is no setting for this parameter at the file level. In this case, Adabas will assume a default of 1.
The TEST parameter tests the operation syntax without actually performing the operation. Only the syntax of the specified parameters can be tested; not the validity of values and variables. See Syntax Checking with the TEST Parameter for more information on using the TEST parameter in ADADBS functions.
The following modifications are to be made for file 203: the Associator padding factor is set to 5, the Data Storage padding factor to 5, and the maximum Data Storage secondary extent allocation to 100 blocks.
ADADBS MODFCB FILE=203,ASSOPFAC=5,DATAPFAC=5,MAXDS=100B