FLUX知识记录之Gem Report设计器学习2

  • 参数查询
    • 参数组件
    • 周报
    • 月报
    • 季报、年报
    • 参数组件联动
    • 树形选择组件
    • 多值查询
    • 动态列
    • 模糊查询
    • 参数默认值

  • 参数组件
    • 编辑框:编辑框输入文本查询数据,支持模糊查询,默认值包含:公式、内置变量

          勾选模糊查询,匹配模式为:任意匹配、左匹配、右匹配

    • 下拉框:下拉框数据一般较少,指定参数值与显示值

      • 参数值:查询数据库对应的字段的值, 显示值:页面下拉框显示的可选择的值
    • 数据下拉框:数据下拉框数据来源数据集,预先定义下拉框的数据

           参数值数据列:查询数据库对应的字段的值,显示值数据列:页面下拉框显示的可选择的值

           搜索可选值:当下拉框值比较多的情况下,可勾选搜索可选值,下拉框则带有搜索功能

  • 周报

    • 描述:企业以一周为单位对数据进行统计,一般默认情况统计上一周数据,或输入日期查看该日期一周的数据

    • 采用数据过滤设计周报

      • 参数组件:第一步在报表参数页面从左侧拖动一个日期组件加入到单元格中,组件名称为date(参数名称)

      • 数据过滤:

        在数据集页面输入SQL查询语句:select * from RPT_PRODUCT

        拖动左边的数据列到报表页面单元格中,选中单元格B2(日期数据=ds.ORDER_DATE), 点击“过滤”进入过滤条件设置页面

        • 数据列为日期字段,值类型选择公式,$date表示取日期组件的值

                第一个函数:=WEEKSTART($date) 获取日期date所在周的第一天开始时间,如果$date为空,默认值为上周的第一天开始时

                第二个函数:=WEEKEND($date) 获取日期date所在周的第七天结束时间,如果$date为空,默认值为上周的第七天结束时间

    • 采用SQL参数设计周报

      • 在SQL中查询时间段的数据效率要快于第一种方法,在数据表数据比较多的时间建议采用SQL中过滤数据

      • 参数组件:同第一种方式设计一个日期组件date(参数名称),同时需要增加两个隐藏域,名称为startDate,endDate(作为SQL参数值)

              在数据集页面输入SQL查询语句:

               select * from RPT_PRODUCT where ORDER_DATE >=:startDate  and ORDER_DATE <= :endDate

        • ​​​​​​​​​​​​​​​​​​​​​

  • 月报

    • 描述:企业以一月为单位对数据进行统计,一般默认情况统计上一月数据,或输入日期查看该月的数据

    • 采用数据过滤设计月报

      • 参数组件:第一步在报表参数页面从左侧拖动一个日期组件加入到单元格中,组件名称为date(参数名称), 设置月份组件格式为yyyy-MM

      • 数据过滤:在数据集页面输入SQL查询语句:select * from RPT_PRODUCT

              拖动左边的数据列到报表页面单元格中,选中单元格B2(日期数据列=ds.ORDER_DATE), 点击“过滤”进入过滤条件设置页面

        • 数据列为日期字段,值类型选择公式,$date表示取日期组件的值

        • 第一个函数:=MONTHSTART($date) 获取日期date所在月的第一天开始时间,如果$date为空,默认值为上月的第一天开始时

                第二个函数:=MONTHEND($date) 获取日期date所在月最后一天结束时间,如果$date为空,默认值为上月的最后一天结束时间

    • 采用SQL参数设计月报

      • 在SQL中查询时间段的数据效率要快于第一种方法,在数据表数据比较多的时间建议采用SQL中过滤数据

      • 参数组件:同第一种方式设计一个日期组件date(参数名称),同时需要增加两个隐藏域,名称为startDate,endDate(作为SQL参数值)

              在数据集页面输入SQL查询语句:

              select * from RPT_PRODUCT where ORDER_DATE >=:startDate  and ORDER_DATE <= :endDate

        • ​​​​​​​​​​​​​​

  • 季报、年报

    • 描述:

      季报:企业以一个季度为单位对数据进行统计,一般默认情况统计上一个季度数据,或输入日期查看该季度的数据

      年报:企业以一年为单位对数据进行统计,一般默认情况统计上一年数据,或输入日期查看该年的数据

    • 设计:设计报表方式同周报、月报方式一致,区别是使用的公式函数不同

      • ​​​​​​​季度函数:

        第一个函数:=QUARTERSTART($date) 获取日期date所在季度的第一天开始时间,如果$date为空,默认值为上个季度的第一天开始时间

        第二个函数:=QUARTEREND($date) 获取日期date所在季度的最后一天结束时间,如果$date为空,默认值为上个季度的最后一天结束时间

      • 年度函数:

        第一个函数:=YEARSTART($date)获取日期date所在年份的第一天开始时间,如果$date为空,默认值为去年的第一天开始时间

        第二个函数:=YEAREND($date) 获取日期date所在年份的最后一天结束时间,如果$date为空,默认值为去年的最后一天结束时间

  • 参数组件联动

    • 下拉框组件联动:

      下拉框参数联动是指一个下拉框值改变,同时使被联动的下拉框值发生变化

             第一个数据下拉框SQL:select * from RPT_AREA where PARENT_AREA_CODE is NULL  查询省份的下拉框。第二个数据下拉框SQL:select * from RPT_AREA where PARENT_AREA_CODE=':areaCode' 依据省份查询该省下的城市

      • 第一个数据下拉框组件参数名称为areaCode,areaCode为第二个下拉框sql的条件参数值select * from RPT_AREA where PARENT_AREA_CODE=':areaCode'

             第二个数据下拉框参数名称为city,第一个下拉框联动组件选择city。

    • ​​​​​​​下拉框数据属性

      • ​​​​​​​参数值:选择areaCode, 参数值是指sql中查询条件传递的参数值

        显示值:选择areaName,显示值是指下拉框的显示标签

    • 日期组件联动

      • 用于查询时间段的数据如周报、月报、季度报、年报等,当选择一个日期,同时改变其他日期组件的值, 月报示例

      • 第一个日期组件参数名称为date,联动组件选择startDate,endDate

             第二个日期组件参数名称为startDate,  默认值为公式: =MONTHSTART($date) 获取日期date所在月的第一天开始时间,如果$date为空,默认值为上月的第一天开始时

             第三个日期组件参数名称为endDate,  默认值为公式: =MONTHEND($date) 获取日期date所在月最后一天结束时间,如果$date为空,默认值为上月的最后一天结束时间

  • 树形选择组件

    • 描述:对于树形结构的数据表可以使用树形组件,树形结构的表存在子级标识、父系标识的字段

    • 树形组件

      • 树形组件数据集SQL: select * from rpt_area

             组件父级标识:PARENT_AREA_CODE, 组件子级标识为:AREA_CODE

            显示值:树形列表选中输入框中显示的值。
           参数值:查询数据是作为参数传入的值并不是传入显示值

  • 多值查询

    • 描述:多值查询是指将参数页面组件以数组的方式,参与报表参数过滤

            select * from RPT_MULTI_PDT where PDT in (:pdtt) and PDT_DEPT_ID in (':pdtDept')

    • 树形多值查询

      • 树形组件多值为复选框,可以勾选多个值,将多个值以数组的方式传递给报表过滤查询

      • 部门组织树形参数组件名称为pdtDept, 对应sql中参数条件PDT_DEPT_ID in (:pdtDept)

    • 下拉框多值查询

      • 下拉框多值查询,可以选择多个值传递给报表参数过滤,选择多个产品示例

      • 产品下拉框组件名称为pdtt,对应sql中参数条件PDT in (:pdtt)

  • 动态列

    • 描述:有的报表数据列比较多,动态数据列用于查看自己只关心的几列数据

    • 实现方式:使用复选框组件实现动态列,拖动选择显示列组件到单元格中,这时会弹出选择动态列的表格

      • 显示列:勾选显示列会生成向对应的复选框组件,默认在参数页面一行生成6个复选框组件

        默认是否选中:勾选是否选中,进入页面列复选框默认是否选中,复选框选中则显示该列数据

      • 复选框勾选了序号、产品编号、物品名称、物品重量、总金额、订单日期,则查询的列仅显示选中的列数据

  • 模糊查询

    • 描述:使用SQL通配符可以替换一个或多个字符,即模糊查询,模糊查询必须与LIKE运算符一起使用

    • 示例:数据集:select * from rpt_value where name like ':name', name为参数组件名称

          参数组件勾选模糊查询,匹配模式为:任意匹配、左匹配、右匹配, 自动增加%

          任意匹配:'%:name%'   左匹配:':name%'    右匹配:'%:name'

      • ​​​​​​​​​​​​​​

  • 参数默认值

    • 描述:报表SQL参数查询,或是数据过滤有时需要给参数设置默认值

          第一种:参数页面添加隐藏域设置默认值

          第二种:参数页面添加组件设置默认值

    • 实现:默认值可以是常量、公式、内置变量

                 内置变量:一般是指用户部门信息

    • sql参数:数据集sql:select * from rpt_value where name=':argName', argName为隐藏域参数名称

    • 数据过滤:数据过滤值类型选择参数,值选择$argName, 取隐藏域argName的默认值

  • 20
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值