Receiving message ACF00114 while trying to reserve unused data fields in the USERXLID for a future project.
The original definitions for the MCLASS field is as follows:
@CFDE MCLASS,MCLASS,CHAR,ALTER=SECURITY+ACCOUNT,LIST=ALL, 1
FLAGS=MULTIVAL,MVMAX=16,GROUP=0,VRTN1=ACF00SFP
SPACE
MCLASSF DS 0XL(MCLASSL)
MCLASS AMULTFLD LENGTH=6,MAX=16,TYPE=GEN
MCLASSL EQU *-MCLASS
SPACE
EPRFPASS DS CL1 Reserved
SPACE
The updated field definition for MCLASS is:
@CFDE MCLASS,MCLASS,CHAR,ALTER=SECURITY+ACCOUNT,LIST=ALL, 1
FLAGS=MULTIVAL,MVMAX=7,GROUP=0,VRTN1=ACF00SFP
SPACE
MCLASSF DS 0XL(MCLASSL)
MCLASS AMULTFLD LENGTH=6,MAX=7,TYPE=GEN
MCLASSL EQU *-MCLASS
SPACE
RSVD0002 DS CL2 Reserved
RSVD0052 DS CL52 Reserved
EPRFPASS DS CL1 Reserved
SPACE
The MVMAX on the @CFDE record and MAX on the AMULTFLD statement was decreased from 16 to 7. 54 bytes of reserved space were added following the MCLASS AMULTFLD statement.
After making this change and activating the new ACFFDR, receiving an ACF00114 error message stating an ERROR IN LOCATING/PROCESSING FIELD MCLASS - ACF00FLC RETURN/REASON
CODE = 04/16.
Release : 16.0
Component : ACF2 for z/OS
The ACFFDR contains the logonid record layout(LIDREC DSECT) and the logonid field definitions(@CFDE) for the logonid records that reside in LOGONID database.
If new ACFFDR was activated with @CFDE and LIDREC changes that reuse or redefines portions of the logonid record, there may be issues such as ACF00114 if the fields are not cleared out prior to activating the changes.
For example: if there is a 8 byte character logonid field called TESTFLD defined in the ACFFDR and a logonid has ABCDABCD specified for TESTFLD, the ACFFDR is changed replacing the TESTFLD with two 4 byte binary fields BIN1 and BIN2 and the changed ACFFDR is activated. Next, when the logonid is changed or listed, errors may occur because the BIN1 and BIN2 fields contain invalid data. To address the issue the best approach would be to clear out the logonid TESTFLD for logonids when the old ACFFDR is active prior to activating the new ACFFDR as described here.
With that being said, the following steps need to be followed to get past this error:
1. IPL with old ACFFDR
2. Clear the old multi-value fields for existing logonid
3. IPL with the changed ACFFDR with the re-defined logonid fields