请问如何设置查询,多个控件中有任一控件符合要求即返回查询值

1672988875930025.png

如上图,我设置了合同号、项目负责人、甲方名称、项目名称等4个查询控件。

预期达到的查询目的:选择上述任一条件进行查询,只要符合就返回相应结果(比如只选择合同号,另外3个留空也能查询出结果)。

但现在我只有选择项目负责人的时候才会返回值,其他合同号、甲方名称、项目名称即使我知道有符合的内容,还是返回的空值。

如下图,我只选择了合同号,虽然确定这个合同号对应的有结果的,但返回的是空值。

1672988875547367.png

请问各位大佬是否知道如何设置?帮助文档里是否已有类似的教程我还没看到啊?谢谢了

FineReport ningyi 发布于 2023-1-6 15:17
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
坚定的小帆薯Lv7高级互助
发布于2023-7-16 14:49

使用文件数据集的话,需要用对应数据集的过滤方式

参考文档

文件数据集参数过滤- FineReport帮助文档 - 全面的报表使用教程和学习资料  https://help.fanruan.com/finereport/doc-view-1715.html

最佳回答
0
Z4u3z1Lv6专家互助
发布于2023-1-6 15:17

用or不用and

  • ningyi ningyi(提问者) 用or的话,返回的结果是所有的值~~
    2023-01-06 15:26 
  • Z4u3z1 Z4u3z1 回复 ningyi(提问者) 任一控件符合要求 我的理解就只有or不用and
    2023-01-06 15:28 
最佳回答
0
报表小王子Lv3见习互助
发布于2023-1-6 15:20

sql里 这样写,${if(len(控件名称)==0,""," and 字段='"+控件名称+"'")}

最佳回答
0
其实我是宁采臣Lv4见习互助
发布于2023-1-8 14:53

通过SQL控制数据集查询结果。

where 1=1 

${if(len(控件名称1)==0,""," and 字段1='"+控件名称1+"'")}

${if(len(控件名称2)==0,""," and 字段2='"+控件名称2+"'")}

${if(len(控件名称3)==0,""," and 字段3='"+控件名称3+"'")}

${if(len(控件名称4)==0,""," and 字段4='"+控件名称4+"'")}

你现在查不出东西,看看是不是数据集写的有问题

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