yiliukeji 发表于 2017-7-24 14:52:42

RDL报表当中的字段隐藏与显示

本帖最后由 KearneyKang 于 2017-7-25 15:13 编辑

版主:
您好!
目前公司有这样的需求。
一个模版,不同的用户有不同的设置,
我将此模版分为表头、表格、表尾。
例如:A用户没有表头当中的某几项,
B用户没有表尾当中某几项,
C用户又没有列表当中的某几列。
咱在加载报表的时候能否进行模版元素的隐藏与显示?

例如下图是最全的显示方式:

二.在使用模版的时候 我们有一次打预览多个发货单的需求,如下图:


KearneyKang 发表于 2017-7-24 15:33:07

您好,这个显示可见不可见是可以控制的我们的单元格有一个visibility的属性,然后您可以根据您的需要些判断语句进行设置可见不可见

yiliukeji 发表于 2017-7-24 15:49:04

版主:
您好!
是要在运行的时候动态判断是否隐藏该列,直白一点就是怎样通过代码当中设置 visibility的值(不知道代码怎么写,写在哪里?JS里面?后台的ActiveReportsService.asmx文件当中??)
我是在MVC当中使用的~
在设计器当中很好的可以设置的~



KearneyKang 发表于 2017-7-24 15:54:37

Visibility的属性hidden有一个表达式,在表达式里写判断语句进行您需要的设置

yiliukeji 发表于 2017-7-24 16:36:18

1.Parameters!HideColumn 是我用来判断是否隐藏的传递过来的参数,RemarkForExport 就是需要隐藏的列
此函数这样使用是否正确?
IIF( Parameters!HideColumn.Value.Contains(' RemarkForExport'),false,true)


yiliukeji 发表于 2017-7-24 17:23:34

本帖最后由 yiliukeji 于 2017-7-24 17:25 编辑

版主:
您好!
我是这样设置的,但是出来效果是这样的,并没有把整列都隐藏掉,而是表头不显示而已:


KearneyKang 发表于 2017-7-24 18:10:46

您好,如果您是根据报表的参数值,就是输入的查询参数的个数不同显示的行数不同。您可以参考葡萄城报表模板库如下:
然后点击设计,脚本文件里通过脚本来进行控制

如果只是您只是根据某一个属性来进行判断的话,您就选中整列然后进行visibility属性的设置,就不会出现你说的问题

yiliukeji 发表于 2017-7-24 18:33:00

KearneyKang 发表于 2017-7-24 18:47:31

http://blog.gcpowertools.com.cn/post/MergeCellAutomatic.aspx
这是AR的最新特性单元格智能合并
页: [1]
查看完整版本: RDL报表当中的字段隐藏与显示