RETRY |
このドキュメントでは、次のトピックについて説明します。
関連ステートメント:ACCEPT/REJECT | AT BREAK | AT START OF DATA | AT END OF DATA | BACKOUT TRANSACTION | BEFORE BREAK PROCESSING | DELETE | END TRANSACTION | FIND | GET | GET SAME | GET TRANSACTION DATA | HISTOGRAM | LIMIT | PASSW | PERFORM BREAK PROCESSING | READ | STORE | UPDATE
関連機能グループ:データベースへのアクセスと更新
RETRY ステートメントは、ON ERROR ステートメントブロック内でのみ使用できます(ON
ERROR ステートメントを参照)。他ユーザー用にホールド状態になっているレコードに再度アクセスするときに使用します。
レコードが他ユーザー用にすでにホールド状態になっている場合、Natural はエラーメッセージ 3145 を発行します。セッションパラメータ WH(ホールド状態でのレコードの待機)も参照してください。
RETRY ステートメントは、エラー 3145 の原因となっているオブジェクト内に指定します。
レコードのホールドロジックの詳細については、『プログラミングガイド』の「レコードホールドロジック」セクションを参照してください。
このステートメントは、Adabas データベースにアクセスするためにのみ使用できます。
** Example 'RTYEX1': RETRY
**
** CAUTION: Executing this example will modify the database records!
************************************************************************
DEFINE DATA LOCAL
1 EMPLOY-VIEW VIEW OF EMPLOYEES
2 NAME
*
1 #RETRY (A1) INIT <' '>
END-DEFINE
*
FIND EMPLOY-VIEW WITH NAME = 'ALDEN'
/*
DELETE
END TRANSACTION
/*
ON ERROR
IF *ERROR-NR = 3145
INPUT NO ERASE 10/1
'RECORD IS IN HOLD' /
'DO YOU WISH TO RETRY?' /
#RETRY '(Y)ES OR (N)O?'
IF #RETRY = 'Y'
RETRY
ELSE
STOP
END-IF
END-IF
END-ERROR
/*
AT END OF DATA
WRITE NOTITLE *NUMBER 'RECORDS DELETED'
END-ENDDATA
END-FIND
*
END