控件筛选

image.png为什么我弄了下拉框筛选,我在选择是我的报表不会根据我选择的季度变image.png

FineReport LL 发布于 2021-4-26 10:45 (编辑于 2021-4-26 15:20)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共6回答
最佳回答
0
axingLv6专家互助
发布于2021-4-26 10:51(编辑于 2021-4-26 11:50)

getdate() 要换成你表中的时间字段

image.png

----

自动屏蔽了我的答案吗?

getdate()是获取今天的日期,现在是2021-04-26,你month(getdate())得到的值永远是4

在sql中要这样才能动态筛选 where month(时间字段) in (1,2,3)

最佳回答
0
IceBall09Lv6中级互助
发布于2021-4-26 10:48(编辑于 2021-4-26 16:12)

image.png

================分割线===========

if(month(today()) =1 ||month(today()) =2 ||month(today()) =3 ,"第一季度",if(month(today()) =4 ||month(today()) =5 ||month(today()) =6 ,"第二季度",if(month(today()) =7 ||month(today()) =8 ||month(today()) =8 ,"第三季度","第四季度")))

image.png

  • LL LL(提问者) 怎么设置
    2021-04-26 10:49 
  • IceBall09 IceBall09 回复 LL(提问者) 双击经营人那个格子,点击过滤,设置你的季度的格子等于你的筛选的那个参数,看上图
    2021-04-26 10:50 
  • LL LL(提问者) 回复 IceBall09 我没有在数据集中写那个参数,自定义不是可以不用在数据集里写出参数的吗
    2021-04-26 10:56 
  • IceBall09 IceBall09 回复 LL(提问者) 那就是是你实际值函数写错了
    2021-04-26 10:58 
  • LL LL(提问者) 回复 IceBall09 实际值是我自定义的
    2021-04-26 11:00 
最佳回答
0
snrtuemcLv8专家互助
发布于2021-4-26 10:49(编辑于 2021-4-26 11:01)

你这个写法有问题,in里面至少是

month(getdate()) in ('1','2','3')

-------------------------

select * from 表 where month(getdate()) in (+${参数}+)

实际值就是

'1','2','3' 这样的,注意,你的month出来的格式是01,02这样,还是1,2这样的

  • LL LL(提问者) 试了,但是不行
    2021-04-26 10:57 
  • snrtuemc snrtuemc 回复 LL(提问者) 这个要看你sql支持哪些函数了,建议直接sql写好,自定义直接使用in里面数据,看修改答案
    2021-04-26 10:59 
最佳回答
0
用户S5182147Lv6中级互助
发布于2021-4-26 11:09(编辑于 2021-4-26 11:13)

你可以换一种写法,可以写substring(时间字段,月份开始位置,字符长度) IN (1,2,3)(这个方法需要你的月份固定两位)

最佳回答
0
ShenRuiALv5见习互助
发布于2021-4-26 15:34(编辑于 2021-4-26 15:54)

你可以让他选择相对应的月份,然后通过计算公司返回他是第几个季度。if(FLOOR((C5+2)/3)=1,'0.6',if(FLOOR((C5+2)/3)=2,'0.65',if(FLOOR((C5+2)/3)=3,'0.67',if(FLOOR((C5+2)/3)=4,'0.7','待定'))))

我这里面C5是一个扩展单元格的值,你只需要将C5换成你的变量,然后把0.6等这些化成想要返回的。就可以了。有问题继续问我。

SELECT CASE floor(SUBSTR(CREATE_TIME, 6, 2)+2)/3 WHEN 1 THEN '1季度'

    WHEN 2 THEN '2季度'

    WHEN 3 THEN '3季度'

    WHEN 4 THEN '4季度'

ELSE

'待定' END FROM PERSONNEL_POWER_MANAGEMENT WHERE 1=1 

这个是针对sql判断的。你找一个表名。然后取其中的月份数据,就可以实现。

image.png

 

最佳回答
0
真香@haoLv5见习互助
发布于2021-4-26 16:49

需要设置数据集参数,不设置参数怎么能将下拉框控件值传递数据集,来实现到报表查询

  • 7关注人数
  • 584浏览人数
  • 最后回答于:2021-4-26 16:49
    请选择关闭问题的原因
    确定 取消
    返回顶部