NEWPAGE

NEWPAGE [(rep)]

EVEN [IF] TOP [OF] [PAGE]

IF
WHEN

LESS [THAN] operand1 [LINES] [LEFT]
[WITH] TITLE title-definition

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

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

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

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


関数

NEWPAGE ステートメントは、ページ送りをするために使用します。NEWPAGE では、AT END OF PAGE および WRITE TRAILER ステートメントも実行されます。WRITE TITLEWRITE NOTITLE あるいは DISPLAY NOTITLE ステートメントを指定して固有のタイトル処理を定義していない限り、日付、時刻、ページ番号を含むデフォルトのタイトルが新しいページごとに出力されます。

注意:

  1. ページ送りは、NEWPAGE ステートメントが実行されるときに行われるわけではありません。出力を生成する後続のステートメントが実行されるときにのみ行われます。
  2. NEWPAGE ステートメントを使用しないとき、ページ送りは Natural セッションパラメータ PS に基づいて自動的に制御されます。

構文説明

オペランド定義テーブル:

オペランド 構文要素 フォーマット オペランド参照 ダイナミック定義
operand1 C S         N P I                 ×

構文要素の説明:

構文要素 説明
(rep)
レポート指定:

表記 (rep) は、NEWPAGE ステートメントを適用するレポートの ID を指定するために使用できます。

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

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

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

EVEN IF TOP OF PAGE
EVEN IF TOP OF PAGE オプション:

このオプションは、NEWPAGE ステートメントの実行の直前にページ送りが行われていても、新しいページを(対応する AT TOP OF PAGE およびページタイトル処理とともに)生成します。

WHEN LESS THAN operand1 LINES LEFT
WHEN LESS THAN ...LINES LEFT オプション:

このオプションは、現ページの残りの行数が operand1 で指定された行数よりも少ないとき、ページ換えをするために使用します(現在の行はセッションパラメータ PS の値と比較されます)。

WITH TITLE title-definition
WITH TITLE オプション:

このオプションは、新しいページに変わったときのタイトルを指定するために使用します。

title-definition は、WRITE TITLE ステートメントに記述されている同じ構文を使用して指定します。ただし、SKIP 節は NEWPAGE WITH TITLE title-definition ステートメントでは許可されません。

** Example 'NWPEX1': NEWPAGE                                            
************************************************************************
DEFINE DATA LOCAL                                                       
1 EMPLOY-VIEW VIEW OF EMPLOYEES                                         
  2 CITY                                                                
  2 NAME                                                                
  2 SALARY    (1)                                                       
  2 CURR-CODE (1)                                                       
END-DEFINE                                                              
*                                                                       
LIMIT 15                                                                
READ EMPLOY-VIEW BY CITY FROM 'DENVER'                                  
  DISPLAY CITY (IS=ON) NAME SALARY (1) CURR-CODE (1)                    
  AT BREAK OF CITY                                                      
    SKIP 1                                                              
    /*                                                                  
    NEWPAGE WHEN LESS THAN 10 LINES LEFT                        
    WRITE '****************************************'                    
      /   'SUMMARY FOR ' OLD(CITY)                                      
      /   '****************************************'
      /   '****************************************'
      /   'SUM OF SALARIES:' SUM(SALARY(1))         
      /   'AVG OF SALARIES:' AVER(SALARY(1))        
      /   '****************************************'
    NEWPAGE                                
    /*                                              
  END-BREAK                                         
END-READ                                            
END

プログラム NWPEX1 の出力 - ページ 1:

Page      1                                                  05-01-18  10:01:45
                                                                               
        CITY                 NAME           ANNUAL   CURRENCY                  
                                            SALARY     CODE                    
-------------------- -------------------- ---------- --------                  
                                                                               
DENVER               TANIMOTO                  33000 USD                       
                     MEYER                     50000 USD                       
                                                                               
****************************************                                       
SUMMARY FOR  DENVER                                                            
****************************************                                       
****************************************                                       
SUM OF SALARIES:      83000                                                    
AVG OF SALARIES:      41500                                                    
****************************************

プログラム NWPEX1 の出力 - ページ 2:

Page      2                                                  05-01-18  10:01:45
                                                                               
        CITY                 NAME           ANNUAL   CURRENCY                  
                                            SALARY     CODE                    
-------------------- -------------------- ---------- --------                  
                                                                               
DERBY                DEAKIN                     8750 UKL                       
                     GARFIELD                   6750 UKL                       
                     MUNN                       8800 UKL                       
                     MUNN                       5650 UKL                       
                     GREBBY                     9550 UKL                       
                     WHITT                      8650 UKL                       
                     PONSONBY                   5500 UKL                       
                     MAGUIRE                    4150 UKL                       
                     HEYWOOD                    3900 UKL                       
                     BRYDEN                     6750 UKL                       
                     SMITH                     39000 UKL                       
                     CONQUEST                  45000 UKL                       
                     ACHIESON                  11300 UKL                       
                                                                               
****************************************                                       
SUMMARY FOR  DERBY                                                             
****************************************

プログラム NWPEX1 の出力 - ページ 3:

-------------------- -------------------- ---------- --------                 
                                                                              
DERBY                DEAKIN                     8750 UKL                       
                     GARFIELD                   6750 UKL                      
                     MUNN                       8800 UKL                      
                     MUNN                       5650 UKL                      
                     GREBBY                     9550 UKL                      
                     WHITT                      8650 UKL                      
                     PONSONBY                   5500 UKL                      
                     MAGUIRE                    4150 UKL                      
                     HEYWOOD                    3900 UKL                      
                     BRYDEN                     6750 UKL                      
                     SMITH                     39000 UKL                      
                     CONQUEST                  45000 UKL                      
                     ACHIESON                  11300 UKL                      
                                                                              
****************************************                                      
SUMMARY FOR  DERBY                                                            
****************************************                                      
****************************************                                      
SUM OF SALARIES:     163750                                                   
AVG OF SALARIES:      12596                                                   
****************************************