M204.2119 AT-MOST/EXACTLY-ONE constraint violation in record token, field ignored: token2 = token3
An attempt was made to store, add, or insert a second occurrence of an AT-MOST-ONE or EXACTLY-ONE field in the record indicated. The second occurrence, also indicated in the message, is not added/inserted in Table B, or in
any index (if applicable). The requested update is not performed. This message is issued only when no
ON FIELD CONSTRAINT CONFLICT unit exists for the request.
If the failed request was from SOUL, the request is canceled and its active transaction, if any, is backed out. For failed requests from Host Language Interface, the message is accompanied by Return Code 202 (without request cancellation). For failed requests during Fastload (FLOD or FILELOAD), Fastload continues, but the file is marked "logically inconsistent" (see the FISTAT parameter).
Response: SOUL procedures that update AT-MOST-ONE or EXACTLY-ONE fields should always contain On FCC units to handle AT-MOST-ONE conflicts ($Updstat code 2) when they occur. Similarly, Host Language Interface programs should code routines to handle AT-MOST-ONE violations, as indicated by the Return Code 202. Fastload must be corrected, following a RESET of FISTAT (see below), to properly load AT-MOST-ONE fields.
File manager response: From SOUL or Host Language Interface, no response is necessary.
From Fastload (FLOAD or FILELOAD), the FISTAT parameter will have been set to X'40', "logically inconsistent," as a warning that the state of file integrity is questionable, depending on whether or not the failed request "cascaded" invalid Fastload decisions and results.
Consult with the user to determine the logical consistency ramifications of the particular Fastload in question. Reset FISTAT to X'00' once a plan for corrective action, if any, is determined.
|RETCODEO=0||Sets online return code|
|RETCODEB=4||Sets batch (single user) return code|
|CLASS=E||Error class; the message can be suppressed with the X'04' bit setting of the MSGCTL parameter|
|AUDITER||Writes the message with line type ER to the audit trail|
|COUNT||Increments the error count (ERCNT) parameter|