CrystalReportViewerとCrystalReportSourceを使用してアプリケーションに.rptファイルをロードして表示しています。Crystal Reportの接続を動的に変更する
私が持っている状況はこれです:
は、人は自分のアプリケーションの外にCrystalレポートを作成し、私はその後、私のアプリケーションでその.RPTファイルを使用してデータベースAにそのデータソースを設定すると言うが、私はそれをバインドする必要があります別のデータベース(テーブル構造とカラム名に関しては元のものと同じですが、別のユーザ名とパスワードを使用して異なる接続文字列を使用します)。 C#でどうすればいいですか?
現在、私は使用してレポートをロードします。
this.CrystalReportSource1.ReportDocument.Load(reportsSubfolder + report.ReportFileName);
//it is here that I need to change the connection data of the report.
こんにちはダスティ...助けてくれてありがとう。上記のコード行を実装し、私自身もいくつかの研究を行った。ので、私のコードはhereis:ここ ます。private void AssignConnectionInfo(ReportDocumentをドキュメント、ConnectionInfo crConnection) {foreachの (document.Database.TablesでCrystalDecisions.CrystalReports.Engine.Table crTable) { – suzi167
はコードです - 申し訳ありませんあまりにもポストを直撃早期の前に: ます。private void AssignConnectionの(ReportDocumentをドキュメント、ConnectionInfo crConnection) {foreachの (document.Database.TablesでCrystalDecisions.CrystalReports.Engine.Table crTable) { CrystalDecisions.Shared.TableLogOnInfo tableLogonInfo = crTable.LogOnInfo。 tableLogonInfo.ConnectionInfo = crConnection; crTable.ApplyLogOnInfo(tableLogonInfo); CrystalReportViewer1.ReportSource = document; CrystalReportViewer1.RefreshReport(); } crConnectionには、正しい値が渡されます。 – suzi167
ところでフォーマットはあまり良くありません...タグや何かのようにメッセージをフォーマットする方法はありますか? – suzi167