- PR -

Crystal Reports(VS.net添付版)で(控)の出力について

1
投稿者投稿内容
tatsu
会議室デビュー日: 2005/07/12
投稿数: 4
投稿日時: 2005-07-12 16:49
お世話になります。
以前、クリスタルレポートにて(控)を出力するプログラムを作成しました。
条件として伝票番号で改ページ、9行明細を出力したら改ページ
正式帳票と(控)を印刷し、交互に出力させる感じです。

そのときの手法として
1)1.rptを作成(帳票イメージ無し)
※グループ名フィールドを"伝票番号"で作成しグループヘッダを登録する。
2)2.rptを作成(帳票イメージあり)
帳票の名称はレポートタイトルを表示
3)1.rptにメインレポートとして詳細a_Sectionに2.rptをサブレポートとして埋め込むそのときのサブレポートの名称を「帳票」とし、さらに詳細b_Sectionに2.rptをサブレポートとして埋め込み「帳票(控)」とする。
※2つのサブレポートともにフィールドリンクとして"伝票番号"を指定する。

でメインプログラムより
'メインレポートにデータをセット
cr.SetDataSource(dtm) 'dtmは伝票番号が重複しないデータ
'サブレポートにデータをセット()
cr.OpenSubreport("帳票").SetDataSource(dts) 'dtsは帳票出力用データ
'サブレポートにデータをセット
cr.OpenSubreport("帳票(控)").SetDataSource(dts)

上記のように作成しました。
2.rptをサブレポートにしたのはメンテナンス性を高めるためですが、データをそれぞれセットしている状態です。

同じような帳票を作成することになりそうなのですが
より単純ですっきりしたプログラムが出来る方法を教えて頂けないでしょうか?
よろしくお願いします。


[ メッセージ編集済み 編集者: tatsu 編集日時 2005-07-12 16:52 ]
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-07-12 17:00
うーん、説明を読み違えてるかもしれませんが。

話を聞く限りでは、非同期にならないように、
サブレポートにしておく必要があると感じます。
なので、結構スッキリしている方かと。

(控え) の印書処理は、CrystalReports ではなく、
ActiveReports の方が向いてるかもしれませんね。



_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
tatsu
会議室デビュー日: 2005/07/12
投稿数: 4
投稿日時: 2005-07-12 17:19
じゃんぬねっとさん
ありがとうございます。

結構すっきりしているんですね。
実際始めて作ったCrystalReportsだったのでサブレポートの意味も分からず使用していました。

実際、やり方はいろいろあると思いますが他の方は(控)をどのように出力されているんでしょうね。いろいろ検索してみましたがヒットしませんでした。
ActiveReports は使いやすそうですが、残念なことに開発使用対象外ですね。

同じ方式で作成することにします。
プログラムの統一性もありますしね。
ありがとうございました。
1

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