程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> 在ASP.NET中訪問SQL 2005報表服務

在ASP.NET中訪問SQL 2005報表服務

編輯:關於ASP.NET

在ASP.NET中,有多種方法可以訪問SQL 2005的報表服務。

方法一: 通過ReportView控件

首先,安裝ReportView控件。如果你使用的是SQL 2000報表服務器,到這個目錄去找到源碼工程 C:\Program Files\Microsoft SQL Server\MSSQL\Reporting Services\Samples\Applications\ReportViewer\vb and C:\Program Files\Microsoft SQL Server\MSSQL\Reporting Services\Samples\Applications\ReportViewer \cs,然後自己去編譯。

如果你直接使用SQL 2005的報表服務器,只要安裝時選擇了work station,就會自動安裝上這個控件。不需要自己編譯了。

在你的ASP.NET工程中,新建一個web page,加入一個ReportView控件ReportViewer1。

修改ReportServerUrl和ReportPath兩個屬性:

ReportServerUrl=http://ctc-bar:81/reportserver (ctc-bar是你的報表服務器的名字,我這裡因為使用的是端口81,所以加上了:81)

ReportPath=/Barreports/EBCdetaillist (/Barreports/EBCdetaillist是你的報表所在路徑,注意最前面的/)

現在,你已經可以使用這個報表了。運行你的程序,在ReportView的位置出現了報表,和從URL訪問一抹一樣。

現在,我要對報表的輸入參數作些工作,我的報表裡有兩個時間參數,開始時間和結束時間。如果直接在文本輸入框輸入2007-1-1,非常不方便。我希望從web page上加一個日期選擇的控件來代替直接輸入日期。

這需要兩步:

1 將ShowParameterPrompts設置為false. 即關閉報表服務器提供的參數輸入區域。

2 在web page上增加START DATE和END DATE兩個日期控件,和一個VIREW REPORT的按鈕。

在VIREW REPORT按鈕的CLICK事件中,將日期控件的值用SetParameters方法傳遞給服務器。類似於

protected void ButtonViewReport_Click(object sender, EventArgs e)
{
DateTime StartDate = System.Convert.ToDateTime(TextBoxStartDate.Value);
DateTime EndDate = System.Convert.ToDateTime(TextBoxEndDate.Value);
ReportParameter[] Parameters = new ReportParameter[2];
Parameters[0] = new ReportParameter("startdate", StartDate.ToShortDateString());
Parameters[1] = new ReportParameter("enddate", EndDate.ToShortDateString());
ReportViewer1.ServerReport.SetParameters(Parameters);
}

網上這個地址有更加詳細的講解

http://www.dreams.idv.tw/~code6421/Doc/SqlRepSvc2.pdf

方法二: 通過調用SQL 2005的Web services

這種方法適合建立自己的報表解決方案,如改善報表參數的UI界面,提供漂亮的報表導航界面界面等。

具體可以參考下文

http://www.codeproject.com/sqlrs/SQLRSViewer.asp

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved