报表软件参数主要用于数据过滤,实际业务中,有些过滤条件是可输可不输的,这种过滤条件就需要用到动态参数,也叫可选参数。
Wyn Enterprise报表的动态参数有两种实现方式:(1)动态SQL语句、(2)直接使用SQL语句的OR子句。
(一)动态SQL语句
动态SQL语句是指数据集的查询语句,就是根据用户是否输入作为查询条件的参数值,动态生成SQL语句。
例如:
在对一个销售订单数据表【Demo_销售明细】查询时,如果用户没有输入查询条件,SQL语句是这样:
select * from Demo_销售明细
如果用户输入了【销售大区】这个过滤条件,SQL语句就要变成这样:
select * from Demo_销售明细 where 销售大区=@大区参数
实现这种动态SQL语句的方法如下:
(1)定义报表参数
定义一个报表参数,名称为:大区参数,可不输入,添加一个空字符串的默认值,如下图:
<ignore_js_op style="overflow-wrap: break-word; margin: 0px; padding: 0px; color: rgb(54, 54, 54); font-family: "Microsoft Yahei", Simsun;">
(2)创建数据集,先写普通的SQL语句,验证一下,以便得到数据集字段列表
<ignore_js_op style="overflow-wrap: break-word; margin: 0px; padding: 0px; color: rgb(54, 54, 54); font-family: "Microsoft Yahei", Simsun;">
(3)将SQL语句改成表达式形式的动态SQL语句
表达式形式的SQL语句如下图:
<ignore_js_op style="overflow-wrap: break-word; margin: 0px; padding: 0px; color: rgb(54, 54, 54); font-family: "Microsoft Yahei", Simsun;">
所谓表达式,就是以等于号开头的一个字符串,比如图中的:
="select * from Demo_销售明细 " & IIF(Parameters!大区参数.Value="", "", " where 销售大区='" & Parameters!大区参数.Value & "'" )
这个表达式的核心是一个IIF函数,其含义是,如果大区参数值是一个空字符串,也就是说用户没有输入参数值,那么select语句就不要where条件,否则,就加上一个 where 销售大区='参数值' 这样一个where条件子句。
这样修改数据集的查询语句之后,预览报表时,就是根据用户是否输入了参数值,动态执行有或者没有where条件的SQL语句了。
(二)直接使用OR子句
表达式形式的动态SQL语句,需要设计人员理解IIF函数的用法。
更简捷的方法是在SQL语句中的where条件中使用OR子句,如下图:
<ignore_js_op style="overflow-wrap: break-word; margin: 0px; padding: 0px; color: rgb(54, 54, 54); font-family: "Microsoft Yahei", Simsun;">
这时的SQL语句如下:
select * from Demo_销售明细
where (销售大区=@大区参数 OR @大区参数='' )
其中,where 条件中含有OR子句,其含义是:要么销售大区字段等于用户输入的大区参数的值,要么用户输入的大区参数是一个空的字符串(也就是没输入参数值)。两个条件满足一个即可,这样就可以根据用户是否输入查询条件,决定是显示全部记录还是仅显示部分符合查询条件的记录。
注意:
(1)这种方法需要先定义一个【查询参数】,通过 =Parameters!大区参数.Value 这样的表达式,绑定报表参数,以传递用户输入的查询条件。
(2)尽管这种方式具有简捷方便的特点,但是仅适用于where条件,如果报表需要根据参数的不同,动态决定from哪个表,或者动态决定select哪些字段,那就必须使用上面的动态SQL语句的方法。
- 浏览: 50461 次
最新评论
-
314649444:
77rou 写道深巷好酒 写道厉害,有没有网址,我也想看下好吧 ...
新手逆袭!记我的第一次系统开发 -
77rou:
深巷好酒 写道厉害,有没有网址,我也想看下好吧,虽然发出有种广 ...
新手逆袭!记我的第一次系统开发 -
深巷好酒:
厉害,有没有网址,我也想看下
新手逆袭!记我的第一次系统开发 -
77rou:
osacar 写道找不源码在哪下载啊。是不是那个试用版??是有 ...
不得不爱开源 Wijmo jQuery 插件集(1)-【开篇】(附演示和源码) -
osacar:
找不源码在哪下载啊。是不是那个试用版??
不得不爱开源 Wijmo jQuery 插件集(1)-【开篇】(附演示和源码)
相关推荐
在Wyn Enterprise中,JavaScript可能用来处理数据,定义词云的动态行为,如点击词云元素后的反应,或者调整词云的参数,如旋转角度、颜色映射等。 结合这些文件,我们可以学习到以下知识点: - **Wyn Enterprise**...
Wyn Enterprise-动态数字
Wyn Enterprise-动态文本
Wyn Enterprise-动态标题
Wyn Enterprise-帕累托图
JavaScript是实现网页动态效果和用户交互的关键,对于Wyn Enterprise来说,它可能用于控制数据的加载、图表的交互行为等。 综上所述,这个压缩包可能包含了一个使用Wyn Enterprise创建的泡泡图示例,其中包括了样式...
Wyn Enterprise-3D漏斗图
Wyn Enterprise是一款商业智能(BI)和报表工具,它为企业提供数据可视化、分析和报告功能。镜像文件可能是该软件的一个完整复制,可能包含所有必要的组件和配置,以便在不同环境中快速恢复或部署。 描述中只提到了...
【标题】"Wyn Enterprise-自定义地图.zip" 提供的是关于 Wyn Enterprise 软件如何实现自定义地图的功能。Wyn Enterprise 是一款强大的商业智能和报表解决方案,它允许用户根据自身需求创建交互式的数据可视化,其中...
总之,Wyn Enterprise凭借其强大的时间管理功能,为企业提供了高效的数据分析工具,帮助企业把握时间脉络,洞悉业务走势,实现精细化管理和智能决策。通过深入理解和充分利用这些功能,企业可以更好地驾驭时间这一...
Wyn Enterprise-图片动态预警
Wyn Enterprise是一款强大的商业智能和报表工具,它提供了多种数据可视化方法,其中包括热力地图。热力地图是一种用颜色表示数据密度或强度的地图,通常用于展示地理分布上的数据趋势。 【描述】"Wyn Enterprise-...
在Wyn Enterprise中,甘特图是一种动态的、交互式的可视化工具。用户可以轻松创建和自定义甘特图,以适应各种项目需求。以下是一些关键特性: - **任务和子任务管理**:用户可以直接在甘特图中添加、编辑和删除任务...
Wyn Enterprise是一款商业智能和报表工具,它允许用户通过直观的图表来分析数据,其中百分比柱状图是一种常用的数据可视化方式,用于比较不同类别的相对比例。 描述简洁明了,只提到了百分比柱状图,这可能意味着这...
Wyn Enterprise是一款强大的商业智能和报表解决方案,它提供了丰富的可视化工具来帮助用户分析和展示数据。在这个特定的压缩包中,可能包含了实现这一功能的相关文件。 描述中的"Wyn Enterprise-自动轮播"进一步...
标题中的“Wyn Enterprise”可能是指 Wyn Business Solutions 的企业级报表和BI工具,它提供数据可视化、仪表板和分析功能。而“动画数字”这部分很可能指的是该软件在展示数据时所采用的一种动态呈现方式,例如通过...
Wyn Enterprise通常指的是 Wyn Business,这是一个由 GrapeCity 公司开发的企业级报表和BI(商业智能)解决方案。因此,我们可以推测这个压缩包可能包含有关Wyn Enterprise的“水波球”功能的相关资料。 【描述解析...
Wyn Enterprise-浮动菜单
标题 "Wyn Enterprise-性别比例.zip" 暗示了这个压缩包可能包含与数据分析相关的文件,特别是关于性别的比例分布。Wyn Enterprise 是一款商业智能和数据可视化软件,它帮助用户从各种数据源提取信息并创建易于理解的...
Wyn Enterprise-嵌套饼图