組み合わせ編集コード

組み合わせ編集コード (1 から 4、A から D、J から Q) は、数値フィールドに句読 点を付けるためのものです。

制御仕様書の DECEDIT キーワードによって、小数点に使用される文字および先 行ゼロを消去するかどうかが決まります。 小数点を入れるかどうかとその位置は、ソース・フィールドの小数点の位置に よって決まります。 ソース・フィールドに小数点以下の桁数が指定され、ゼロ・バランスの消去が指定さ れている場合には、そのフィールドがゼロでない場合に のみ 小数点が 組み込まれます。 ゼロ・バランスの消去を指定する場合には、ゼロのフィールドは ブランクとして出力されます。

ゼロ・バランスの消去を指定せず、フィールドがゼロの場合には、 出力は次のいずれかになります。
  • 小数点の後に n 個のゼロが続く。ここで n はフィールド中の小数点以下の桁数です。
  • 小数点以下の桁数の指定がない場合には、フィールドの 1 の位にゼロ。

12 個の組み合わせ編集コードのいずれであっても、浮動通貨記号またはアスタリ スク保護を使用することができます。 浮動通貨記号は、最初の有効数字の左側に表示されます。 ゼロ・バランスを消去する編集コードが使用されている場合には、ゼロ・バラン スに浮動通貨記号は印刷されません。 ゼロ・バランスを消去する編集コードが使用される場合、ゼロ・バランスに 通貨記号は表示されません。

プログラムの通貨記号は、通貨記号が制御仕様書で CURSYM キーワードに よって指定されていない限り、ドル記号 ($) となります。

出力仕様で浮動通貨記号を指定するためには、出力仕様の 53 から 55 桁目に 通貨記号をコーディングし、編集したいフィールドについて 44 桁目に 編集コードをコーディングします。

組み込み関数 %EDITC の場合、3 番目のパラメーターに浮動通貨記号を指定 します。 プログラムに通貨記号を使用するには、*CURSYM を指定します。 他の通貨記号を 使用するには、長さ 1 の文字定数を指定します。

アスタリスク保護を使用すると、消去される各ゼロがアスタリスク によって置き換えられます。 ゼロ・バランス・ソース・フィールドは、アスタリスクだけからなるフィールドによって 置き換えられます。 出力仕様でアスタリスク保護を指定するには、出力仕様の 53 から 55 桁目に、 編集コードと一緒にアスタリスク定数をコーディングします。 組み込み関数の %EDITC を使用してアスタリスク保護を指定するには、3 番目の パラメーターとして *ASTFILL を指定します。

単純 (X, Y, Z) またはユーザー定義 (5 から 9) 編集コードでは、アスタリスク 充てんおよび浮動通貨記号を使用することはできません

アスタリスク充てんの前に通貨記号を印刷することができます (固定通貨記号)。 これは、以下のコーディングによって出力仕様で行うことができます。
  1. 最初の出力仕様の 53 桁目に通貨記号定数を入れます。 47 から 51 桁目に指定される終了位置には、編集されるフィールドの始めの前に 1 桁 のスペースが必要です。
  2. 2 番目の出力仕様では、30 から 43 桁目に編集フィールドを入れ、44 桁目に 編集コードを入れ、47 から 51 桁目に編集フィールドの終了位置を入れて、53 から 55 桁目には '*' を入れます。
これは、通貨記号を %EDITC の結果に連結することに より、%EDITC 組み込み関数を使用して行うことができます。
     C           EVAL       X = '$' + %EDITC(N: 'A' : *ASTFILL)
出力仕様で、配列全体を印刷するために編集コードを使用する場合は、 その配列の各要素 (最初の要素を除く) の前に 2 つのブランクが 入れられます。
注: %EDITC 組み込み関数を使用して配列を編集することはできません。

表 1 は、組み合わせ編集コードの機能を要約したものです。 これらのコードによって編集されたフィールドの形式が左側にリストされています。 負のフィールドには、図の最上部に示されているように、符号なし、CR、マイナ ス符号 (-)、または浮動マイナス符号による句読点を付けることができます。

表 1. 組み合わせ編集コード
  負の バランス標識
グループ区切り記号付き印刷 ゼロ・バランス印刷 符号なし CR - 浮動マイナス符号
あり あり 1 A J N
あり なし 2 B K 0
なし あり 3 C L P
なし なし 4 D M Q