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


DISPLAY ステートメント

DISPLAY ステートメントは、各オペランドの内容を出力装置に転送します。その内容はオペランドのリストであり、左から右の順に出力装置上に表示されます。

構文図を読む構文図をスキップする
フォーマット 

            .----------------.                           
            V                |                           
>>-DISPLAY----+-ID-1-------+-+--+--------------------+---------->
              '-リテラル-1-'     '-UPON--+-簡略名-1-+-'   
                                        '-環境名-1-'     

>--+------------------------+----------------------------------><
   '-+------+--NO ADVANCING-'   
     '-WITH-'                   

ID-1
ID-1 は表示されるデータを参照します。 ID-1 は、USAGE が PROCEDURE-POINTER、FUNCTION-POINTER、OBJECT REFERENCE、または INDEX の項目以外のすべてのデータ項目を参照できます。ID-1 を索引名にすることはできません。

ID-1 が 2 進数、内部 10 進数、または内部浮動小数点のデータ項目の場合は、 ID-1 は以下のように外部フォーマットに自動的に変換されます。

  • 2 進数項目および内部 10 進数項目は、 ゾーン 10 進数に変換されます。負符号の付いた値では、最下位桁に符号が上書きされます。
  • 内部浮動小数点数は外部浮動小数点数に変換され、以下のように表示されます。
    • COMP-1 項目は、-.9(8)E-99 という外部浮動小数点 PICTURE 節を持つものとして表示されます。
    • COMP-2 項目は、-.9(17)E-99 という外部浮動小数点 PICTURE 節を持つものとして表示されます。

USAGE POINTER を指定して定義されたデータ項目は、PIC 9(10) という暗黙的な PICTURE 節を持つゾーン 10 進数に変換されます。

出力が CONSOLE へ送信される場合、USAGE NATIONAL を指定して記述されたデータ項目は、国別文字表現から EBCDIC に変換されます。 変換では、ソース・コードのコンパイル時に CODEPAGE コンパイラー・ オプションで指定された EBCDIC コード・ページが使用されます。EBCDIC 文字以外の国別文字はデフォルトの置換文字に変換されますが、例外条件が示されたり、発生したりすることはありません。

出力が CONSOLE へ送信されない場合、USAGE NATIONAL を指定して 記述されたデータ項目は、変換もデータ妥当性検査も行わずに書き込まれます。

その他のデータ・カテゴリーは変換が不要です。

日付フィールドは、DISPLAY ステートメントで指定されたときは、非日付データとして扱われます。 すなわち、DATE FORMAT は無視され、データ項目の内容はそのまま出力装置に転送されます。

明示的または暗黙的に USAGE DISPLAY-1 として定義された DBCS データ項目は、 出力装置の送り出しフィールドに転送されます。 正しい結果を得るには、DBCS のシフトアウトおよび シフトイン制御文字を認識する機能が出力装置に必要です。

DBCS と非 DBCS の両方のオペランドを単一の DISPLAY ステートメントに指定することができます。

リテラル-1
任意のリテラル、または 形象定数に示す任意の形象定数にすることができます。形象定数を指定した場合、その形象定数の 1 回のオカレンスだけが表示されます。
UPON
環境名-1 または簡略名-1 に関連した環境名を出力装置に関連付ける必要があります。SPECIAL-NAMES 段落を参照してください。

各装置のデフォルトの論理レコード・サイズは、次のように想定されます。

システム論理出力装置
120 文字
システムせん孔装置
80 文字
コンソール
100 文字

それぞれの装置に対して、最大の論理レコード・サイズは次のとおりです。

システム論理出力装置
255 文字
システムせん孔装置
255 文字
コンソール
100 文字

システムせん孔装置では、 最後の 8 文字が PROGRAM-ID 名として使用されます。

UPON 句が省略されている場合、システム論理出力装置が想定されます。DISPLAY ステートメントにおける有効な環境名のリストは、 表 1にあります。

DISPLAY の出力を stdout にルーティングする方法については、 Enterprise COBOL プログラミング・ガイド」を参照してください。

WITH NO ADVANCING
これが指定されると、出力装置の文字位置は、最後のオペランドが表示された後、 いかなる場合も変更されることはありません。

WITH NO ADVANCING 句の指定がない場合、最後のオペランドが出力装置に転送された後、 出力装置の文字位置は装置の次の行の左端位置にリセットされます。

Enterprise COBOL は、特定の文字位置に位置決めできる出力装置をサポートしていません。DISPLAY ステートメントの詳細については、Enterprise COBOL プログラミング・ガイドを参照してください。

DISPLAY ステートメントは、送り出しフィールドのデータを出力装置に転送します。 送り出しフィールドのサイズは、リストされた全オペランドのバイト数の合計です。 出力装置が転送されるデータ項目と同じサイズのデータを受け取ることができれば、 データ項目が転送されます。 出力装置が転送されるデータ項目と同じサイズのデータを受け取ることができなければ、 次のどちらかが適用されます。

DBCS オペランドを複数のレコードに分割する必要がある場合は、2 バイトの境界でのみ分割されます。

DBCS 項目を分割するには、シフト・コードを挿入する必要があります。つまり、DBCS オペランドを複数の レコードに分割するときは、現在のレコードの終わりにシフトイン文字を挿入し、 次のレコードの始めにシフトアウト文字を挿入します。必要があれば、シフトイン文字の後にスペースを埋め込みます。 挿入されたシフト・コードとスペースは、送り出しデータ項目のバイトの総数に含められます。

最後のオペランドが出力装置に転送されると、 出力装置の文字位置は装置の次の行の左端位置にリセットされます。

DBCS データ項目または DBCS リテラルが DISPLAY ステートメントに指定されている場合、 送り出しフィールドのサイズは、リストされたすべてのオペランドのバイトの総数ですが、 DBCS 文字の 1 文字を 2 バイトとしてカウントし、 それに DBCS に必要なシフト・コードおよびスペースを加えます。


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

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