- - PR -
OracleでCrystalReport
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2002-08-20 10:06
はじままして しろと申します。
以前から当掲示板を拝見させていただき 勉強させてもらってます。 以前書き込みのあったCrystalReportの利用方法をもとに AccessMDBを使ったテストデータでは無事作成することができました。 今回書き込みさせてもらったのはデータベースをORACLEにした場合 どうしてもエラーがでてしまいます。 まず現在のわたしの開発環境ですが、 OS :WindowsXPProfessional 言語:ASP.NET(VB) IIS:Ver.5.0 データベース:OracleをODBC経由で使用中 ログオンできませんとエラー表示がでるので CrystalReportViewer1.LogOnInfo.Item("テーブル名").ConnectionInfo.Password = "データベース接続用パスワード" とコードを追加しましたが「指定された引数は、有効な値の範囲内にありません。」とでます。 LogOnInfo.Item("テーブル名")の部分が問題だと思いいろいろ試してみましたが すべてだめでした。 ぜひアドバイスお願いいたします。 |
|
投稿日時: 2002-08-20 18:40
はじめまして、JKです。
私も同様の問題で悩みましたが、以下の方法で解決できました。 DataSetを使用している場合、参考になると思います。 (1) デザイン時にReportViewerのReportSourceを設定しない。 (2) ReportSourceを実行時に設定するよう、次のコードを記述する。 // データセットのフィル dataAdapter.Fill(targetDataSet); // CrystalReportオブジェクトの生成 targetReport rep = new targetReport(); // CrystalReportへDataSetを連結する rep.SetDataSource(targetDataSet); // ReportViewerのReportSourceを設定する viewer.ReportSource = rep; エラーが発生する原因は、DataSetが空の状態で参照される ためで、Fillメソッドを実行した後データのバインドを 実行する必要があるようです。 |
|
投稿日時: 2002-08-21 15:25
さっそくの回答ありがとうございます。
ODBC接続で試してたのですが、DataSetでの使用ということでしたので DataSetを作成して試してみました。 ここでまた質問になってしまうのですが現在VBでコード作成しております。 JKさんのC#での記述、 // CrystalReportオブジェクトの生成 targetReport rep = new targetReport(); がどうしてもVBで記述できません。 MSDNで調べても // クラス定義の先頭に、次のように記述します。 Public CrystalReport1 oRpt = new CrystalReport1(); とJKさんと同様の記述しか見当たりません。 VBでの記述様式をご存知の方、ぜひ教えてください。 よろしくお願いします。 |
|
投稿日時: 2002-08-21 15:57
Oracleというタイトルのため見逃していたのですが(笑)、
おそらく、しろさんが直面されている問題は、以下の過去書き込みを参照していただければ、解決するのではないかと思います。 http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=1572&forum=7 VBでの生成手順の流れを記述しています。コードが書いてないので、上記の流れが終わった後のサンプルコードを以下に上げておきます。参考になれば幸いです。 Protected WithEvents CrystalReportViewer1 As , _ CrystalDecisions.Web.CrystalReportViewer Protected WithEvents cachedCrystalReport11 As test.CachedCrystalReport1 Private Sub Page_Load(ByVal sender As System.Object, ByVal e As , _ System.EventArgs) Handles MyBase.Load CrystalReportViewer1.ReportSource = cachedCrystalReport11 CrystalReportViewer1.LogOnInfo.Item("データベース , _名").ConnectionInfo.Password = "実際のデータベースパスワード" End Sub _________________ -------------------------------------- ネットビルド 小田原貴樹 odahara@netbuiuld.jp -------------------------------------- |
|
投稿日時: 2002-08-21 16:23
うりゅうさん、JKさんどうもありがとうございます。
無事帳票の表示ができました。 もともと、うりゅうさんの過去の書き込みを元に検証してたのですが 7ステップ中の最終ステップでReportSourceへの関連付けよりも LogOnInfoの宣言が先であろうと考えてLogOnInfoのコードを先に書いて いたのが間違いの元でした。(コードを前後に書き換えることはまったく 頭になかったです。) CrystalReportを利用し始めて4日目にしてやっとWeb上での確認が出来ました。 これから実際のデザイン部分について検証して使いこなせるようにして行きます。 ありがとうございました。 **** 最後に前の質問の自己解決 **************************************** C#での記述、 // CrystalReportオブジェクトの生成 targetReport rep = new targetReport(); VBでの記述の場合は、 Dim rep As New Test.targetReport() でオッケーでした。 |
1