我是用报表专家设计报表的,在数据一栏里点击ado然后点开数据库连接后,里面只有表和视图,没有存储过程,应该在哪里选择存储过程呢?
我直接在命令中写上我的存储过程,如果不写参数,就显示不出字段。如果写参数就固定死了,怎么处理呢。查了下网上的资料,说把存储过程当数据源以后,报表会自动按存储过程的台数生成参数,按照
http://dev.csdn.net/develop/article/22/22152.shtm提供的方法,并不起作用啊,存储过程还是按默认值得到记录集,参数不起作用。
千孔衣朋友说:1。选择存储过程作为数据源
2。存储过程所需参数要求立刻赋值(赋值后存储过程才返回数据集)
3。存储过程所需自动成为报表参数字段
4。给参数字段赋应该的值返回希望得到的数据集到第二步我都能明白,到第三步就不太明白了。存储过程所需自动成为报表参数字段???比如,我用存储过程返回一个记录集,接单日期在2005-03-01至2005-03-31之间的,但返回的这个记录集中我并不需要接单日期这个字段。我在存储过程中使用两个参数,一个是开始日,一个是终止日,这样如何处理呢。各位大侠帮帮我吧我的msn:[email protected]

解决方案 »

  1.   

    CREATE PROCEDURE sp_存储过程测试
    @khmc nvarchar(40),
    @datefrom datetime,
    @dateto datetime,
    @zdr nvarchar(30)AS
    select 客户名称,接单日期,制单人,制单日期 from TREX_Works
    where 客户名称=@khmc and  (CONVERT(VARCHAR(10),接单日期,20) Between @datefrom AND @dateto) and 制单人=@zdr
    GO
    这是我用来测试的存储过程,在建水晶报表时,命令中我是这样写的:
    sp_存储过程测试 '扬子江实业','2004-02-01','2005-03-31','吴世华'
    我按照上面的网址提供的办法,但参数不起作用,不知为什么。这样情况怎么处理呢。还有就是
    我在报表中,并不需要接单日期这个字段,那是不是就不能这样写了。该如何动态传递参数呢。焦急中。。