Rational Developer for System z
Enterprise COBOL for z/OS バージョン 4.1 言語解説書


フォーマット 1

構文図を読む構文図をスキップする
フォーマット 1: リテラル値

>>-VALUE--+----+--リテラル-----------------------------------------><
          '-IS-'         

フォーマット 1 は、データ項目の初期値を指定します。 初期設定は、BLANK WHEN ZERO 節や JUSTIFIED 節が指定されていても、それらとは無関係です。

OCCURS 節を含むか、または OCCURS 節に従属しているデータ記述項目の中に指定されているフォーマット 1 の VALUE 節は、 関連付けられたデータ項目が発生するたびに、指定された値を割り当てます。OCCURS 節の DEPENDING ON 句を含む構造は、 VALUE による初期設定を目的として、それぞれ最大のオカレンス項目数を持っているものとみなされます。

VALUE 節は、EXTERNAL 節かまたは REDEFINES 節のいずれかを持つ項目を含むデータ記述項目か、 またはそれに従属しているデータ記述項目に対しては、指定することはできません。この規則は、条件名項目には適用されません。

フォーマット 1 の VALUE 節は、基本データ項目またはグループ項目に対して指定することができます。VALUE 節をグループ・レベルで指定する場合には、グループ域は、このグループ内にある従属項目を考慮せずに初期化されます。さらに、このグループ内の従属項目に対して VALUE 節を指定することはできません。

グループ項目の場合、従属項目が JUSTIFIED または SYNCHRONIZED VALUE 節を含む場合には、VALUE 節を指定してはなりません。

英数字グループに対して VALUE 節を指定する場合には、すべての従属項目は USAGE DISPLAY を使用して明示的または暗黙的に記述する必要があります。

VALUE 節は、データ記述項目の中にある他の節や、項目の階層のデータ記述の中にある他の節と矛盾するものであってはなりません。

記述された項目の初期値を判別する際には、PICTURE 節の編集文字の機能は無視されます。ただし、編集文字は、項目サイズを判別する際には計算に入れられます。 したがって、編集文字があれば、それをリテラルに含めなければなりません。 例えば、リテラルが PICTURE +999.99 として定義され、 その値が +12.34 である場合、VALUE 節は、 VALUE "+012.34" と指定する必要があります。

VALUE 節を、外部浮動小数点項目に対して指定することはできません。

先行するデータ項目が DEPENDING ON 句を持つ OCCURS 節を含む場合には、 それに続くデータ項目は VALUE 節を含むことはできません。

リテラルの値に関する規則

  • リテラルを指定できるところであればどこでも、形象定数 で指定されている規則に従って、 形象定数をその代わりに指定することができます。
  • 項目が数字クラスである場合には、VALUE 節のリテラルは数字でなければなりません。リテラルが作業用ストレージ項目またはローカル・ストレージ項目の値を定義する場合、リテラルの位置合わせは数値の移動の規則に従って行われますが、追加の制約事項が 1 つあります。それは、このリテラルは、ゼロ以外の数字を切り捨てる必要のある値を持つことはできないということです。そのリテラルが符号付きである場合は、 関連した PICTURE 文字ストリングには、符号記号 (S) が含まれなければなりません。
  • 一部の例外を除いて、VALUE 節の数値リテラルは、その項目の PICTURE 節によって指定される値の 範囲内にある値でなければなりません。例えば、PICTURE 99PPP の場合、リテラルは 0 であるか、または 1000 から 99000 の範囲内でなければなりません。PICTURE PPP99 である場合、リテラルは 0.00000 から 0.00099 の範囲内でなければなりません。

    例外を以下に示します。

    • USAGE COMP-5 を使用して記述したデータ項目には、 その PICTURE 節にピクチャー記号 P はありません。
    • TRUNC(BIN) コンパイラー・オプションが有効であるとき、 USAGE BINARY、 COMP、または COMP-4 を使用して記述したデータ項目には、 その PICTURE 節に PICTURE 記号 P はありません。

      上記の項目の VALUE 節は、 本来のネイティブ・バイナリー表記の容量と同じ大きさまでの値を持つことができます。

  • USAGE DISPLAY を指定して記述された英字、英数字、英数字編集、または数字編集項目に対して、VALUE 節を指定する場合、VALUE 節のリテラルは英数字リテラルまたは形象定数でなければなりません。 リテラルの位置合わせは英数字の位置合わせの規則に従って行われますが、 追加の制約事項が 1 つあります。それは、 リテラル中の文字数が項目のサイズを超えてはならないことです。
  • USAGE NATIONAL を指定して記述された基本国別、国別編集、または数字編集項目に対して、VALUE 節を指定する場合、VALUE 節のリテラルは国別リテラル、英数字リテラル、または 形象定数に示すような形象定数でなければなりません。英数字リテラルの値は、そのソース・コード表現から UTF-16 表現に変換されます。リテラルの位置合わせは英数字の位置合わせの規則に従って行われますが、 追加の制約事項が 1 つあります。それは、リテラルの中の文字数は項目の文字位置のサイズを超えてはならないことです。
  • 英数字グループに対して VALUE 節をグループ・レベルで指定する場合、リテラルは英数字リテラル、または ALL 国別リテラル 以外の、形象定数 に示すような形象定数でなければなりません。 リテラルのサイズは、グループ項目のサイズを超えてはなりません。
  • 国別グループに対して VALUE 節をグループ・レベルで指定する場合、リテラルは英数字リテラル、国別リテラル、または形象定数の ZERO、SPACE、 QUOTES、HIGH-VALUE、LOW-VALUE、シンボリック文字、ALL 国別リテラル、または ALL リテラルのうちのいずれか 1 つにすることができます。 英数字リテラルの値は、そのソース・コード表現から UTF-16 表現に変換されます。形象定数は、それぞれ国別文字値を表します。リテラルのサイズは、グループ項目のサイズを超えてはなりません。
  • DBCS 項目と関連付けられた VALUE 節は、DBCS リテラル、形象定数 SPACE、または 形象定数 ALL DBCS リテラル を含まなければなりません。 リテラルの長さは、データ項目の PICTURE 節が示すサイズを超えてはなりません。
  • 国別リテラルを指定する VALUE 節は、国別クラスのデータ項目にのみ関連付けることができます。
  • DBCS リテラルを指定する VALUE 節は、DBCS クラスのデータ項目にのみ関連付けることができます。
  • COMPUTATIONAL-1 項目、 または COMPUTATIONAL-2 (内部浮動小数点) 項目と関連付けられた VALUE 節では、 浮動小数点リテラルを指定する必要があります。 さらに、形象定数 ZERO、および整数と 10 進数の両形式の ZERO リテラルは、 浮動小数点 VALUE 節の中で指定できます。

    浮動小数点リテラル値の詳細については、浮動小数点リテラルの値に関する規則を参照してください。


ご利用条件 | フィードバック

このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)