OTHER (その他の場合の選択)
| 自由形式構文 | OTHER |
| コード | 演算項目 1 | 演算項目 2 | 結果フィールド | 標識 | ||
|---|---|---|---|---|---|---|
| OTHER | ||||||
OTHER 命令は、SELECT グループ の WHENxx または WHEN (真の場合に選択)条件が満たされ なかった場合に、一連の命令の処理を開始します。 この一連の命令 は ENDSL または END 命令で終了します。
OTHER 命令を使用する場合は、以下の規則に留意してください。
- SELECT グループの中では、OTHER 命令の指定は任意です。
- SELECT グループの中では、OTHER 命令は 1 つだけ指定できます。
- 同じ SELECT グループの OTHER 命令の後に、WHENxx または WHEN 命令を 指定することはできません。
- OTHER グループ内の一連の演算命令を空にすることができます。 効果は OTHER ステートメントを指定しないのと同じです。
- 合計演算の中では、制御レベルの指定 (7 から 8 桁目) は ブランクにするか、あるいはプログラムの該当するセクション内のステートメントを グループにまとめる L1-L9 標識、LR 標識、または L0 の指定を入れることができます。 制御レベルの指定は文書化のためだけのものです。条件付け標識の指定 (9 から 11 桁目) は使用できません。
詳細については、構造化プログラミング命令を参照してください。
図 1. OTHER 命令
*...1....+....2....+....3....+....4....+....5....+....6....+....7....+....
CL0N01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq....
*
* Example of a SELECT group with WHENxx and OTHER. If X equals 1,
* do the operations in sequence 1; if X does not equal 1 and Y
* equals 2, do the operations in sequence 2. If neither
* condition is true, do the operations in sequence 3.
*
C SELECT
C X WHENEQ 1
*
* Sequence 1
*
C :
C :
C Y WHENEQ 2
*
* Sequence 2
*
C :
C :
C OTHER
*
* Sequence 3
*
C :
C :
C ENDSL