過去の桐井戸端BBS (桐ver.8)
22375 複合レポートの単票部に伝票部の集計を表示させたい ステラ 2003/09/16-17:50
いつも参考にさせてもらっています。

桐ver8(sp表示なし)を使用しています。
単一の結合表を元にレポートを作りたいのですが、ヘッダ部に制約を受けるため複合レポートを使っています。
レポートには伝票部とヘッダにあたる単票部とがあります。
伝票部は表示したい明細数が多いため縦2段組にしてあります。
単票部には、タイトル(ラベル)、グループの値(テキスト)、明細件数(集計域)があり、
グル−プごとの伝票明細と集計をしたいのですが以下のようにうまくいきません。
何かよい対処法があれば教えてください。

1 ファイル属性の表の操作で単一化を指定しないで行うと、集計は明細件数を正しく表示するのですが、
印刷は明細件数の枚数分を印刷してしまいます。
プレビューでも当然、明細数が多く2ページにわたるような場合は明細件数分ページを送らないと
ページ表示の確認ができなく大変不便です。

2 過去ログを参考にファイル属性の表の操作で単一化を指定しリンクを設定すると印刷はグループごとに1部になりますが、
集計は、元表を単一化した固定数になってしまいグループごとの明細件数を反映しません。

3 単票部に新たに伝票域を作り、明細部を設定しないでフッタの集計行のみを表示させようとしましたが
明細が表示しきれないというようなエラーが出ます。
これを回避するため明細部の行高を0にしたらエラーは出なくなりましたが、集計は行えません。
 ・新たに作った伝票域は表示されますが、その中のフッタにあたる集計行は印字属性を含め表示されません。
(伝票域の表示は罫線を入れてみて確認しました。)
 ・集計の設定の仕方が悪いかも。
 フッタの集計域のオブジェクトの属性/集計/集計種別:中計
   同             /ソース:#件数([項目])
 伝票域のオブジェクトの属性/伝票/詳細/グループ設定:中計([項目])

4 単票部に新たに表領域を作り一覧表部分を表示せず集計を行わせ表示させようとしましたが、
一覧表部分がないというようなエラーが出て目的を達成できませんでした。

補足
・明細数は200ぐらいになる場合があります。
・現在は1の方法で、印刷枚数を1に設定してしのいでいます。(明細部が1ページに収まらない分は2の方法にて印刷しています。
:集計の出る1ページ目を1の方法で集計のいらない2ページ目を2の方法でという具合です)

・メインの伝票部にフッタを追加して集計させると、最終段のフッタの部分にグループに応じた正しい明細件数が集計されます。

22380 Re:複合レポートの単票部に伝票部の集計を表示させたい 佐田 守弘 2003/09/17-09:00
記事番号22375へのコメント
ステラさん
質問内容を一言でまとめると、複合レポートで、伝票オブジェクトの集計値を、
伝票オブジェクトの外(レポート上のテキストオブジェクト)に印刷したいという意味だと理解します。
レポートの対象表と伝票オブジェクトの対象表については書かれていませんが、
前後の文脈から推定するに、同じ表だと理解して宜しいですね。

結論的には次の様な方法で行えるはずです。

1)リンク関係
レポート側に設定した対象表は、単一化の設定を行い、グループ値になる項目で伝票オブジェクトとのリンクを設定する。

2)伝票オブジェクトの集計
集計は伝票オブジェクトのフッタに集計オブジェクトを設けて、ここで行います。
 >・メインの伝票部にフッタを追加して集計させると、最終段のフッタの部分
 >にグループに応じた正しい明細件数が集計されます。
と書かれているので、この方法はお分りかと思います。
ポイントは、この場所で印刷するのではなくて、集計値を変数に代入するだけにします。つまり、
 #計算(#代入(&件数,#件数([<項目名>]),"")
の計算式を設定します。
これで「#件数」で求めた明細部の件数が、組込変数「&件数」に代入されます。

2)変数値の印刷
レポートのヘッダ(伝票オブジェクトの外)で、&件数の値を印刷するには、
テキストオブジェクトを作って、ここにこの変数をソースとして設定します。
なお、印刷の順序としては、明細部の印刷前に明細部を集計した値を印刷する事になるのですが、
これについては伝票オブジェクトのグループの設定で、
「ページヘッダ、フッタへの集計値の印刷」の設定で調整をして下さい。

佐田守弘(KS-00119)
22395 Re:複合レポートの単票部に伝票部の集計を表示させたい ステラ 2003/09/18-12:24
記事番号22380へのコメント
佐田さん、ありがとうございます。
説明がうまく伝わるか自信がなかったため長々と書いてしまいました。

> #計算(#代入(&件数,#件数([<項目名>]),"")
>の計算式を設定します。
>これで「#件数」で求めた明細部の件数が、組込変数「&件数」に代入され
>ます。
>2)変数値の印刷
>レポートのヘッダ(伝票オブジェクトの外)で、&件数の値を印刷するには、
>テキストオブジェクトを作って、ここにこの変数をソースとして設定します。

まだまだ関数や変数には不慣れで、このような使い方があるとはとっても勉強になりました。
そのとおり設定したら思っていたものになりました。

ところで、
>なお、印刷の順序としては、明細部の印刷前に明細部を集計した値を印刷
>する事になるのですが、これについては伝票オブジェクトのグループの設定
>で、「ページヘッダ、フッタへの集計値の印刷」の設定で調整をして下さい。
とありますが、バージョンのせいなのかどうなのかわかりませんが、この設定の場所がわかりません。
とりあえず現状は思ったようにできているようですが、どのような機能なのか教えてもらえませんか。

よろしくお願いします。

22403 Re:複合レポートの単票部に伝票部の集計を表示させたい 佐田 守弘 2003/09/18-22:56
記事番号22395へのコメント
ステラさん
「ページヘッダ、フッタへの集計値の印刷」は、桐ver.9から登場した機能かも
知れません。以前のバージョンで見た記憶がないので、なかったかとも思います。
管理人さんが過去ログ整理のためにも、バージョンを記載するようにとの事なので使用バージョンをお知らせ下さい。

この機能は、グループ集計を行うレポートで、集計値をどのタイミングで取得するかを指定するものです。
詳細はヘルプファイルに記載されていますが、
参考までにその内容を以下に引用させて頂きます。(改行位置などは見やすく変更)

佐田守弘(KS-00119)

==================引用開始===============================================
・ヘッダ、フッタとも最終グループの値
  ページヘッダとページフッタとも、ページの最終レコードが属するグループの
  集計値を印刷します。
・ヘッダ、フッタとも先頭グループの値
  ページヘッダとページフッタとも、ページの先頭レコードが属するグループの
  集計値を印刷します。
・ヘッダは先頭、フッタは最終グループの値
  ページヘッダにはページの先頭レコードが属するグループの集計値を印刷し、
  ページフッタにはページの最終レコードが属するグループの集計値を印刷します。
・集計グループ終了時に印刷
  ページの最終レコードがグループの最終レコードとなるときに、ページヘッダと
  ページフッタに集計値を印刷します。
・集計グループ開始時に印刷
  ページの先頭レコードがグループの先頭レコードとなるときに、ページヘッダと
  ページフッタに集計値を印刷します。
・開始時にヘッダ、終了時にフッタを印刷
  ページの先頭レコードがグループの先頭レコードになるときにページヘッダに
  集計値を印刷し、ページの最終レコードがグループの最終レコードになるときに
  ページフッタに集計値を印刷します。
==================引用終了===============================================
22418 Re:複合レポートの単票部に伝票部の集計を表示させたい ステラ 2003/09/19-17:04
記事番号22403へのコメント
佐田さん、ありがとうございました。

使用しているのは、桐ver.8でそれ以外(sp等)の表示はありません。

伝票オブジェクトのグループ設定ではそのような画面が出てこないので、以降に追加された機能だと思います。
22423 Re:桐のバージョン 悲しげ 2003/09/19-19:53
記事番号22418へのコメント
どもっ、ステラさん

>使用しているのは、桐ver.8でそれ以外(sp等)の表示はありません。

本当にsp1よりも前のV8ですか?

だとすれば、初版はかなりバグが多かったと思いますので、
ぜひspを上げるべきです。最新はsp7です。

桐V8のsp番号は、上部メニューバーから
ヘルプ(H)→バージョン情報(A)で見ることができます。(一番上の行)

22483 Re:桐のバージョン ステラ 2003/09/25-16:34
記事番号22423へのコメント
こんにちは 悲しげさん

>桐V8のsp番号は、上部メニューバーから
>ヘルプ(H)→バージョン情報(A)で見ることができます。(一番上の行)
ここを確認して報告しました。


>本当にsp1よりも前のV8ですか?
>だとすれば、初版はかなりバグが多かったと思いますので、
>ぜひspを上げるべきです。最新はsp7です。
ありがとうございます。
V9を考えていますが・・・

戻る