全球旧事资料 分类
自定义报表使用存储过程问题
使用储过程作为报表数据源
自定义报表虽然提供了灵活的编程接口,但使用比较复杂。我们提供了另外一种组织复杂数据源的方法:在数据源语句中直接调用存储过程。这种方法的优点是无须其他编程语言,也不必去学习自定义报表那些令人头晕的接口,使用简单;缺点是只能通过单一字符串提供条件,这会限制存储过程的执行效率和程序设计的灵活性。调用存储过程语法
withpocedureprocedure
ametemptable
ame说明:withpocedure关键字,说明当前数据源取自存储过程procedure
ame存储过程名称,必须temptable
ame存储过程生成的临时表名,必须例28:withproceduresa_moveSaleDetailtempdbsa_tempupdate’存储过程设计规范
被调用的存储过程有且必须只有一个字符串参数,该参数接收条件字符串(如果报表没有定义条件项则该参数为空字符串),该参数应留出足够的长度以接收条件字符串;存储过程最终必须生成临时表,临时表名是在调用时指定的哪个。使用存储过程举例
1在数据库创建存储过程例28CREATEPROCEDURESa_MoveSaleUpdate条件参数chrWherevarchar1000ASDeclarechrsqlvarchar2000删除已经存在的临时表Ifexistsselect
amefromtempdbsysobjectswhere
amesa_tempupdateDroptabletempdbSa_tempUpdate生成临时表setchrsqlselecti
totempdbsa_tempupdatefromsalebillvouchi
erjoi
salebillvouchso

fsalebillvouchssbvidsalebillvouchsbvid加上条件ifltrimrtrimchrwheresetchrsqlchrsqlwherechrwhreeexecchrsqlgo2.创建“销售统计表”,直接在SQL视图中书写调用存储过程语句如图:
3.保存报表,设置格式和条件。
fr
好听全球资料 返回顶部