ページの先頭行へ戻る
WSMGR for Web V7.2 使用手引書L20

22.3.3 制御文

制御文としては、以下のものがあります。

説明

IF

処理の分岐

WHILE

ループ

GOTO

ジャンプ


IF

IF文は条件文によって処理の流れを変える制御文です。条件文の演算結果がTRUE(真)、FALSE(偽)によって処理が分岐されます。


●構文


構文1: 基本形

    IF(条件文)
              文        ・・・ 条件文がTRUE(真)の時に実行されます
    ENDIF

構文2: 条件文によって処理がそれぞれに分岐する場合

    IF(条件文)
              文        ・・・ 条件文がTRUE(真)の時に実行されます
    ELSE
              文        ・・・ 条件文がFALSE(偽)の時に実行されます
    ENDIF

構文3: 複数の条件文によって処理が分岐する場合

    IF(条件文1)
              文        ・・・ 条件文1がTRUE(真)の時に実行されます
    ELSEIF(条件文2)
              文        ・・・ 条件文2がTRUE(真)の時に実行されます
    ENDIF

●補足

●使用例

次の例は"TSSX"という文字列を検索してその結果をMsgBox関数で表示しています。

    IF( Scan("TSSX") )
          MsgBox("ログオンが完了しました")
    ELSE
          MsgBox("ログオンは完了していません")
    ENDIF

WHILE

WHILE文は条件文がTRUE(真)である間処理を繰り返します。


●構文

    WHILE (条件文)
            文1
            文2
             :
    ENDWHILE

●補足

●使用例

次の例はWHILE文で無限ループを行い"TSSX"という文字列が見つかったらWHILEから抜けます。見つからなかったらキー入力可能になるのを待ってWHILE文の先頭に戻ります。

    WHILE( TRUE )

          IF( Scan("TSSX") )
                MsgBox("ログオンが完了しました")
                BREAKWHILE
          ELSE
                Wait()
                CONTINUE
          ENDIF

    ENDWHILE

GOTO

GOTO文は指定ラベル位置の処理へジャンプします。


●構文

    GOTO(ラベル)
            文1
            文2
             :
    ラベル:
            文x1
            文x2
             :

●補足

●使用例

次の例では、現在キーボードロック状態の場合ERR_KEYLOCKラベルへジャンプします。

    IF( IsKeyboardLock() )
          GOTO(ERR_KEYLOCK)
    ENDIF
     ;[その他の処理]

    ERR_KEYLOCK:
          MsgBox("キー入力できない状態です")