PRINT [(rep)] [NOTITLE] [NOHDR] [(statement-parameters)]
|
|||||||||||
|
|
|
nX |
|
|
'text' [(attributes)] |
|
|||||
nT |
'c'(n) [(attributes)] | ||||||||||
| / |
|
['='] operand1[(parameters)] | |||||||||
このドキュメントでは、次のトピックについて説明します。
構文図で使用されている記号については、「構文記号」を参照してください。
関連ステートメント:AT END OF
PAGE | AT TOP OF
PAGE | CLOSE
PRINTER | DEFINE PRINTER | DISPLAY | EJECT | FORMAT | NEWPAGE | SKIP | SUSPEND IDENTICAL SUPPRESS | WRITE | WRITE TITLE | WRITE TRAILER
関連機能グループ:出力レポートの作成
PRINT ステートメントは、出力をフリーフォーマットで生成するために使用します。
PRINT ステートメントは、次の点で WRITE ステートメントと異なります。
各オペランドの出力は、オペランドの長さではなく値の内容に合わせて書き込まれます。数値の先頭のゼロおよび英数字の末尾の空白は省略されます。セッションパラメータ AD では、数値を左揃えで出力するか右揃えで出力するかを定義します。AD=L の場合、数値の末尾の空白は省略されます。AD=R の場合、数値の先頭の空白は出力されます。
出力結果が現在の行サイズ(LS パラメータ)を超過した場合、出力が次の行に継続します。このとき、英数字定数、または編集マスク指定のない英数字変数の内容は、現在の行の右端の空白または英字でも数字でもない文字で分割されます。分割された値の初めの部分は現在の行に出力され、後ろの部分は次の行に出力されます。2
番目の部分の先頭の空白は削除されます。この結果、空の行は非表示になります。
他のすべてのオペランドについては、値全体が次の行に出力されます。
オペランド定義テーブル:
| オペランド | 構文要素 | フォーマット | オペランド参照 | ダイナミック定義 | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
operand1 |
S | A | G | N | A | U | N | P | I | F | B | D | T | L | G | O | ○ | × | ||
構文要素の説明:
| 構文要素 | 説明 |
|---|---|
(rep) |
レポート指定:
表記 範囲
プリンタファイルが PC として Natural に定義されている場合、レポートは PC にダウンロードされます。「例 2」を参照してください。 Natural で作成される出力レポートの形式を制御する方法については、『プログラミングガイド』の「レポートフォーマットおよび制御」を参照してください。 |
NOTITLE |
デフォルトページタイトルの省略:
Natural は、
|
NOHDR |
列ヘッダーの省略:
|
statement-parameters |
ステートメントレベルでのパラメータ定義:
1 つまたは複数のパラメータをカッコで囲んで、ステートメントレベルで、つまり この方法で指定した各パラメータは、以前に ここで適用されるパラメータ設定は、変数フィールドにのみ関連し、テキスト定数には影響しません。テキスト定数にフィールド属性を設定する場合は、この要素に属性を明示的に設定する必要があります(「要素(フィールド)レベルでのパラメータ定義」を参照)。 以下の項目も参照してください。 |
nX, nT, / |
フィールドの位置指定、テキスト、属性の割り当て
下記の「フィールドの位置指定、テキスト/属性の割り当て」を参照してください。 |
| PRINT ステートメントで指定可能なパラメータ | 指定(S = ステートメントレベル、E = 要素レベル) | |
|---|---|---|
AD |
属性定義 | SE |
AL |
出力の英数字長 | SE |
CD |
カラー定義 | SE |
CV |
制御変数 | SE |
DF |
日付フォーマット | SE |
DL |
出力の表示長 | SE |
DY |
ダイナミック属性 | SE |
EM |
編集マスク | SE |
EMU |
Unicode 編集マスク | E |
FL |
浮動小数点仮数長 | SE |
MC |
マルチプルバリューフィールド数 | S |
MP |
レポートの最大ページ数 | S |
NL |
出力の数値長 | SE |
PC |
ピリオディックグループ数 | S |
PM |
Print Mode | SE |
SG |
符号の位置 | SE |
ZP |
ゼロ出力 | SE |
各セッションパラメータの詳細については、『パラメータリファレンス』を参照してください。
DEFINE DATA LOCAL 1 VARI (A4) INIT <'1234'> /* Output END-DEFINE /* Produced * /* --------- PRINT 'Text' VARI /* Text 1234 PRINT (PM=I) 'Text' VARI /* Text 4321 PRINT 'Text' (PM=I) VARI (PM=I) /* txeT 4321 PRINT 'Text' (PM=I) VARI /* txeT 1234 END
|
|
|
nX |
|
|
'text'[(attributes)] |
|
||
nT |
'c' ( n ) [(attributes)] | |||||||
| / |
|
['='] operand1 [(parameters)] |
| 構文要素 | 説明 |
|---|---|
'text' |
テキスト割り当て:
一重引用符で囲まれた文字列が表示されます。 PRINT 'EMPLOYEE' NAME 'MARITAL/STATUS' MAR-STAT |
'c'
(n) |
文字の繰り返し:
フィールド値の直前に、一重引用符で囲まれた PRINT '*' (5) '=' NAME |
'=' |
フィールドヘッダーの後に位置するフィールド内容:
フィールドの前に配置した場合は、等号 PRINT '=' NAME |
operand1 |
出力するフィールド:
|
parameters |
要素(フィールド)レベルでのパラメータ定義:
1 つまたは複数のパラメータ(上記の表を参照)をカッコで囲んで、 この方法で指定した各パラメータは、以前にステートメントレベルで、または 複数のパラメータを指定する場合は、各エントリ間に 1 つ以上の空白を配置する必要があります。エントリを 2 行のステートメント行に分割することはできません。 以下の項目も参照してください。 |
attributes は、テキスト表示に使用される出力属性を示します。属性は次のいずれかです。
|
|
||
|
|
ad-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 'PRTEX1': PRINT
************************************************************************
DEFINE DATA LOCAL
1 EMPLOY-VIEW VIEW OF EMPLOYEES
2 NAME
2 FIRST-NAME
2 CITY
2 JOB-TITLE
2 ADDRESS-LINE (2)
END-DEFINE
*
LIMIT 1
READ EMPLOY-VIEW BY CITY
/*
WRITE NOTITLE 'EXAMPLE 1:'
// 'RESULT OF WRITE STATEMENT:'
WRITE / NAME ',' FIRST-NAME ':' JOB-TITLE '*' (30)
WRITE / 'RESULT OF PRINT STATEMENT:'
PRINT / NAME ',' FIRST-NAME ':' JOB-TITLE '*' (30)
/*
WRITE // 'EXAMPLE 2:'
// 'RESULT OF WRITE STATEMENT:'
WRITE / NAME 60X ADDRESS-LINE (1:2)
WRITE / 'RESULT OF PRINT STATEMENT:'
PRINT / NAME 60X ADDRESS-LINE (1:2)
/*
END-READ
END
EXAMPLE 1:
RESULT OF WRITE STATEMENT:
SENKO , WILLIE : PROGRAMMER
******************************
RESULT OF PRINT STATEMENT:
SENKO , WILLIE : PROGRAMMER ******************************
EXAMPLE 2:
RESULT OF WRITE STATEMENT:
SENKO
2200 COLUMBIA PIKE #914
RESULT OF PRINT STATEMENT:
SENKO 2200 COLUMBIA
PIKE #914
** Example 'PCPIEX1': PRINT to PC
**
** NOTE: Example requires that Natural Connection is installed.
************************************************************************
DEFINE DATA LOCAL
01 PERS VIEW OF EMPLOYEES
02 PERSONNEL-ID
02 NAME
02 CITY
END-DEFINE
*
FIND PERS WITH CITY = 'NEW YORK' /* Data selection
PRINT (7) 5T CITY 20T NAME 40T PERSONNEL-ID /* (7) designates
/* the output file
/* (here the PC).
END-FIND
END