過去の桐井戸端BBS (桐ver.8)
15301 請求書の様式での集計をレポートで設定するには 佐藤 2002/03/02-09:02
みなさん初めまして、佐藤といいます。
桐は、会話処理のみ使用できる初心者です。よろしくお願いします。

販売先  商品    数量   単価     金額
A     イ      15  2450   36750
A     イ      23  2450   56350
A     ロ       9  2250   20250
B     イ      10  2450   24500
B     ロ      13  2250   29250

このような表から、行集計を行いレポート印刷を行いたいのですが、
どのように設定すればいいのでしょうか。

レポートのできあがりは次のようです。

        請求書
  A様
                   佐藤
商品 数量   単価    金額  請求額(千円未満切捨)
イ  38   2450  93100  93000
ロ   9   2250  20250  20000
          計        113000
              消費税    5650
              請求額  118650

グループの設定は、大計を販売先、中計を商品としました。
数量と金額のオブジェクト属性は、集計種別を中計、ソースを#合計([○○])
請求額は集計種別を中計、ソースを#切り捨て( #合計( [請求額] ) , -4 )
として、ここまでは何とか出来たのですが、販売先毎の合計(商品毎に千円未満を切り捨てて合計したい)の
設定がわかりません。
ページヘッダの欄に、集計種別を大計、ソースを#合計( [請求額] )とすると
当たり前かもしれませんが、千円未満を切り捨てる前の請求額が合計されます。
中計の計算結果(千円未満切り捨て)を大計で合計できる方法を教えてください。
よろしくお願いします。

15305 Re:レポートの集計の設定について 悲しげ 2002/03/02-12:51
記事番号15301へのコメント
どもっ、佐藤さん
レポート上での集計は限界がありますから、このような場合は行集計等に
加工したデータを別表に書き出した上で、その別表を使って印刷させるしかないような気がします。
と云う訳で、以下、私ならこうすると云う例。
元表は1:販売先、2:商品の順で並べ替えされていることを前提とします。
[請求額]なる項目も存在するとします。
行集計で、例えば中計だけを指定します。中計項目は[商品]です。
集計行の設定は
  販売先 #項目値
  商品  #項目値
  数量  #合計
  単価  #項目値
  金額  #合計
その上で行集計を実行させ、続いて[Home]キーを押します(あるいは上部
メニューバー/表示/集計行のみ)。こうすると集計行だけの表示になりますから、
ここで、[請求額]項目について、次の置換を実行します。
  #切り捨て([金額],-4)
置換条件に設定しておくと次回の操作が楽だと思います。
次に、この状態で別表に書き出します。(書き出し条件での「同名表が存在する時」は当然「上書き」です)
レポート印刷は、ここで書き出した表を対象にします。
この時、販売先毎の合計値は、既に加工済の[請求額]を使うだけのことになります。

こう書くと面倒そうかもしれませんが、操作自体は2度目以降はさほど面倒ではありません。
以下の4行程くらいです。
  1)行集計条件指定
  2)集計行のみ指定
  3)置換条件指定
  4)書き出し(表)条件指定
  5)レポート印刷(対象表は別表になっている)

何でしたら「履歴」に登録することもありです、覚えると便利ですよ。

15307 Re:レポートの集計の設定について 佐藤 2002/03/02-20:53
記事番号15305へのコメント
悲しげさんありがとうございます。
別表に書き出すしかないのですね。

そこで、
>1)行集計条件指定
>2)集計行のみ指定
>3)置換条件指定
>4)書き出し(表)条件指定
>5)レポート印刷(対象表は別表になっている)
を実行したのですが、
レポートの対象表は、書き出した別表名「請求データ」となっているはずなのに、
元の表の項目に対する数値(行集計する前)が印字されてしまいます。

元の表を閉じて、レポートをプレビューすると、別表の「請求データ」に対するレポートが表示されます。
ですが、元の表を閉じてしまうと、1)から5)を履歴登録することが出来なくなってしまいます。

行集計のみの表示状態で、レポート印刷を実行できればいいのでしょうが、
ファンクションキーで「レポート」が選択できないようになっています。
この解決方法は、ないでしょうか。よろしくお願いします。
15308 Re:レポートの集計の設定について 悲しげ 2002/03/02-21:20
記事番号15307へのコメント
どもっ、佐藤さん
>レポートの対象表は、書き出した別表名「請求データ」となっているはずなのに、
>元の表の項目に対する数値(行集計する前)が印字されてしまいます。

それはおそらく#15305で書いた
>2)集計行のみ指定
或いは
>続いて[Home]キーを押します(あるいは上部メニューバー/表示/集計行のみ)。
>こうすると集計行だけの表示になりますから、
を行わなかったからだと推測されます。
あるいは、レポート定義で別表を指定したつもりが実は元表のままだったとか?


>元の表を閉じて、レポートをプレビューすると、別表の「請求データ」に対するレ
>ポートが表示されます。ですが、元の表を閉じてしまうと、1)から5)を履歴登
>録することが出来なくなってしまいます。

履歴登録は1)〜4)まででよいです(これは元表についてだけ行います)。
5)は履歴化する必要もないでしょう。
でも、上記の解決が先です。
うまく行かない処理を履歴登録してもしょうがないですから。(^^;)

15311 Re:レポートの集計の設定について 佐藤 2002/03/03-07:55
記事番号15308へのコメント
悲しげさんありがとうございます。

私の説明が足りませんでした。
>1)行集計条件指定
>2)集計行のみ指定
>3)置換条件指定
>4)書き出し(表)条件指定
>5)レポート印刷(対象表は別表になっている)

4)で別表として書き出したあと、そのまま元の表でファンクションキー?
C−F3キーでレポートを選択すると、元の表のデータがレポートに反映されてしまうと言うことです。
桐ファイルパレットを開いてパレットからレポートを表示させると、ちゃんと書き出した表の内容がレポート表示されました。

ということは、元の表を開いたままで、別の表を対象にしたレポートを印字するための履歴登録は無理というか、
普通の人はそんなことを考えないですよね。
わかりました。ありがとうございました。
今後ともよろしくお願いします。m(._.)m

15317 Re:レポートの集計の設定について 悲しげ 2002/03/03-23:04
記事番号15311へのコメント
どもっ、佐藤さん、
ははあ、なるほど
>1)行集計条件指定
>2)集計行のみ指定
>3)置換条件指定
>4)書き出し(表)条件指定
>5)レポート印刷(対象表は別表になっている)
このように5)まで続けて書いてしまったのは、私の配慮不足でした。
4)までで止めて、5)の過程は別に書けばよかったですね。<(_ _)>

rptの元来の対象表がb.tblであったとしても、a.tblから当該rpt印刷を指定したら
(臨時的に)a.tblについて印刷させることもできるからですね。
ところで、こう云ってしまうと、改めてなぜa.tblの行集計状態で
レポート印刷ができないのかとの疑問が再燃するかもしれませんが、
それは仕様らしいってことにしておきましょう(^^;)。
厳密に云うと、行集計状態ってのはこれ自身別表らしいのです。
だからレポート印刷の対象表にできないとか。(でも、表の一覧表印刷では使えるぞ)(^^;)

>ということは、元の表を開いたままで、別の表を対象にしたレポート
>を印字するための履歴登録は無理というか、普通の人はそんなことを
>考えないですよね。

う〜ん、履歴と云うのは、基本的にひとつの表において登録するもので
すが、途中で編集表を切り替えることもできない訳ではありません。
この場合、5)の過程までひとつの履歴に登録したいのなら、
ファイルパレットなり上部メニューバーやツールバーから、書き出しした例の別表をオープンして、
そこからレポート印刷させると云うやり方とかが考えられます。
ただし、その後は別表を閉じた上で、再度編集表を元表に戻しておいた方がいいとかのこともありまして、
履歴と云うのはあまり複雑な行程には向かないように思います
(幾つかの制限も含めてこんがらがってしまいやすいので)。

戻る