AR16_Learning 发表于 2023-8-7 11:04:46

【ActiveReports v16】rdlx报表绑定运行时数据源,如何设置参数的下拉列表?


Bella.Yuan 发表于 2023-8-7 11:04:47

AR16_Learning 发表于 2023-8-7 16:58
麻烦看一下,这样绑定数据源对不对?

您好,数据集1和数据集2只绑定字段,如果说数据集1是需要根据报表参数进行过滤,那就需要给数据集1设置参数过滤,数据集2是用来给参数设置可用数据的,此时数据集2不需要设置过滤,只需要给数据集2设置字段,然后在给参数设置可用数据,如下图示:

附件是对应的demo,您也可以参考一下。

Bella.Yuan 发表于 2023-8-7 11:28:40

您好,如果要设置下拉列表,那就是给报表参数设置可用数据,比如说设置为其他数据集,那使用运行时数据源给其他数据集赋值时该参数的可用数据就会有值,参数的可用数据设置参考下图,您可以给报表文件的参数先设置好对应的数据集然后在代码中给对应的数据集赋值就可以:


AR16_Learning 发表于 2023-8-7 15:11:36


报错了

Bella.Yuan 发表于 2023-8-7 15:20:25

AR16_Learning 发表于 2023-8-7 15:11
报错了

您好,这里忘记给您说了,需要注意"参数的循环引用"问题。
参数的循环引用是指:比如您的数据集1需要使用参数1进行数据过滤,但是参数1的可用数据也是数据集1的某个字段,此时就会存在参数的循环引用问题,因为参数1的可用数据需要来自数据集1的某个字段,但是数据集1又需要依赖参数1来过滤数据,所以会出现参数的循环引用问题。
解决方法:参数1的可用数据需要绑定另一个新的数据集,比如是数据集2 ,数据集2和数据集1可用是一模一样,只是,数据集2是专门用来给参数设置可用数据,不用于设计区域的数据绑定。

AR16_Learning 发表于 2023-8-7 16:36:04

AR16_Learning 发表于 2023-8-7 16:37:00

AR16_Learning 发表于 2023-8-7 16:36


修改过后报了这么个异常

Bella.Yuan 发表于 2023-8-7 16:57:27

AR16_Learning 发表于 2023-8-7 16:37
修改过后报了这么个异常

您好,根据报错信息看是没有data导致的。
比如数据集1的语句是:select * from a where 地区=报表参数1
数据集2的语句是:select distinct 地区 * from a
然后将数据集2设置为报表参数1的可用数据。如果说数据集2和数据集1一模一样,那肯定还是不对的,对应的报表参数肯定是数据集数据的全量展示,您可以参考我上面的2个数据集检查一下您的代码。

AR16_Learning 发表于 2023-8-7 16:58:51


麻烦看一下,这样绑定数据源对不对?

AR16_Learning 发表于 2023-8-8 19:38:06

谢谢,问题已解决
页: [1] 2
查看完整版本: 【ActiveReports v16】rdlx报表绑定运行时数据源,如何设置参数的下拉列表?