SET REPROCESS コマンド

ロック試行が失敗した後にファイルまたはレコードをロックする回数または時間を指定します。

構文

  
SET REPROCESS TO nAttempts [SECONDS] | TO AUTOMATIC  

引数

TO nAttempts[SECONDS]
最初の試行が失敗した後にレコードまたはファイルをロックしようとする回数または秒数を指定します。 既定値は 0 です。最大値は 32,000 です。

SECONDS は、Visual FoxPro が nAttempts 秒のファイルまたはレコードのロックを試行することを指定します。 nAttempts が 0 より大きい場合にのみ使用できます。

たとえば、 nAttempts が 30 の場合、Visual FoxPro はレコードまたはファイルを最大 30 回ロックしようとします。 SECONDS (SET REPROCESS TO 30 SECONDS) も含める場合、Visual FoxPro はレコードまたはファイルを最大 30 秒間ロックしようとします。

ON ERROR ルーチンが有効であり、コマンドによるレコードまたはファイルのロックの試行が失敗した場合は、ON ERROR ルーチンが実行されます。 ただし、関数がロックを試みると、ON ERROR ルーチンは実行されません。関数は False (.F.) を返します。

ON ERROR ルーチンが有効でない場合、コマンドはレコードまたはファイルのロックを試み、ロックを設定できないと、エラーが生成されます。 関数がロックを設定しようとすると、アラートは表示されません。関数は False (.F.) を返します。

nAttempts が 0 (既定値) で、レコードまたはファイルをロックしようとするコマンドまたは関数を発行すると、Visual FoxPro はレコードまたはファイルを無期限にロックしようとします。 待機中にレコードまたはファイルがロック可能になると、ロックが行われ、システム・メッセージがクリアされます。 関数がロックを設定しようとすると、関数は True (.T.) を返します。

ON ERROR ルーチンが有効で、コマンドがレコードまたはファイルをロックしようとしている場合、ON ERROR ルーチンは、レコードまたはファイルをロックする追加の試行よりも優先されます。 ON ERROR ルーチンは直ちに実行されます。 Visual FoxPro は追加のレコードまたはファイル ロックを試みず、システム メッセージを表示しません。

nAttempts が 1 の場合、Visual FoxPro はレコードまたはファイルを無期限にロックしようとしますが、ON ERROR ルーチンは実行されません。

ロックしようとしているレコードまたはファイルに別のユーザーによってロックが設定されている場合は、ユーザーがロックを解除するまで待つ必要があります。

自動へ
Visual FoxPro がレコードまたはファイルを無期限にロックすることを指定します。 (SET REPROCESS TO -2 は同等のコマンドです)。

注釈

レコードまたはファイルを最初にロックしようとすると、必ずしも成功するとは限りません。 多くの場合、レコードまたはファイルはネットワーク上の別のユーザーによってロックされます。 SET REPROCESS は、最初の試行が失敗したときに、Visual FoxPro がレコードまたはファイルのロックを追加で試行するかどうかを決定します。 追加の試行回数、または試行の実行時間を指定できます。 ON ERROR ルーチンは、失敗したロック試行の処理方法に影響します。