[ABI 5.2] 设置查询条件A、B、C和对应查询结果a、b、c,勾选了条件A、B便查询a、b,不会显示c,都不选则默认全选,如何实现呢?

3571
35

esen_4N4M1YQ35K

发表于2023-12-10 11:23

悬赏10

已解决

楼主

最近看过此主题的会员

esen_4Y3L5ADO80

brave0520

zly_2960

esen_50GY6WGUZV

esen_4YO0F42DH6

18709865986

cuihr

xnsoul3344

wal10000

王硕

chestnut

429661127

路口234ee

一一

刘凯源

mkhang

35个回答

只看楼主

chestnut 数据领袖Lv6

发表于2023-12-13 20:57

只看该作者

取消 关注该作者的回复

12#

本帖最后由 chestnut 于 2023-12-13 21:01 编辑

esen_4N4M1YQ35K 发表于 2023-12-13 20:51
不太明白。。添加多选参数是指什么?
我的勾选框组设置了能够多选,我原本的想法是在子表的每列表格列宽 ...

多选框参数。
子表的列宽表达式,可以用if判断参数值,满足条件显示。比如@cs不为空,列宽为100:if(len(@cs)<>0,100,0)
@cs 这个是主表给子表传的参数名称。如果勾选了继承表元条件,就是主表中多选框参数名;如果是在钻取中添加的参数,就是添加的参数名,相应调整。



esen_4N4M1YQ35K 数据达人Lv4

发表于2023-12-14 11:25

只看该作者

取消 关注该作者的回复

13#

chestnut 发表于 2023-12-13 20:57
多选框参数。
子表的列宽表达式,可以用if判断参数值,满足条件显示。比如@cs不为空,列宽为100:if(len(@ ...

子表所有的列宽设置了如下公式,在主表的钻取上点击了继承表元过滤条件。
出现第三张图的错误

chestnut 数据领袖Lv6

发表于2023-12-14 11:43

只看该作者

取消 关注该作者的回复

14#

截图中的参数不在钻取传参中配置,是直接取主表多选框参数的参数名?列宽表达式中用find函数判断,是在参数值中找1,可以在子表中用文本组件+宏表达式,看看列宽表达式的返回值。如图中,直接在if外嵌套宏即可。


跳转钻取报错,这个添加一个按钮组件,只配置跳转钻取,不传参,看跳转是否正常。

钻取中传参数值,不是直接写参数名,如参数名:@cs,传参值:$cs。
如果这些参数都是主表中的,勾选继承表元的过滤条件即可,不用再单独设置。
验证子表中接收参数,可以在子表中写宏表达式,显示传过来的参数值;如参数名:@cs,传参值:$cs,子表宏表达式:<#=@cs#>。

esen_4N4M1YQ35K 数据达人Lv4

发表于2023-12-14 14:51

只看该作者

取消 关注该作者的回复

15#

chestnut 发表于 2023-12-14 11:43
截图中的参数不在钻取传参中配置,是直接取主表多选框参数的参数名?列宽表达式中用find函数判断,是在参数 ...

我以为是设置了列宽公式所以报错,于是我将所有列宽公式删了再单独运行,还是报上述错误,但我在设置列宽前明明能正常打开

chestnut 数据领袖Lv6

发表于2023-12-14 15:53

只看该作者

取消 关注该作者的回复

16#

esen_4N4M1YQ35K 发表于 2023-12-14 14:51
我以为是设置了列宽公式所以报错,于是我将所有列宽公式删了再单独运行,还是报上述错误,但我在设置列宽 ...

子表计算报错吗?
看看子表中引用的主题表是不是正常的;可以开启java控制台,计算报表看看有什么报错信息:系统管理-性能与维护-java控制台。
分析表属性-历史版本,看看是不是能正常计算。

esen_4N4M1YQ35K 数据达人Lv4

发表于2023-12-14 16:21

只看该作者

取消 关注该作者的回复

17#

chestnut 发表于 2023-12-14 15:53
子表计算报错吗?
看看子表中引用的主题表是不是正常的;可以开启java控制台,计算报表看看有什么报错信 ...

谢谢!问题原因已找到,且通过您的方法得到了跳转钻取传递数据的更优方法!
现还有一个问题,我对宏表达式的运用不太了解
我的报表实现需求大致如下:
现有两张分析表,通过主表输入模糊查询与定制查询结果后,在子分析表出现结果。
比如我在输入地区为西安,然后再在勾选框勾选地区、天气。则点击查询后跳转到子分析表只出现地区和天气两列结果。
现我已实现了模糊查询的要求,
但在查询结果的勾选上还是不太清楚宏表达式的运用,是作用在子表的哪里呢?对主表的勾选框是否有设置要求呢?烦请指教

chestnut 数据领袖Lv6

发表于2023-12-14 16:35

只看该作者

取消 关注该作者的回复

18#

本帖最后由 chestnut 于 2023-12-14 16:37 编辑

esen_4N4M1YQ35K 发表于 2023-12-14 16:21
谢谢!问题原因已找到,且通过您的方法得到了跳转钻取传递数据的更优方法!
现还有一问题,我对宏表达 ...

在报表中可以通过宏引用参数、表元、函数等,显示其值,详见:https://bbs.esensoft.com/thread-128101-1-1.html

esen_4N4M1YQ35K 数据达人Lv4

发表于2023-12-15 09:20

只看该作者

取消 关注该作者的回复

19#

chestnut 发表于 2023-12-14 16:35
在报表中可以通过宏引用参数、表元、函数等,显示其值,详见:https://bbs.esensoft.com/thread-128101-1- ...

我给子表的每个列宽设置了如图所示公式,引号中的数字是每个列名在主表的勾选框内都有对应的枚举值
现有一个问题,光是单选一个勾选框中的选项能够实现我的功能需求。如果选多个就会查询失效。
该表达式可以如何优化呢?

chestnut 数据领袖Lv6

发表于2023-12-15 11:52

只看该作者

取消 关注该作者的回复

20#

esen_4N4M1YQ35K 发表于 2023-12-15 09:20
我给子表的每个列宽设置了如图所示公式,引号中的数字是每个列名在主表的勾选框内都有对应的枚举值
现有 ...

枚举多选,参考:https://bbs.esensoft.com/thread-133428-1-1.html

esen_4N4M1YQ35K 数据达人Lv4

发表于2023-12-15 14:57

只看该作者

取消 关注该作者的回复

21#

chestnut 发表于 2023-12-15 11:52
枚举多选,参考:https://bbs.esensoft.com/thread-133428-1-1.html

该式写在子表每列数据的过滤条件中?我写在子表整个表的过滤条件中或者子表的每列数据的过滤条件里都不行……

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

400咨询:400-0011-866

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号