SetContextStatus コマンド
Server.Load スクリプトで使用し、内容の繰り返しのステータスを設定します。
スクリプトが実行されるたびに毎回は実行されないが、N 回目ごとに実行されるスクリプト部分の実行を制御します。SetContextStatus は、NOTES.INI から ContextIterationN= の値を読み込みます。これにより、スクリプトが N 回繰り返されたときに、@IF 文にある N の値を持つコマンドが実行される、という条件が設定されます。
構文
SetContextStatus <contextvariable>
contextvariable では、どの NOTES.INI ContextIteration 変数を @IF テストが参照するかを示します。
「ContextIterationX」があるかどうかを確認するために、NOTES.INI が読み込まれます。X は正の数です。ContextIterationX は @if テストと一緒に使用します。@if テストは、このコマンドの後に続ける必要があります。ContextIteration 変数は、最大で 10 個使用できます。以下の例では、@IF [@1] によって、現在の繰り返し回数が ini にリストされている数 (たとえば ContextIteration1=12、つまり 12 回ごと) の倍数であるかどうかがチェックされます。結果が true である場合は、この処理を行う条件が満たされたと判断され、この @IF [@1] から最初に検出される @ENDIF までのコードが実行されます。例:
NOTES.INI での設定
ContextIteration1=12
スクリプトでの設定
SetContextStatus 1
@if[@1]
pause 30 sec
@endif
次に、変数「1」が設定され、ContextIteration1 に 10 と設定されたと想定します。
SetContextStatus では、チェックする繰り返しの値としてこの値を設定します。したがって、この場合はスクリプトが 10 回繰り返されるごとにこの @if が true になり、pause が実行されます。
これにより、n 回目の繰り返しの変数が単一となることを回避できます (異なるコマンドには、異なる実行間隔が必要となります)。