LANSAでは同時に8つまでのレポートを作成できます。すべてのレポート定義コマンドには、FOR_REPORTパラメータが関連付けられています。このパラメータの省略値は1で、どのレポートに行の定義が関連付けられているかを示します。1~8のいずれかの値を指定できます。

さらに、この8通りのファイルに対応して、REPnPAGEという「特殊」フィールドがあります。これはページ番号を印字するために使います。ただし、「n」は処理対象ファイルの番号を表します。

したがって、前節の例を次のように修正すれば、ページ番号を頭書きに埋め込むことができます。

     GROUP_BY    NAME(#ACCOUNT) FIELDS(#COMP #DIV #DEPT 
            #EXPEND #REVNU)
DEF_HEAD    NAME(#HEADING) FIELDS(#COMP #REP1PAGE)
            TRIGGER_BY(#COMP *OVERFLOW)
DEF_LINE    NAME(#DETAILS) FIELDS(#DIV #DEPT
            #EXPEND #REVNU)
 
SELECT      FIELDS(#ACCOUNT) FROM_FILE(ACCOUNTS)
PRINT       LINE(#DETAILS)
ENDSELECT
ENDPRINT

実際に2ページ分のレポートを作成すると次のようになります。

 
       会社 01    ページ    1                                   
                                                                 
        部門          課              支出       収入            
          1           ADM              400       576             
          1           MKT              678        56             
          1           SAL              123      6784             
          2           ADM               46        52             
          2           SAL              978       456             
          3           ACC              456       678             
          3           SAL              123       679             
  
       会社 02    ページ    2                                   
                                                                 
        部門          課              支出       収入            
          1           ACC              843       400             
          1           MKT               23         0             
          1           SAL              876        10             
          2           ACC                0        43             
 
処理対象ファイルが1つだけの場合、そのファイル番号は1になるので、「REP1PAGE」を使ってページ番号を印字しています。

  • No labels