Version 4.2.6
 —  Statements  —

NEWPAGE

 

EVEN [IF] TOP [OF] [PAGE]

NEWPAGE [(rep)]

IF

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

Dieses Dokument behandelt folgende Themen:

Eine Erläuterung der in dem Syntax-Diagramm verwendeten Symbole entnehmen Sie dem Abschnitt Syntax-Symbole.

Verwandte Statements: 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

Gehört zur Funktionsgruppe: Erstellen von Ausgabe-Reports


Funktion

Das Statement NEWPAGE dient dazu, einen Seitenvorschub auszulösen und eine neue Seite zu beginnen. NEWPAGE bewirkt außerdem, dass etwaige AT END OF PAGE- und WRITE TRAILER-Statements ausgeführt werden. Ist eine Seitenüberschrift-Verarbeitung aber nicht ausdrücklich definiert (WRITE TITLE, WRITE NOTITLE oder DISPLAY NOTITLE), erhält jede neue Seite eine Standardüberschrift mit Datum, Uhrzeit und laufender Seitennummer.

Anmerkungen:

  1. Der Seitenvorschub wird dann nicht vorgenommen, wenn das NEWPAGE-Statement ausgeführt wird, sondern nur, wenn ein anschließendes, eine Ausgabe erzeugendes Statement ausgeführt wird.
  2. Wird kein NEWPAGE-Statement verwendet, so wird der Seitenvorschub automatisch in Abhängigkeit von der mit dem Profil-/Session-Parameter PS definierten Seitenlänge gesteuert.

Seitenanfang

Syntax-Beschreibung

Operanden-Definitionstabelle:

Operand Mögliche Struktur Mögliche Formate Referenzierung erlaubt Dynam. Definition
operand1 C S         N P I                 ja nein

Syntax-Element-Beschreibung:

(rep)
Report-Spezifikation:

Mit der Notation (rep) kann ein bestimmter anderer Report angegeben werden, auf den sich das Statement NEWPAGE beziehen soll.

Es kann ein Wert von 0 bis 31 oder ein logischer Name, der mit einem DEFINE PRINTER-Statement zugewiesen wurde, angegeben werden.

Falls mit (rep) nichts anderes angegeben wird, bezieht sich das NEWPAGE-Statement auf den ersten Report (Report 0).

Informationen darüber, wie Sie das Format eines mit Natural erstellten Ausgabe-Reports steuern, siehe Steuerung der Ausgabe von Daten im Leitfaden zur Programmierung.

EVEN IF TOP OF PAGE Mit dieser Option bewirken Sie, dass das NEWPAGE-Statement einen Seitenvorschub (mit entsprechender AT TOP OF PAGE- und Seitenüberschrift-Verarbeitung) auslöst, auch wenn unmittelbar vorher bereits ein Seitenvorschub erfolgt ist.
WHEN LESS THAN operand1 LINES LEFT Mit dieser Option bewirken Sie, dass das NEWPAGE-Statement ausgeführt wird, wenn auf der aktuellen Seite weniger als operand1 Zeilen übrig sind. Der interne Zeilenzähler orientiert sich hierbei am Wert des Profil-/Session-Parameters PS.
WITH TITLE title-definition Diese Option können Sie verwenden, um auf der generierten neuen Seite eine Überschrift auszugeben. Für die title-definition gilt dieselbe Syntax wie für das Statement WRITE TITLE, außer dass die SKIP-Klausel in einem NEWPAGE WITH TITLE title-definition-Statement nicht erlaubt ist.

Seitenanfang

Beispiel

** 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                                                

Ausgabe des Programms NWPEX1 - Seite 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                                                    
****************************************                                       

Ausgabe des Programms NWPEX1 - Seite 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                                                             
****************************************                                      

Ausgabe des Programms NWPEX1 - Seite 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                                                   
****************************************                                     

Seitenanfang