DISPLAY の数字データ項目または数字作用対象に対して、特定の MOVE 文が実行された場合に、ランタイム エラー 163 (「数字フィールド内に無効な文字がある」) を発生させない。
>>--.---.--.----.--HOST-NUMMOVE------>< +-/-+ +-NO-+
なし
デフォルト: | NOHOST-NUMMOVE |
段階: | 構文チェック |
$SET: | 任意 |
この指令を指定すると、IBM メインフレームのコンパイラとの互換性を高めるために、メインフレーム上で S0C7 が発生する場合に、ランタイム エラー 163 (「数字フィールド内に無効な文字がある 」) が返される。
HOST-NUMMOVE を指定すると、数字 / 英数字データ形式と数字 / 数字データ形式を含む MOVE 文のサブセットに関して、IBM メインフレームのコンパイラとの互換性が高くなる。
IBM メインフレームの動作との互換性が完全に保証されるわけではないが、ほとんどの動作がエミュレートされる。
HOST-NUMMOVE は、SIGN 指令に ASCII、MF、EBCDIC、IBM のいずれかが設定されている場合にのみサポートされる。
マネージ COBOL の場合、SIGN"EBCDIC" を HOST-NUMMOVE、HOST-NUMCOMPARE、または SIGN-FIXUP のいずれかと併用すると、無効な組み合わせの指令となり、コンパイル時に拒否される。ネイティブ COBOL の場合、この組み合わせは有効となる。
IBM メインフレームの動作との互換性を最大限に高めるには、HOST-NUMCOMPARE を CHARSET(EBCDIC) で使用する。CHARSET(ASCII) を使用する場合には、文字コードの違いにより互換性は一部失われる。