バージョン 4.2.5
 —  ステートメント  —

AT TOP OF PAGE

ストラクチャードモード構文

[ATTOP [OFPAGE [(rep)]
statement ../graphics/dot3.gif
END-TOPPAGE

レポーティングモード構文

[ATTOP [OFPAGE [(rep)]

statement

DOstatement ../graphics/dot3.gif DOEND

このドキュメントでは、次のトピックについて説明します。

構文図で使用されている記号については、「構文記号」を参照してください。

関連ステートメント:AT END OF PAGE | CLOSE PRINTER | DEFINE PRINTER | DISPLAY | EJECT | FORMAT | NEWPAGE | PRINT | SKIP | SUSPEND IDENTICAL SUPPRESS | WRITE | WRITE TITLE | WRITE TRAILER

関連機能グループ:「出力レポートの作成


機能

AT TOP OF PAGE ステートメントは、新しいページが始まるときの処理を指定します。

プログラミングガイド』の次のセクションも参照してください。

処理

新しいページが始まるのは、内部の行カウンタが Natural セッションパラメータ PS(Natural レポートのページサイズ)で設定されたページサイズを超過したとき、あるいは NEWPAGE ステートメントが実行されたときです。 どちらの場合も、AT 条件が真となります。 EJECT ステートメントは、新しいページを開始しますが、AT 条件を発生させることはありません。

AT TOP OF PAGE ステートメントブロックは、AT 条件が発生したときに、そのステートメントブロックを含むオブジェクトがアクティブな場合にのみ実行されます。

AT TOP OF PAGE 処理の結果の出力は、タイトル行と 1 行の空行に続いて出力されます。

このステートメントは非手続き型なので、プログラム内の位置ではなくイベントによって実行されます。

Top of page

制限事項

AT TOP OF PAGE ステートメントは、内部サブルーチン内には指定できません。

Top of page

構文説明

(rep)
レポート指定:
表記 (rep) を使用すると AT TOP OF PAGE ステートメントを提供するレポートの ID を指定できます。

範囲 0~31 の値、または DEFINE PRINTER ステートメントを使用して割り当てた論理名を指定できます。

(rep) を指定しない場合、AT TOP OF PAGE ステートメントは最初のレポート(レポート 0)に適用されます。

Natural で作成した出力レポートのフォーマットを制御する方法については、『プログラミングガイド』の「データ出力の制御」を参照してください。

END-TOPPAGE Natural 予約語 END-TOPPAGE を使用して、AT TOP OF PAGE ステートメントを終了させる必要があります。

Top of page

** Example 'ATPEX1S': AT TOP OF PAGE (structured mode)                  
************************************************************************
DEFINE DATA LOCAL                                                       
1 EMPLOY-VIEW VIEW OF EMPLOYEES                                         
  2 NAME                                                                
  2 FIRST-NAME                                                          
  2 CITY                                                                
  2 DEPT                                                                
END-DEFINE                                                              
*                                                                       
FORMAT PS=15                                                            
LIMIT 15                                                                
READ EMPLOY-VIEW BY NAME STARTING FROM 'L'                              
  DISPLAY 2X NAME 4X FIRST-NAME CITY DEPT                               
  WRITE TITLE UNDERLINED 'EMPLOYEE REPORT'                              
  WRITE TRAILER '-' (78)                                                
  /*                                                                    
 AT TOP OF PAGE                                                        
    WRITE 'BEGINNING NAME:' NAME                                        
  END-TOPPAGE
  /*                            
  AT END OF PAGE                
    SKIP 1                      
    WRITE 'ENDING NAME:   ' NAME
  END-ENDPAGE                   
END-READ                        
END                            

プログラム ATPEX1S の出力:

                                EMPLOYEE REPORT                                
-------------------------------------------------------------------------------
BEGINNING NAME: LAFON                                                          
          NAME                 FIRST-NAME              CITY         DEPARTMENT 
                                                                       CODE    
  --------------------    -------------------- -------------------- ---------- 
                                                                               
  LAFON                   CHRISTIANE           PARIS                VENT18     
  LANDMANN                HARRY                ESCHBORN             MARK29     
  LANE                    JACQUELINE           DERBY                MGMT02     
  LANKATILLEKE            LALITH               FRANKFURT            PROD22     
  LANNON                  BOB                  LINCOLN              SALE20     
  LANNON                  LESLIE               SEATTLE              SALE30     
  LARSEN                  CARL                 FARUM                SYSA01     
  LARSEN                  MOGENS               VEMMELEV             SYSA02     
------------------------------------------------------------------------------ 
                                                                               
ENDING NAME:    LARSEN                                                        

レポーティングモードの例については、ライブラリ SYSEXRM のプログラム ATPEX1R を参照してください。

Top of page