巧用动态宏实现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 Server与Oracle、DB2三种数据库,为你选择数据库提供一些参考。
开放性
SQL Server
只能在Windows 上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面应用,NT se ......
table
Num createDate
---------------------------------
(空) 20090901
(空) 20090901
  ......
为了大家更容易理解我举出的SQL语句,本文假定已经建立了一个学生成绩管理数据库,全文均以学生成绩的管理为例来描述。
1.在查询结果中显示列名:
a.用as关键字:select name as '姓名' from students order by age
b.直接表示:select name '姓名' from students order by age
2.精确查找:
a.用 ......