- PR -

Crystal Reportsでの集計方法

投稿者投稿内容
Lem
会議室デビュー日: 2004/10/19
投稿数: 10
投稿日時: 2006-04-21 05:02
お世話になります。

Visual Studio(C#)
Crystal Reports for Visual Studio.Netにて、
以下のテーブルの内容をサブレポートに表示しています。

[ID] [Size1] [Size2] [Sum1] [Sum2]
1 3 10 10 11
2 3 10 10 11
3 4 10 10 11
4 4 10 12 10
※[Size1]は1つのサブレポートにいくつの値(種類)が出るかは不定

その際の集計に関して、わからない点があります。
集計の条件としては、
”[Size1]ごとの[Sum1]の合計をサブレポートの最下行に横に並べたい”
イメージとしては、
[3] [4]
20 22
が上記テーブル内容を一覧表示したものの下に表示したいのです。

そこで、グループでの集計を実行し、[Size1]が変更した直下行に表示することはできるのですが、
イメージのように一箇所にまとめて表示する方法がわかりません。

実現する方法をどなたかアドバイスいただけませんでしょうか。
よろしくお願いいたします。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-04-21 07:25
引用:

Lemさんの書き込み (2006-04-21 05:02) より:

そこで、グループでの集計を実行し、[Size1]が変更した直下行に表示することはできるのですが、
イメージのように一箇所にまとめて表示する方法がわかりません。


そのタイミングであれば、式フィールドを使って自前で集計するしかないかな。
オーバーレイも考えてみたんですが、詳細セクションを跨げないですからね。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
Lem
会議室デビュー日: 2004/10/19
投稿数: 10
投稿日時: 2006-04-21 08:08
引用:

じゃんぬねっとさんの書き込み (2006-04-21 07:25) より:

そのタイミングであれば、式フィールドを使って自前で集計するしかないかな。
オーバーレイも考えてみたんですが、詳細セクションを跨げないですからね。




じゃんぬねっとさん、ありがとうございます。
式フィールドを利用することも考えたのですが、
[Size1]にいくつの値が入るか不定であることから、
条件式がうまく書けずに断念いたしました。
自分の実力の無さが情けない・・・

別にSQLで集計したものをデータとして持ってきた方が良いかな・・・とも思っていますが、
それも妄想だけで実現できるかは、まだわかりません。

PS.質問と関係ありませんが、時々、ブログにお邪魔しています。
なかなか話題に入れず、ROMですが(^_^;))

[ メッセージ編集済み 編集者: Lem 編集日時 2006-04-21 08:09 ]
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-04-21 08:36
引用:

Lemさんの書き込み (2006-04-21 08:08) より:

別にSQLで集計したものをデータとして持ってきた方が良いかな・・・とも思っていますが、


そうですね、ストアドか何かで一時テーブルを作る方が素直でしょうね。

引用:

それも妄想だけで実現できるかは、まだわかりません。


そのあたりは大丈夫だと思います。
というより、ストアド プロシージャを使って書けない表は CrystalReports でも書けません。(;^^)

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
NZ-000
会議室デビュー日: 2005/10/31
投稿数: 7
投稿日時: 2006-04-21 18:02
横槍失礼します。

クロス集計を使えば一発でできそうですが、どうでしょう。
Lem
会議室デビュー日: 2004/10/19
投稿数: 10
投稿日時: 2006-04-22 16:27
>じゃんぬねっとさん
ありがとうございます。
現在、SQLを組んでいます。

でも、よくよく考えてみると・・・
サブレポートに、どうやって一時テーブルの情報を組み込むのか、わからない・・・
この辺も込みで、調べてみます。

>NZ-000さん
横槍だなんて。私としては、役に立ちそうな情報であれば、
大変ありがたいと思います。

クロス集計の機能は使ったことが無いので、
簡単な例で試してみます。

ありがとうございます。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-04-24 06:28
引用:

Lemさんの書き込み (2006-04-22 16:27) より:

でも、よくよく考えてみると・・・
サブレポートに、どうやって一時テーブルの情報を組み込むのか、わからない・・・
この辺も込みで、調べてみます。


一時テーブルは同じコネクションでなければ参照できません。
注意するところはそこだけですね。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-04-24 06:31
あ、それと「クロス集計」ってデータベース側ではなく、レポート側のクロス集計でしょうか?
レポート側のクロス集計はレイアウトが柔軟に変更できないので、敬遠がちです。(;^-^)

# バージョンによって違うかもしれませんが...

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌

スキルアップ/キャリアアップ(JOB@IT)