質問箱目次へ戻る | 質問箱 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の行に罫線が引かれた画面 |