听说MS SQL 2005自带报表功能,于是我测试了一下,还算比较好用,所以我就录了一个用存储过程来写报表的例子。由于测试过程当中没有语音,所以我在这里讲解一下。
使用的存储过程如下(录象中到最后我更改了一下存储过程):
使用的数据库是MS SQL 2000的Northwind数据库,表是orders。
if exists(select * from sysobjects where name='procTest' and xtype='P')
drop proc procTest
go
create proc procTest
@CustomerId varchar(20)
as
if @CustomerId='*'
select * from Orders
else
select * from Orders where CustomerID=@CustomerId
可以用exec procTest 'VINET' 或者exec procTest '*'来测试
之后建立数据库报表项目
1、建立数据源
2、建立新的报表
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)3、建立数据集,这里我采用了特殊的方式,因为报表设计界面需要列出字段,所以我将存储过程中需要输出的字段select语句先在数据集运行一下,那么就得出了纪录集的所有字段,而不用自己一个个添加。
4、建立报表的参数CustomerID,设置默认值为*,和存储过程当中判断语句一致。
5。、更改数据中的语句:="exec procTest '" & Parameters!CustomerID.Value & "'"
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)6、基本上完成。
在演示中不知道如何按F5出现报表无法现实,但是在预览中是正常的,大概原理能明白就可以了。关于报表匿名浏览的问题网上有介绍,这里就不多说了。