易截截图软件、单文件、免安装、纯绿色、仅160KB

巧用动态宏实现SQL中传递重复参数

润乾报表可以通过SQL检索和复杂SQL生成数据集。当SQL中需要传入多个参数时,要在设计器中通过 配置-参数 定义相应的参数,然后再把SQL中需要参数的地方替换成?,最后还要在SQL编辑器中添加对应?的参数。这样当SQL中有多少个问号,我们就需要添加多少个参数。当SQL中用到的参数比较少时,操作起来还比较方便。但当业务比较复杂,需要往SQL中传入多个重复的参数时,就需要在SQL编辑器的 参数标签页中反复多次添加多个重复参数。此时,工作量是相当大的。本文将给出一种巧用动态宏实现往SQL中传递参数的方法,该方法会大大减少重复添加相同参数的工作量,下面简单介绍一下该方法。
例如,需要往SQL中重复传递两个参数,开始时间和结束时间。
首先,在报表中分别定义两个参数,arg1,arg2,其中arg1代表开始时间、arg2代表结束时间,如下图
然后,定义两个宏,名称:macro1,macro2,设置类型:动态宏,设置如下图
然后,在SQL中需要参数的地方引用宏macro1和macro2,不需要设置数据集中的参数,即可实现传递参数的功能,如下图
这样就实现了使用动态宏传递参数到SQL中,而不需要在SQL编辑器的参数标签页反复添加重复的参数了。
动态宏传递参数到SQL中,减少了用户制作报表时不必要的重复繁琐的工作,为用户设计和制作复杂报表带来了很大的方便。
引自:润乾报表知识库
相关文章:润乾报表中如何实现多值查询; split函数及其特殊用法;横向分页报表的标题切分
其他相关内容: 润乾 ; 商业智能BI联盟 ;  报表软件 ;Java报表商业智能解决方案web报表的扩展功能


相关文档:

sql 2005 存储过程分页 java 代码

 create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',         
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列 ......

SQL习题1

第一题:
为管理业务培训信息,建立3个表:
S(S#,SN,SD,SA)S#,SN,SD,SA分别代表学号,学员姓名,所属单位,学员年龄
C(C#,CN)C#,CN分别代表课程编号,课程名称
SC(S#,C#,G) S#,C#,G分别代表学号,所选的课程编号,学习成绩
(1)使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名?
(2) 使 ......

SQL流水号生成语句

table
     
        Num        createDate
---------------------------------
      (空)          20090901
      (空)          20090901
      ......

常用的SQL语句总结

 现在发现SQL语句确实是太强大了,以后遇到问题要尽量先好好思考下,不要按照最笨的方法来做!
1.从tblFaultDetailTemp表中,找到ID=14的项,并将所列出的四个字段的值拷贝到tblFaultDetail表中
Insert into tblFaultDetail(Code,FileType,FaultCode,FaultRect) select Code,FileType,FaultCode,FaultRect from tblF ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号