HP OpenVMS Systems Documentation |
HP COBOL
|
| Previous | Contents | Index |
Technical Notes
MODIFY statement execution can result in these DB-CONDITION database exception condition codes:
| DBM$_CRUN_NULL | The currency indicator for the run unit is null. |
| DBM$_CRUN_POS | The currency indicator for the run unit specifies the position of a vacated record in a record collection. |
| DBM$_WRONGRTYP | The record type of record-name is not the same type as the current record of the run unit, or the record-item is not a group or elementary item of the current record type. |
| DBM$_DUPNOTALL | A sort key data item is modified creating a duplicate value in a DUPLICATES NOT ALLOWED set. |
| DBM$_NOT_UPDATE | A realm is not in ready update usage mode. |
| DBM$_CHKITEM | A modified data item failed to pass the schema CHECK ITEM condition. |
| DBM$_CHKMEMBER | A modified data item failed to pass the schema CHECK MEMBER condition. |
| DBM$_CHKRECORD | A modified data item failed to pass the schema CHECK RECORD condition. |
| DBM$_CONVERR | A data conversion error occurred in the MODIFY operation. |
| DBM$_ILLNCHAR | An invalid character was found in a numeric field. |
| DBM$_NONDIGIT | A nonnumeric character was found in a numeric field. |
| DBM$_OVERFLOW | A data overflow error occurred in the MODIFY operation. |
| DBM$_TRUNCATION | A data truncation error occurred in the MODIFY operation. |
| DBM$_UNDERFLOW | A data underflow error occurred in the MODIFY operation. |
150-UPDATE-PARTS-RECORD.
DISPLAY "ENTER A PART-ID NUMBER - X(8): "
WITHOUT ADVANCING.
ACCEPT PART_ID.
IF PART_ID NOT = "TERMINAL"
FIND FIRST PART WITHIN ALL_PART USING PART_ID
ON ERROR DISPLAY "ERROR IN FIND "
PERFORM 200-PARTS-RECORD-ERROR
GO TO 150-UPDATE-PARTS-RECORD
END-FIND
PERFORM VERIFY-PART-ROUTINE
ELSE
PERFORM TERMINAL-ROUTINE.
DISPLAY "ENTER PART DESCRIPTION - X(50): "
WITHOUT ADVANCING.
ACCEPT PART_DESC.
.
.
.
MODIFY PART
ON ERROR DISPLAY "ERROR MODIFYING PARTS_RECORD..."
PERFORM 200-PARTS-RECORD-ERROR-ROUTINE.
GO TO 150-UPDATE-PARTS-RECORD.
|
300-FIX-ID-ROUTINE.
DISPLAY "ENTER PART ID TO BE CHANGED - X(8): "
WITHOUT ADVANCING.
ACCEPT PART_ID.
FIND FIRST PART WITHIN CLASS_PART USING PART_ID
ON ERROR DISPLAY "ERROR IN FIND PARTS_RECORD..."
PERFORM 200-PARTS-RECORD-ERROR-ROUTINE.
DISPLAY "ENTER NEW PART ID - X(8): "
WITHOUT ADVANCING.
ACCEPT PART_ID.
MODIFY PART_ID RETAINING CLASS_PART
ON ERROR DISPLAY "ERROR MODIFYING PARTS_RECORD..."
PERFORM 200-PARTS-RECORD-ERROR-ROUTINE.
|
The READY statement begins a database transaction, prepares one or more database realms for processing, and places each specified realm in a ready mode.
realm-name
names a subschema realm.stment
is an imperative statement executed for an on error condition.stment2
is an imperative statement executed for a not on error condition.
The same realm-name cannot be specified more than once in a single READY statement.
Figure 4-1 Usage Mode Conflicts
READY statement execution can result in these DB-CONDITION database exception condition codes:
| DBM$_ALLREADY | All subschema realms are already readied. |
| DBM$_READY | Realm-name is already readied. |
| DBM$_AREABUSY | Your usage mode conflicts with another run unit's usage mode. See Figure 4-1. |
Depending on the contents of PROCESS-MODE, this statement readies the BUY, MAKE, and PERSONNEL realms in either PROTECTED UPDATE mode or CONCURRENT RETRIEVAL mode (default for USAGE-MODE).
IF PROCESS-MODE = "UPDATE"
READY BUY, MAKE, PERSONNEL
USAGE-MODE IS PROTECTED UPDATE
ON ERROR DISPLAY "ERROR READYING ..."
DISPLAY "IN PROTECTED UPDATE MODE..."
PERFORM ERROR-ROUTINE
END-READY
PERFORM UPDATE-ROUTINE
ELSE
READY BUY, MAKE, PERSONNEL
ON ERROR DISPLAY "ERROR READYING ..."
DISPLAY "IN CONCURRENT RETRIEVAL MODE..."
PERFORM ERROR-ROUTINE
END-READY.
|
| Previous | Next | Contents | Index |