参数使用小技巧

简介:

在报表开发过程中,我们经常会用参数对数据进行过滤查询,具体的实现方式通常是在sql语句中where部分定义好针对哪个字段进行过滤,之后参数模板将不同的值传递给这个字段进行数据查询,返回不同的结果集供报表展现使用。常规的参数使用在教程文档中已经有介绍,这里不做赘述,小编今天只给大家分享两个一般人不知道的小技巧,能够提高报表开发效率及灵活性:

  • 数值为空查询全部数据
  • 动态参数(宏)怎么用

技巧一:参数值为空时怎么查询出全部的数据

在这里我们避免被组织发现(好怕怕)抓紧时间直接跳过画表样,建数据集,等等,开始说重点。首先看一下通常的查询数据集sql的设置,如下图:162_1
162_2
其中,数据集sql中一个?代表一个参数对应一个字段名称,这样为了保证初次展现结果页面有数据就必须要要给参数赋默认值,而我们想要的是参数为空时查询全部数据,此时就需要在原有的参数设置基础上应用一个小技巧 –“or ? is null”,应用后数据集sql及参数设置如下:
162_3
162_4
修改后 2个 ?对应同一个字段且数据集参数中2个参数表达式必须一致,且与sql语句中?顺序对应,实际的意思就是,两个问号都作用于员工姓名字段。这样简简单单两步修改后,就阔以实现参数为空时查询全部数据了。

掌握了这个小技能以后,我们接下来再看另一个参数使用的小技巧:

技巧二: ${参数名}的用法,实例如下:

参数模板中选择要查询的数据表及对应字段,主表进行对应数据表数据的呈现。
162_5
相信大家看到这个效果图并不陌生,无非就是选择参数查询过滤,此处与以往不同的是,我们这里并非是针对固定的某个数据表的数据进行过滤筛选,而是选择不同的数据表进行呈现。

实现此效果的关键设置如下:

数据集中sql语句的设置
162_6
与通常数据集sql的写法不同的是我们这里并没有固定写死要查询的数据表及字段,而是使用了两次${参数名}来代替原本要写的字段名称和数据表名。${参数名}的用法是参数的一种特殊用法,经常在报表中动态地进行表达式的替换,快速实现动态执行语句的拼接。

同时,为了便于操作,这种用法也常常与参数模板结合使用。

回顾总结

然后…..然后….. ,关于参数使用的小技巧我们先分享到这里,我们来回顾一下其中不为人知的秘密和操作:

1.润乾中参数的标识符

【知识点】标识符为问号(?),应用时参数定义注意参数个数顺序要与?对应。

2.参数为空查询全部数据

【知识点】应用 or ? is null

3.${参数名}

【技巧】相当于占位,可以对sql语句的任何一部分进行替换,乃至整个sql语句定义。

至此,关于参数使用小技巧的分享就完了,get了这个小技巧 ,做表的工作是不是越来越轻松了。
快来加入润乾大家庭,get更多快速简便的报表制作方式吧。

相关文章
|
6月前
|
Java
参数
在Java中,形式参数是函数或方法的参数。形式参数是在定义函数或方法时指定的变量,它们的作用是接收函数或方法调用时传递的实际参数的值。形式参数和实际参数是不同的,形式参数是在函数或方法内部使用的,而实际参数是在函数或方法调用时传递的值。
38 1
|
3月前
|
Java C++ Python
函数的参数列表
函数的参数列表
63 2
|
6月前
VideoId”参数无效
VideoId”参数无效
96 1
|
11月前
|
API Python
一日一技:如何正确使用 re.sub 的第二个参数
一日一技:如何正确使用 re.sub 的第二个参数
60 0
|
测试技术 Android开发
怎么知道方法的参数有哪些类型呢?
怎么知道方法的参数有哪些类型呢?
179 0
self.doubleSpinBox.setGeometry(QtCore.QRect(20, 25, 101, 22))参数讲解
self.doubleSpinBox.setGeometry(QtCore.QRect(20, 25, 101, 22))参数讲解
283 0
7.2 函数的参数
1、给 b 变量设定一个默认的值 如果实参传入的时候,指定了 b 的值,那 b 优先选择传入的实参,当 b 没有值时,才会用默认值 def funcA(a,b=0):     print(a)     print(b) funcA(1)        # b 变量选择默认实参...
597 0
|
C++
C++函数及参数
传值->传递的是数据副本(结构、普通数据类型数据) 传地址->传递的是数据变量的地址(数组等) 传值的缺点是需要复制数据副本,数据量大可能增加内存需求,降低系统运行速度; 传地址也有传地址的不好的地方,比如在不需要修改原数据的时候,一不小心把数据修改了,造成程序的违需求性;
926 0

热门文章

最新文章