SWITCH-TYPE

プログラミング可能能なスイッチの動作を ISO 2002 標準規格に合わせます。

構文:

>>-.---.-.----.--SWITCH-TYPE--"integer"-------------------><
   +-/-+ +-NO-+

パラメーター:

integer
次のいずれかを指定できます。
1
本 COBOL システムの動作
2
ISO 2002 の動作
3
Siemens BS2000 COBOL の動作

プロパティ:

デフォルト: SWITCH-TYPE"1"
段階: 構文チェック
$SET: 任意

説明:

ISO 2002 標準規格および Siemens BS2000 COBOL 方言では、スイッチは実行単位内で有効で、認識されます。たとえば、プログラム A でプログラム B を呼び出した場合に、A でのスイッチの変更は、B が呼び出された際に認識されます。また、B で変更された内容は、制御が A に戻った時点で、A に認識されます。しかし、A が終了してから B が呼び出されると、A で変更された内容は失われます。スイッチが格納されている空間は、1 つの実行単位内のプログラムすべてで共有されます。そのため、スイッチへの変更はすべてのプログラムで認識されます。

本 COBOL システムおよび以前のバージョンの Micro Focus COBOL では、呼び出されたサブプログラム (この例ではプログラム B) には、他のプログラムから独立した独自のスイッチ セットがあります。プログラム A でプログラム B を呼び出した場合は、プログラム B のスイッチが、プログラムの開始時に、プログラム A のスイッチの初期値と同じ値に設定されます。つまり、A がスイッチに加えた変更はすべて無視されます。制御がプログラム A に戻った時点での A のスイッチは、プログラムの制御が B に移動する前とまったく同じ状態で、B でスイッチに加えられた変更はすべて無視されます。B のスイッチは保存される (B がキャンセルされない限り) ため、B の独自のスイッチが再度呼び出された際は A を呼び出した時点の設定が残っています。この場合、スイッチが格納される空間は、プログラムごとに一意となります。

SWITCH-TYPE"3" は、Siemens BS2000 COBOL TSW-n および USW-n スイッチをサポートします。

必要なランタイム サポートを提供する BS/2000 アドオンがある場合は、SWITCH-TYPE"3" を使用します。