wyn enterprise报表动态参数的实现 -欧洲杯足彩官网

`
77rou
  • 浏览: 45459 次
最近访客
博主相关
  • 博客
  • 微博
  • 社区版块
    • ( 7)
    • ( 0)
    • ( 0)
    存档分类
    最新评论
    • 314649444: 77rou 写道深巷好酒 写道厉害,有没有网址,我也想看下好吧 ...
    • 77rou: 深巷好酒 写道厉害,有没有网址,我也想看下好吧,虽然发出有种广 ...
    • : 厉害,有没有网址,我也想看下
    • 77rou: osacar 写道找不源码在哪下载啊。是不是那个试用版??是有 ...
    • : 找不源码在哪下载啊。是不是那个试用版??

    wyn enterprise报表动态参数的实现

     

    参数主要用于数据过滤,实际业务中,有些过滤条件是可输可不输的,这种过滤条件就需要用到动态参数,也叫可选参数。
    的动态参数有两种实现方式:(1)动态sql语句、(2)直接使用sql语句的or子句。

    (一)动态sql语句

    动态sql语句是指数据集的查询语句,就是根据用户是否输入作为查询条件的参数值,动态生成sql语句。
    例如:
    在对一个销售订单数据表【demo_销售明细】查询时,如果用户没有输入查询条件,sql语句是这样:
      select * from demo_销售明细
    如果用户输入了【销售大区】这个过滤条件,sql语句就要变成这样:
      select * from demo_销售明细 where 销售大区=@大区参数



    实现这种动态sql语句的方法如下:
    (1)定义报表参数
    定义一个报表参数,名称为:大区参数,可不输入,添加一个空字符串的默认值,如下图:

    (2)创建数据集,先写普通的sql语句,验证一下,以便得到数据集字段列表


    (3)将sql语句改成表达式形式的动态sql语句
    表达式形式的sql语句如下图:

    所谓表达式,就是以等于号开头的一个字符串,比如图中的:
    ="select * from demo_销售明细 " & iif(parameters!大区参数.value="", "", " where 销售大区='" & parameters!大区参数.value & "'" )

    这个表达式的核心是一个iif函数,其含义是,如果大区参数值是一个空字符串,也就是说用户没有输入参数值,那么select语句就不要where条件,否则,就加上一个 where 销售大区='参数值' 这样一个where条件子句。

    这样修改数据集的查询语句之后,预览报表时,就是根据用户是否输入了参数值,动态执行有或者没有where条件的sql语句了。

    (二)直接使用or子句

    表达式形式的动态sql语句,需要设计人员理解iif函数的用法。
    更简捷的方法是在sql语句中的where条件中使用or子句,如下图:

    这时的sql语句如下:
    select * from demo_销售明细
    where (销售大区=@大区参数 or @大区参数='' )

    其中,where 条件中含有or子句,其含义是:要么销售大区字段等于用户输入的大区参数的值,要么用户输入的大区参数是一个空的字符串(也就是没输入参数值)。两个条件满足一个即可,这样就可以根据用户是否输入查询条件,决定是显示全部记录还是仅显示部分符合查询条件的记录。

    注意:
    (1)这种方法需要先定义一个【查询参数】,通过 =parameters!大区参数.value 这样的表达式,绑定报表参数,以传递用户输入的查询条件。
    (2)尽管这种方式具有简捷方便的特点,但是仅适用于where条件,如果报表需要根据参数的不同,动态决定from哪个表,或者动态决定select哪些字段,那就必须使用上面的动态sql语句的方法。

    分享到:
    评论
    发表评论

    相关推荐

      wyn enterprise-动态数字

      wyn enterprise-动态标题

      wyn enterprise-动态文本

      wyn enterprise-wordcloud

      wyn enterprise-帕累托图

      wyn enterprise-3d漏斗图

      wyn enterprise-图片动态预警

      wyn enterprise-浮动菜单

      wyn enterprise-嵌套饼图

      wyn enterprise-日期时间

      wyn enterprise-图片轮播插件

      wyn enterprise-轮播气泡地图

      wyn enterprise-sankey

      wyn enterprise-time

      wyn enterprise-bubble

      wyn enterprise图片加载

      wyn enterprise-mirror

      wyn enterprise-自动轮播

      wyn enterprise-瀑布图

      wyn enterprise-动画数字

    global site tag (gtag.js) - google analytics
    网站地图