印刷ファイル

出力ストリーム ファイルを開くときに指定される PRINT 属性は、そのファイルが印刷ファイルであることを示します。ファイルが印刷ファイルとして宣言されている場合、ファイルを開くときに LINESIZE オプションおよび PAGESIZE オプションを指定して、出力行の最大幅およびページあたりの最大行数を指定することができます。組み込み関数の PAGENO および LINENO を使用して、印刷ファイルの現在の行番号および現在のページ番号にアクセスすることもできます。

LINENO 組み込み関数を使用すると、PRINT 属性で開かれた出力ストリーム ファイルの現在の行番号にアクセスできます。行番号は出力ストリームに行が書き込まれるたびに 1 ずつ増えていきます。新しい行は、次の項目が行の列 1 に書き込まれるように先頭に位置指定されます。

PAGENO 組み込み関数を使用すると、PRINT 属性で開かれた出力ストリーム ファイルの現在のページ番号を読み取ることができます。現在のページ番号は PAGENO 擬似変数を使用して設定できます。書き込む行の行番号がページ サイズよりも 1 大きくなるか、SKIP オプションによるファイルの位置指定でページ サイズを超える値が指定されると、ENDPAGE 条件が通知されます。

新しいページが書き込まれるたびに、行番号が 1 にリセットされ、ページ番号が 1 ずつ増えていきます。

ENDPAGE 条件の ON-unit で新しいページを書き込まないと、新しいページが書き込まれるまで行番号が無限に増えていきます。ENDPAGE 条件は、書き込む行の行番号がページ サイズよりも 1 大きくなったときにのみ通知されます。

新しいページは、PUT 文の PAGE オプション、PAGE 形式項目、および ENDPAGE 条件のデフォルトの ON-unit でのみ書き込まれます。

Open PL/I では、PRINT 属性を持つストリーム ファイルに対して 8 列ごとにタブ ストップが設定されます。