Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

ルーチン・フローの制御

ルーチン・フローを制御するには、条件付きでコードを実行するか、もしくは特定のコード・セクションを経由する方法があります。特定のコード・セクションを繰り返し実行させる方法も必要です。また、実行時エラーをトラップし、エラー処理コードを実行する方法も必要です。前述した If 文は、条件を評価する基本的な方法です。ここでは、If 文に代わる、コードを繰り返し実行するいくつかの方法と、実行時エラーを処理するいくつかの方法を学習します。

演習では、If 文の条件が True の場合にのみ特定の処理を行う、つまり、Quit コマンドでルーチンを終了するというコードを学習しました。しかし If 文を使用して、複数のコマンドを含むコード・ブロックを実行するか、あるいは経由する方が適切です。また、1 つのコマンドに条件を付ける場合は、後置条件コマンドを使用することもできます。これまで学習してきたすべてのコマンド (If 文は除く) は、コロンや条件が後ろに続き、単純であったり、あるいは必要に応じて複雑であったりします。コマンドは、条件が True の場合にのみ実行します。

後置条件内にスペースを挿入するには、条件を括弧で囲みます。

postcond ; postconditionals versus If construct
    if name="" { quit  }                       ; you should replace this
    quit:(name = "")                           ; with this postconditional

    if name="" { write "...Exiting" quit  }    ; 2 commands after the if,
                                               ; so do this
    
    write:name="" "...Exiting" quit:name=""    ; instead of this
FeedbackOpens in a new tab