- - PR -
ASP.netでのクリスタルレポートのデータセット
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-07-13 12:54
はじめまして。
現在、visual studio 2005 を使ってASP.netの開発を行っています。 プログラム側で動的な条件で Dataset を生成し、それをクリスタルレポートに渡したいのですが、どうすればいいのか分かりません。 基本的なことですが、 ご教授のほど、よろしくお願いいたします。 | ||||||||
|
投稿日時: 2006-07-13 13:15
出力したい ReportDocument クラスのインスタンスから、 SetDataSource メソッドで充填した DataSet を渡します。 DataSet を充填する方法は、ご存知だと思いますので割愛します。 ご存知でない場合は、MSDN ライブラリにサンプルがありますので、そちらをご覧ください。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-07-13 14:43
さかもとともうします。
http://www.hirano.cc/cgi-bin/cr/yybbs.cgi? こちらと同じご質問でしょうか? 違っていたらすいません。 | ||||||||
|
投稿日時: 2006-07-13 15:41
ご返答ありがとうございます。
じゃんぬねっと様
SetDataSource メソッド が使えないです。 「SetDataSourceはcrystalreportsのメンバではありません。」というエラーがでてしまいます。 サンプルコードは以下になるのですが、どこが悪いかお分かりなればご教授下さい。 よろしくお願いいたします。 '----------------------------------- Imports System.Data.SqlClient Partial Class crystalreports1 Inherits System.Web.UI.Page Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Dim strSQL As String Dim report As crystalreports1 Dim cn As New SqlConnection("Server= ;Initial catalog= ;Integrated Security=SSPI;") cn.Open() 'SQL文の生成 strSQL = "" strSQL = strSQL & "SQL文" Dim cmd As New SqlCommand(strSQL, cn) Dim dr As SqlDataReader = cmd.ExecuteReader() 'ここでレコードセットを引き渡したいのですが report.SetDataSource = dr とすると 「SetDataSourceはcrystalreports1のメンバではありません。」 というエラーがでてしまいます。 dr.Close() cn.Close() End Sub End Class '------------------------------- さかもと様。 そちらも私が書き込みしました。 初心者なもので分からないことだらけですが、よろしくお願いいたします。 | ||||||||
|
投稿日時: 2006-07-13 16:29
SetDataSource メンバは、K さんも書かれたように メソッド ですよね。 プロパティのように利用するのは、おかしくはないでしょうか? また、渡そうとしているのは DataSet のインスタンスではないですよね? dr、つまり SqlDataReader のインスタンスを渡そうとしていますよね?
しかし、コンパイル エラーのメッセージがこれになっているのは不可解です。 上記で指摘したことが理由であれば、おそらく別のメッセージになるハズですから... ReportDocument.SetDataSource メソッド で良いと思うのですが... うーん、"メンバではありません" となると... 'crystalreports1' は、どの型のクラスから継承されたものですか? _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-07-14 09:33
解決しました!
じゃんぬねっと様に教えていただいたことを自分なりにいろいろ調べ、 CrystalReportSource1.ReportDocument.SetDataSource(DataSet) とすると出来ました! 皆様いろいろありがとうございました。 | ||||||||
|
投稿日時: 2006-07-14 09:47
解決できたようで、私も嬉しいです。 やはり、SetDataSource メソッドを呼び出す型が間違っていたのですね。
とは書いていたのですが、ReportSource にぶらさがっているとは... やはり、メンバ関連で躓いた時に最初に見るべきは '型' ですね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 |
1