WRITE TRAILER

WRITE [(rep)] TRAILER [LEFT [JUSTIFIED]] [UNDERLINED]  
  [(statement-parameters )]  
 

nX

'text' [(attributes)]

  nT 'c'(n) [(attributes)]
  x/y ['='] operand1[(parameters)]
  [SKIPoperand2 [LINES]]    

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

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

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

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


関数

WRITE TRAILER ステートメントは、ページの下にテキストまたは変数の内容を出力するために使用します。

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

処理

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

このステートメントは、エンドオブページ条件またはエンドオブデータ条件が検出されたとき、あるいは SKIPNEWPAGE ステートメントによって改ページが行われたときに実行されます。EJECT ステートメントでは実行されません。

エンドオブページ条件は、DISPLAY/WRITE ステートメントの処理が完了してから評価されます。DISPLAY/WRITE ステートメントで複数行の出力を行う場合、エンドオブページ条件になる前に物理ページのオーバーフローを起こすことがあります。

レポートが、異なるオブジェクト内のステートメントによって作成される場合、WRITE TRAILER ステートメントは、END-OF-PAGE(ページ終了)処理を行うステートメントと同じオブジェクトで使用されている場合に限って実行されます。

論理ページサイズ

トレイラ情報を正しく同一ページの下に出力するには、論理ページサイズ(セッションパラメータ PS で指定)を物理ページサイズより小さく指定します。

制限

  • WRITE TRAILER は 1 レポートにつき 1 回だけ指定できます。

  • WRITE TRAILER は特殊条件ステートメントブロック内では指定できません。

  • WRITE TRAILER はサブルーチン内では指定できません。

構文説明

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

オペランド 構文要素 フォーマット オペランド参照 ダイナミック定義
operand1   S A G N A U N P I F B D T L   G O ×
operand2 C S           N P I   B             ×

構文要素の説明:

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

複数のレポートを作成するときは、表記 (rep) を使用して、WRITE TRAILER ステートメントを適用するレポートの ID を指定できます。

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

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

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

LEFT JUSTIFIED
UNDERLINED

桁揃えおよび下線

デフォルトでは、トレーラ行は中央揃えで下線なしです。

LEFT JUSTIFIEDUNDERLINED を指定して上書きできます。

UNDERLINED を指定した場合、下線文字(デフォルトの文字またはセッションパラメータ UC で指定された文字)が、トレイラの下に行サイズ(セッションパラメータ LS)の幅だけ出力されます。

Natural では、すべての間隔およびタブ指定を適用して行を作成してから、行全体を中央揃えします。例えば、最初の要素としての 10T 表記により、中央揃えされたヘッダーは右側の 5 の位置に配置されます。

statement-parameters
ステートメントレベルでのパラメータ定義:

1 つまたは複数のパラメータをカッコで囲んで、ステートメントレベルで、つまり WRITE TRAILER ステートメントの直後に指定できます。この方法で指定した各パラメータは、以前に GLOBALS コマンド、SET GLOBALS ステートメント(レポーティングモードでのみ)、または FORMAT ステートメントで指定したパラメータを上書きします。

複数のパラメータを指定する場合は、各エントリ間に 1 つ以上の空白を配置する必要があります。エントリを 2 行のステートメント行に分割することはできません。

注意:
ここで適用されるパラメータ設定は、変数フィールドにのみ関連し、テキスト定数には影響しません。テキスト定数にフィールド属性を設定する場合は、この要素に属性を明示的に設定する必要があります(「要素(フィールド)レベルでのパラメータ定義」を参照)。

使用可能なパラメータについては、「パラメータのリスト」を参照してください(『WRITE ステートメント』ドキュメント)。

nX
nT
x/y

フォーマット表記と要素間隔:

フォーマット表記と要素間隔」(後述)を参照してください。

'text'
'c'(n)
attributes

テキスト/属性割り当て:

テキスト/属性割り当て」(後述)を参照してください。

operand1
トレイラ情報:

operand1 は、トレイラ情報として出力するフィールド(複数可)を表します。

parameters
要素(フィールド)レベルでのパラメータ定義:

1 つまたは複数のパラメータをカッコで囲んで、要素(フィールド)レベルで、つまり operand1 の直後に指定できます。この方法で指定した各パラメータは、以前にステートメントレベルGLOBALS コマンド、SET GLOBALS ステートメント(レポーティングモードでのみ)、または FORMAT ステートメントで指定した対応するパラメータを上書きします。

複数のパラメータを指定する場合は、各エントリ間に 1 つ以上の空白を配置する必要があります。エントリを 2 行のステートメント行に分割することはできません。

使用可能なパラメータについては、『WRITE ステートメント』ドキュメントの「パラメータのリスト」を参照してください。

SKIP operand2 LINES
省略される行:

SKIP を使用して、トレイラ行の下に何行か空けることができます。空ける行数(operand2)は数値定数または数値変数の内容で指定します。

注意:
SKIPWRITE TRAILER の後)は独立したステートメントでなく、常に WRITE TRAILER ステートメントの SKIP 節として解釈されます。WRITE TRAILER ステートメントの後に独立した SKIP ステートメントが必要な場合は、セミコロン(;)を使用して 2 つのステートメントを互いに区別します。

フォーマット表記と要素間隔

構文要素 説明
nX
列の間隔:

この表記により、列の間に n 個のスペースが挿入されます。

nT
タブ設定:

nT 表記により、位置 n を出力するように位置指定(タブ設定)されます。後方への位置指定はできません。

x/y
x/y 位置指定:

次の要素は最後のステートメント出力の x 行下、列 y の先頭に配置されます。y をゼロにすることはできません。同じ行で後方に位置指定することはできません。

テキスト/属性割り当て

構文要素 説明
'text' 
テキスト割り当て:

一重引用符で囲まれた文字列が表示されます。

'c'(n)
文字の繰り返し:

フィールド値の直前に、一重引用符で囲まれた文字列が n 回表示されます。

attributes
フィールド表現と色属性:

テキスト/フィールド表示にさまざまな属性を割り当てることができます。これらの属性と構文については、以下の「出力属性」で説明します。

例:

WRITE TRAILER 'TEXT' (BGR)
WRITE TRAILER 'TEXT' (B)
WRITE TRAILER 'TEXT' (BBLC)

出力属性

attributes は、テキスト表示に使用される出力属性を示します。属性は次のいずれかです。

AD=ad-value
CD=cd-value
PM=pm-value

ad-value
cd-value

上記の意味は次に示すとおりです。

ad-value、、cd-value および pm-value は、『パラメータリファレンス』ドキュメントの関連セクションで記載されている、対応するセッションパラメータ AD、、CD および PM の可能な値を示します。

コンパイラは、実際には 1 つの出力フィールドに複数の属性値を受け入れます。例えば、次のように指定できます。AD=BDIただし、この場合は最後の値のみが適用されます。示した例では、値 I のみが有効になり、出力フィールドは強調表示されます。

英数字/Unicode 定数(Natural データフォーマット A または U )の場合は、ad-value または cd-value あるいはその両方を、それぞれの前に先行する CD= または AD= なしで、指定することができます。入力した単一の値が、最初にすべての可能な CD 値に対してチェックされます。例えば、IRE の値は、高輝度表示/赤として解釈されますが、高輝度表示/右詰め/必須としては解釈されません。単一の cd-value またはad-value の前に CD= または AD= が付いた値を組み合わせることはできません。

** Example 'WTLEX1': WRITE (with TRAILER option)                        
************************************************************************
DEFINE DATA LOCAL                                                       
1 EMPL-VIEW VIEW OF EMPLOYEES                                           
  2 NAME                                                                
  2 FIRST-NAME                                                          
  2 CITY                                                                
  2 JOB-TITLE                                                           
END-DEFINE                                                              
*                                                                       
FORMAT PS=15                                                            
WRITE TITLE LEFT JUSTIFIED UNDERLINED                                   
      *TIME 3X 'PEOPLE LIVING IN BARCELONA'                             
      14X 'PAGE:' *PAGE-NUMBER                                          
SKIP 1                                                                  
*                                                                       
WRITE TRAILER LEFT JUSTIFIED UNDERLINED                                 
      / 'CITY OF BARCELONA REGISTER'                                  
*                                                                       
LIMIT 10                              
FIND EMPL-VIEW WITH CITY = 'BARCELONA'
  DISPLAY NAME FIRST-NAME 3X JOB-TITLE
END-FIND                              
END

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

09:36:09.5   PEOPLE LIVING IN BARCELONA              PAGE:      1              
-------------------------------------------------------------------------------
                                                                               
        NAME              FIRST-NAME                 CURRENT                   
                                                    POSITION                   
-------------------- --------------------   -------------------------          
                                                                               
DEL CASTILLO         ANGEL                  EJECUTIVO DE VENTAS                
GARCIA               M. DE LAS MERCEDES     SECRETARIA                         
GARCIA               ENDIKA                 DIRECTOR TECNICO                   
MARTIN               ASUNCION               SECRETARIA                         
MARTINEZ             TERESA                 SECRETARIA                         
YNCLAN               FELIPE                 ADMINISTRADOR                      
FERNANDEZ            ELOY                   OFICINISTA                         
TORRES               ANTONI                 OBRERA                             
                                                                               
CITY OF BARCELONA REGISTER                                                     
-------------------------------------------------------------------------------

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

09:37:26.0   PEOPLE LIVING IN BARCELONA              PAGE:      2              
-------------------------------------------------------------------------------
                                                                               
        NAME              FIRST-NAME                 CURRENT                   
                                                    POSITION                   
-------------------- --------------------   -------------------------          
                                                                               
RODRIGUEZ            VICTORIA               SECRETARIA                         
GARCIA               GERARDO                INGENIERO DE PRODUCCION            
                                                                               
CITY OF BARCELONA REGISTER                                                     
-------------------------------------------------------------------------------