回答箱 No.87-3: データの変わり目に横罫線を引きたい

質問箱目次へ戻る       質問箱 No.87へ戻る
No.87-03 データの変わり目に横罫線を引きたい 早瀬 壮一 1998年12月
No.203
質問箱No.87(1998年11月号)の回答-03
     SET;S;M;1;250;3;30;;;            /*罫線用の行を確保するため設定を変更*/
  ページに空き行があることが前提です。1ページ全部に罫線を引くことも考えると、予備行はページの半分必要です。ページの行数を見るため、1ページ目を呼びます。
  そのページ行数を調べ、そこから" 4行差し引いた数が実質的な行数で、その行の半分を予備行とします。
      G;検索結果/1;LET X1=STATUS(1,5)
      SET;;;3;%((X1-4)/2);;;
  この予備行設定でWORKバインダーを作ります。
  データページの表に1列ダミー列をデータの件数が入るだけの桁で作ります。
      IC/P;WORK;WORK;T;4;N;Y;
  その列の項目を「N」とでもしましょう。MPUで1を@Nに入れます。
      MPU;検策結果;;1=@N;E;;
  この列を「執筆者」をキーにACMで加算します。
      ACM;検索結果;@執筆者;;@N:@N;;;;
  「N」の列に執筆者毎に順番の番号がつきます。この番号の1の上に罫線を引けば、目的が達せられます。そんため、「N」列を項目参照列にします。
      INFO/P;WORK;WORK;@;C;@N;Y;
  あとはページを通したDRL-Rで、「N」列の1となっているものの上だけ横線をひきます。
      DRL/P;WORK;WORK;R;@1;Y;
  1ページ目(次ページ表示)のH行だけDRで消します。あとはバインダーWORKのダミー列を削除します。
      G;1;DR;H;;P;*;DC/P;WORK;WORK;@N;;Y;
  これでデータの変わり目に罫線は入ったのですが、罫線が均等に入っているわけではありませんからページの最終行が不揃いです。これを揃えないと気持ち好くありません。そこですべての行にナンバー付けをしたいのですが、罫線には数字が入らないのでナンバーがつきません。どうしたら罫線行にナンバーが付けられるか。ここが苦心のしどころです。(と思案していたら、PUCの月例会で入川さんから、SIZEを使えばよいと指摘されてはっと気づきました。SETで予備行を0にしてSIZEで元の桁を指定すれば行が揃うのです。うっかりしていました)。
      SET;;;3;0;;;
      SIZE;WORK;LET X1=STATUS(1,2);%X1;検策結果/D;
    @NUMの項目名が1の行に罫線が引かれた画面
戻る