- - PR -
DataGrid(DataSet)の内容をCrystalReportに表示する。
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2007-05-23 11:06
CrystalReportをはじめて1週間程度の者です。
プロジェクトのFromソースにDataGridを表示しています。 DataGridの内容をCrystalReportに表示することは可能でしょうか。 | ||||||||
|
投稿日時: 2007-05-23 11:23
DataSet など DataSource を渡してしまえば可能です。 これはアンバウンド レポートと呼ばれるタイプの手法になります。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2007-05-23 12:09
じゃんぬさん、ご解答ありがとうございます。
Form1にCrystalReportViewer1とDataGridView1を貼り付けています。 以下のようにSetDataSourceを行った場合、 CrystalReport上でのレイアウトはどのように設定できるのでしょうか。 DataSet ds = new DataSet(); DataTable dt = new DataTable(); dt.Columns.Add("col1"); dt.Columns.Add("col2"); ds.Tables.Add(dt); for (int i = 0; i < 10; i++) { ds.Tables[0].Rows.Add("123", "123"); } this.dataGridView1.DataSource = ds.Tables[0]; CrystalReport1 cr = new CrystalReport1(); crystalReportViewer1.ReportSource = cr; cr.SetDataSource(ds); | ||||||||
|
投稿日時: 2007-05-23 12:37
レイアウトは自分で設定できますので、ここで聞くようなことではないと思うのですが... 私が質問の意図を誤解しているかもしれませんが、
CrystalReports の仕組みをご存知でないように感じました。 CrystalReportViewer は ReportDocument を表示するに存在するコントロールであり、レイアウトの設定を行うコントロールではありません。 帳票のレイアウトは CrystalReports の ReportDocument (通常はビジュアル デザイナ) で設定します。 とりあえず、簡単な帳票を実際に作成してみた方がイメージが掴めると思います。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2007-05-23 13:11
じゃんぬさん、解答ありがとうございます。
私の質問が悪くて、誤解を招いてしまいました。 Crystalreportのデザインをする場合、 フィールドエクスプローラでデータソースを選択し、 カラムをレポート上にドラッグしてデザインを設定してると思います。 動的にDataTableを作成した場合は、 フィールドエクスプローラに出ないので、 カラムのドラッグができません。 そのような場合、どのようにしてデザインをするのでしょうか。 初心者で本当に申し訳ありませんが、宜しくお願いいたします。 | ||||||||
|
投稿日時: 2007-05-23 15:05
デザイン時にはスキーマ (型付 DataSet) を使用してデザインを完了させ、Report に渡す DataSet は型付でない普通の DataSet のインスタンスを渡すなんてのはどうでしょうか? フィールド数を超えていないか、あるいは式フィールドでの期待した型が一致していれば、Crystal Report Engine 的には問題なく動作するハズです。 これならばデザイン時の可読性もある程度確保できます。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2007-05-28 15:05
解答ありがとうございます。
教えて頂いた方法でできました。 |
1