在ASP.NET下使用水晶報表一(零點起步)

來源:互聯網
上載者:User
asp.net|水晶報表
摘要如下:

1。第一步是添加新項CrystalReport1

2。在CrystalReport1.rpt面頁右鍵選擇:”資料庫”à”添加/刪除資料庫”出現下面對話方塊:

然後點開OLE DB(ADO)的加號,將彈出選擇資料庫的對話方塊

其中”項目資料”裡面的”當前串連”顯示的就是OLE DB(ADO)的串連,這樣就可以將表添加到右邊的”選定的表”中了(切記:不要既從”OLE DB” 中選表或命令又從”當前串連”中選,如果你用了資料集,也是一樣的道理,否則全提示出”登陸失敗”的錯誤!)

3。欄位資料管理器裡面”資料庫欄位”裡把欄位直接拖到CrystalReport.rpt裡面了.布置好布局.

4。回到WebForm1.aspx頁面,選擇控制項CrystalReportViewer將其放到頁面上。

5。代碼
using CrystalDecisions.Shared;

using CrystalDecisions.CrystalReports.Engine;

在WebForm1.aspx.cs的Form_Load裡面添加代碼:

TableLogOnInfo logOnInfo = new TableLogOnInfo();

              ReportDocument rpdMy0= new ReportDocument();

              logOnInfo.ConnectionInfo.ServerName = "NNN";

              logOnInfo.ConnectionInfo.Password="dong";

              logOnInfo.ConnectionInfo.DatabaseName="Lab";

              logOnInfo.ConnectionInfo.UserID = "sa";

 

              String path = Server.MapPath("CrystalReport2.rpt");

              rpdMy0.Load(path);



              rpdMy0.Database.Tables[0].ApplyLogOnInfo(logOnInfo);

              CrystalReportViewer1.ReportSource = rpdMy0;

其中:

TableLogOnInfo類是: 提供屬性,以便檢索和設定表串連選項.它有一個串連的屬性ConnectionInfo,用來設定與資料庫的串連.如上面的ServerName等.產生一個報表文檔對象將前面我們做好的那個CrystalReport1.rpt賦給它.在這裡要注意的是Database屬性!然後把報表對象做為CrystalReportViewer1的資料來源.

或者,獲得資料庫的方法改為直接從資料庫獲得DataSet

using System.Data.SqlClient;
using System.Collections.Specialized;

string strConn=System.Configuration.ConfigurationSettings.AppSettings["DB"].ToString();
   using (SqlConnection conn = new SqlConnection(strConn))
   {
       SqlDataAdapter da = new SqlDataAdapter(strSQL,conn);//strSQL是SQL語言"select * from dbo.table1"
       DataSet ds=new DataSet();
       da.Fill( ds);
       CrystalReport1 cr1 = new CrystalReport1();
       cr1.SetDataSource( ds);
       CrystalReportViewer1.ReportSource = cr1;

   }


using CrystalDecisions.Shared;

using CrystalDecisions.CrystalReports.Engine;

在WebForm1.aspx.cs的Form_Load裡面添加代碼:

TableLogOnInfo logOnInfo = new TableLogOnInfo();

              ReportDocument rpdMy0= new ReportDocument();

              logOnInfo.ConnectionInfo.ServerName = "NNN";

              logOnInfo.ConnectionInfo.Password="dong";

              logOnInfo.ConnectionInfo.DatabaseName="Lab";

              logOnInfo.ConnectionInfo.UserID = "sa";

 

              String path = Server.MapPath("CrystalReport2.rpt");

              rpdMy0.Load(path);



              rpdMy0.Database.Tables[0].ApplyLogOnInfo(logOnInfo);

              CrystalReportViewer1.ReportSource = rpdMy0;

其中:

TableLogOnInfo類是: 提供屬性,以便檢索和設定表串連選項.它有一個串連的屬性ConnectionInfo,用來設定與資料庫的串連.如上面的ServerName等.產生一個報表文檔對象將前面我們做好的那個CrystalReport1.rpt賦給它.在這裡要注意的是Database屬性!然後把報表對象做為CrystalReportViewer1的資料來源.

或者,獲得資料庫的方法改為直接從資料庫獲得DataSet

using System.Data.SqlClient;
using System.Collections.Specialized;

string strConn=System.Configuration.ConfigurationSettings.AppSettings["DB"].ToString();
   using (SqlConnection conn = new SqlConnection(strConn))
   {
       SqlDataAdapter da = new SqlDataAdapter(strSQL,conn);//strSQL是SQL語言"select * from dbo.table1"
       DataSet ds=new DataSet();
       da.Fill( ds);
       CrystalReport1 cr1 = new CrystalReport1();
       cr1.SetDataSource( ds);
       CrystalReportViewer1.ReportSource = cr1;

   }



using CrystalDecisions.Shared;

using CrystalDecisions.CrystalReports.Engine;

在WebForm1.aspx.cs的Form_Load裡面添加代碼:

TableLogOnInfo logOnInfo = new TableLogOnInfo();

              ReportDocument rpdMy0= new ReportDocument();

              logOnInfo.ConnectionInfo.ServerName = "NNN";

              logOnInfo.ConnectionInfo.Password="dong";

              logOnInfo.ConnectionInfo.DatabaseName="Lab";

              logOnInfo.ConnectionInfo.UserID = "sa";

 

              String path = Server.MapPath("CrystalReport2.rpt");

              rpdMy0.Load(path);



              rpdMy0.Database.Tables[0].ApplyLogOnInfo(logOnInfo);

              CrystalReportViewer1.ReportSource = rpdMy0;

其中:

TableLogOnInfo類是: 提供屬性,以便檢索和設定表串連選項.它有一個串連的屬性ConnectionInfo,用來設定與資料庫的串連.如上面的ServerName等.產生一個報表文檔對象將前面我們做好的那個CrystalReport1.rpt賦給它.在這裡要注意的是Database屬性!然後把報表對象做為CrystalReportViewer1的資料來源.

或者,獲得資料庫的方法改為直接從資料庫獲得DataSet

using System.Data.SqlClient;
using System.Collections.Specialized;

string strConn=System.Configuration.ConfigurationSettings.AppSettings["DB"].ToString();
   using (SqlConnection conn = new SqlConnection(strConn))
   {
       SqlDataAdapter da = new SqlDataAdapter(strSQL,conn);//strSQL是SQL語言"select * from dbo.table1"
       DataSet ds=new DataSet();
       da.Fill( ds);
       CrystalReport1 cr1 = new CrystalReport1();
       cr1.SetDataSource( ds);
       CrystalReportViewer1.ReportSource = cr1;

   }


相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。