バージョン 4.2.5
 —  プログラミングガイド  —

出力ページのレイアウト

このドキュメントでは、レポートの特定のレイアウト定義に使用できるステートメントの概要について説明します。

次のトピックについて説明します。


レポートレイアウトに影響するステートメント

レポートのレイアウトに影響するステートメントは、以下のとおりです。

ステートメント 機能
WRITE TITLE ページタイトル、つまりページの先頭に出力するテキストを指定できます。 デフォルトでは、ページタイトルは中央揃えで下線なしです。
WRITE TRAILER ページトレーラ、つまりページの下に出力するテキストを指定できます。 デフォルトでは、トレーラ行は中央揃えで下線なしです。
AT TOP OF PAGE レポートの新しいページが開始されるときに常に実行される処理を指定できます。 この処理による出力は、ページタイトルの下に出力されます。
AT END OF PAGE ページ終了条件が発生したときに常に実行される処理を指定できます。 この処理による出力は、WRITE TRAILER ステートメントで指定したページトレーラの下に出力されます。
AT START OF DATA データベース処理ループで最初のレコードが読み込まれた後に実行される処理を指定します。 この処理による出力は、最初のフィールド値の前に出力されます。
AT END OF DATA 処理ループのすべてのレコードが処理された後に実行される処理を指定します。 この処理からの出力は、最後のフィールド値の直後に出力されます。
DISPLAY / WRITE これらのステートメントで、読み込まれたフィールド値を出力する際のフォーマットを制御します。 「DISPLAY および WRITE ステートメント」を参照してください。

データ出力に対する AT START OF DATA および AT END OF DATA ステートメントに関連する説明は、データベースアクセスの「AT START/END OF DATA ステートメント」を参照してください。 上記リストの他のステートメントについては、「データ出力制御」の各セクションを参照してください。

Top of page

一般的なレイアウトの例

以下のプログラム例は、出力ページの一般的なレイアウトを示しています。

** Example 'OUTPUX01': Several sections of output
************************************************************************
DEFINE DATA LOCAL
1 EMP-VIEW VIEW OF EMPLOYEES
  2 NAME
  2 FIRST-NAME
  2 BIRTH
END-DEFINE
*
WRITE TITLE   '********** Page Title **********'
WRITE TRAILER '********** Page Trailer **********'
*
AT TOP OF PAGE
  WRITE '===== Top of Page ====='
END-TOPPAGE
AT END OF PAGE
  WRITE '===== End of Page ====='
END-ENDPAGE
*
READ (10) EMP-VIEW BY NAME
  /*
  DISPLAY NAME FIRST-NAME BIRTH (EM=YYYY-MM-DD)
  /*
  AT START OF DATA
    WRITE '>>>>> Start of Data >>>>>'
  END-START
  AT END OF DATA
    WRITE '<<<<< End of Data <<<<<'
  END-ENDDATA
END-READ
END

プログラム OUTPUX01 の出力:

                    ********** Page Title **********
===== Top of Page =====
        NAME              FIRST-NAME         DATE
                                              OF
                                            BIRTH
-------------------- -------------------- ----------
   
>>>>> Start of Data >>>>>
ABELLAN              KEPA                 1961-04-08
ACHIESON             ROBERT               1963-12-24
ADAM                 SIMONE               1952-01-30
ADKINSON             JEFF                 1951-06-15
ADKINSON             PHYLLIS              1956-09-17
ADKINSON             HAZEL                1954-03-19
ADKINSON             DAVID                1946-10-12
ADKINSON             CHARLIE              1950-03-02
ADKINSON             MARTHA               1970-01-01
ADKINSON             TIMMIE               1970-03-03
<<<<< End of Data <<<<<
                  ********** Page Trailer **********
===== End of Page =====

Top of page