應用XML技術實現報表列印方案的設計與實現

2021-04-01 02:39:02 字數 2907 閱讀 4775

筆者為了能夠快速實現簡單的報表列印,設計了下面的方案。編寫乙個通用列印頁面,要列印報表將引數寫入乙個

xml文件,呼叫頁面

xmlreport.aspx?report=

報表名,即可完成報表的製作

3.1

建立自定義的

xml報表檔案

xml主要用來描述列印報表的名稱,資料**,格式,分頁列印等資訊,具體標籤可自己定義,下面是筆者針對會員管理系統報表列印所制定的

xml文件:

memberlist.xml

<?

xmlversion

="1.0"

encoding

="utf-8"

?>

<

xmlreport

>

<

page

>

<

title

>member information

title

>

<

>

>

page

>

<

report

>

<

title

>member list

title

>

<

tablename

>memberlist

tablename

>

<

sqldataconnection

>data source=localhost;user id=sa;password=;initial catalog=xmlreport;

sqldataconnection

>

<

oledbconnection

>

oledbconnection

>

<

sql>select memberid, prefix+'. '+ firstname+' '+ surname as [member name],cityortown,state,postcode, '$'+convert(varchar(12),feespaid) as fees from members;

sql>

<

pagesize

>10

pagesize

>

report

>

<

report

>

<

title

>member summary

title

>

<

tablename

>membersummary

tablename

>

<

sqldataconnection

>data source=localhost;user id=sa;password=;initial catalog=xmlreport;

sqldataconnection

>

<

oledbconnection

>

oledbconnection

>

<

sql>select count(memberid) as [member count], '$'+convert(varchar(12),sum(feespaid)) as [fees total] from members;

sql>

<

pagesize

>

pagesize

>

report

>

xmlreport

>

標籤說明:

page title:

報表標題

應用樣式表定製報表

sqldaraconnection:

資料來源連線字串,資料提供者為

sql server

oledbconnection:

資料來源連線字串,資料提供者為

oledb

sql:

選取報表資料的

sql語句

pagesize:

分頁列印,每頁顯示的記錄條數

讀者還可以自定義一些更精確的標籤來控制報表。

3.2

建立通用列印頁面

page_load

時讀取要列印的報表名

xmlfile = request.querystring["report"].tostring() + ".xml";

private

void bindreports()

dataset ds = new dataset();

//從report.xml讀取資料源資訊

if(dtreport.rows[i]["sqldataconnection"].tostring() != string.empty)

else

if(dtreport.rows[i]["oledbconnection"].tostring() != string.empty)

//用通用頁面顯示報表

dg.datasource = ds;

dg.databind(); }}

} catch }

3.3

建立定製列印頁面

需要在if

應用xslt

樣式表可以製作出專業的報表樣式,為方便製作,在此推薦使用

xmlspy

帶的stylesheet

利用XML實現通用WEB報表列印

利用xml實現通用web報表列印 盧彥 方案適用性 1.遠端資料列印。需要列印的資料並不在本地,必須進行遠端讀取。2.需要精確控制列印效果,包括頁面格式,分頁,附加條目,等。3.出於安全性考慮,不能直接連線到資料庫。方案原理 其實原理很簡單,通過xml強大的自定義功能,我們便能方便的自定義出我們所有...

利用XML實現通用WEB報表列印

專欄作品 利用xml實現通用web報表列印 盧彥 方案適用性 1.遠端資料列印。需要列印的資料並不在本地,必須進行遠端讀取。2.需要精確控制列印效果,包括頁面格式,分頁,附加條目,等。3.出於安全性考慮,不能直接連線到資料庫。方案原理 其實原理很簡單,通過xml強大的自定義功能,我們便能方便的自定義...

利用XML實現通用WEB報表列印

盧彥 方案適用性 1.遠端資料列印。需要列印的資料並不在本地,必須進行遠端讀取。2.需要精確控制列印效果,包括頁面格式,分頁,附加條目,等。3.出於安全性考慮,不能直接連線到資料庫。方案原理 其實原理很簡單,通過xml強大的自定義功能,我們便能方便的自定義出我們所有需要的格式控制標籤,在伺服器端進行...