2012-03-19 3 views
0

事前に作成したCrystal Reportsをレポートプロジェクトにインポートしています。データベース呼び出しからデータを取り込みたいので、プログラムでデータソースを変更できます。Crystal Reportから厳密に型指定されたデータセットスキーマを構築するための無料のツールはありますか?

多くの表には、多くのフィールドがあります。私はこれらのデータセットを手動で構築する必要はありません。 Crystal Reportsのメタデータを調べ、そこから強く型付けされたADO.NETデータセットを生成するツールはありますか?それは私に多くの時間を節約します。

+0

データベースコールからレポートを取り込みたいとします。中間データセットにデータをロードする必要がありますか?または、データベースからレポートを直接取り込むことができますか? –

+0

私はデータベースから切り離したいので、configファイルの接続文字列からデータソースを簡単に制御できます。 –

+0

私はあなたが接続文字列からデータソースを制御できるようにするソリューションを投稿しました。それで十分でないかどうか私に教えてください。 –

答えて

0

私が望むようなメカニズムがあるようにそれは見えません。

2

中間データセットを使用する必要がないため、レポートがプログラムによって指定するデータソースを変更することができます。レポートの各テーブルを調べ、データソースを更新するだけです。

はコードの下を参照してください:

から撮影
using System; 
using System.Windows.Forms; 
using CrystalDecisions.CrystalReports.Engine; 
using CrystalDecisions.Shared; 

namespace WindowsApplication1 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void button1_Click(object sender, EventArgs e) 
     { 
      ReportDocument cryRpt = new ReportDocument(); 
      TableLogOnInfos crtableLogoninfos = new TableLogOnInfos(); 
      TableLogOnInfo crtableLogoninfo = new TableLogOnInfo(); 
      ConnectionInfo crConnectionInfo = new ConnectionInfo(); 
      Tables CrTables ; 

      cryRpt.Load("PUT CRYSTAL REPORT PATH HERE\CrystalReport1.rpt"); 

      crConnectionInfo.ServerName = "YOUR SERVER NAME"; 
      crConnectionInfo.DatabaseName = "YOUR DATABASE NAME"; 
      crConnectionInfo.UserID = "YOUR DATABASE USERNAME"; 
      crConnectionInfo.Password = "YOUR DATABASE PASSWORD"; 

      CrTables = cryRpt.Database.Tables ; 
      foreach (CrystalDecisions.CrystalReports.Engine.Table CrTable in CrTables) 
      { 
       crtableLogoninfo = CrTable.LogOnInfo; 
       crtableLogoninfo.ConnectionInfo = crConnectionInfo; 
       CrTable.ApplyLogOnInfo(crtableLogoninfo); 
      } 

      crystalReportViewer1.ReportSource = cryRpt; 
      crystalReportViewer1.Refresh(); 
     } 
    } 
} 

http://csharp.net-informations.com/crystal-reports/csharp-crystal-reports-dynamic-login.htm

関連する問題