关于水晶报表的问题,望高手指点啊
Local StringVar strTemp := ToText({pu_receive_goods.Qty}, 1);
if strTemp="0" then
white
else if strTemp="1" then
Black
我在定义某个控件的颜色的时候,我要这个控件的值是0还是1,然后做判断。
但是像{pu_receive_goods.Qty}, 这样的控件我要定义好多个,水晶报表里面有没有一个统一的变量,或者是函数可以取到 我要定义的那个控件的值,而不是像我这样每个不同的控件的名称都要去改一次,有没有统一的可以取好你定义的那个控件的值啊,望高手指点
[解决办法]
应该是没有直接的方法取控件的值。
因为控件的值是可以用公式计算求得,如果公式中再反向引用控件值,就需要排列运算次序了。
水晶报表没有设计这样的功能。
老老实实按字段值判断吧。
一遍设计报表时总有一个字段列表吧,从里面复制好了。
[解决办法]
什么意思,许多控件背景都是按照同一个 {pu_receive_goods.Qty} 字段设置的?
设计时控件不是可以多选的吗?一起选中了定义背景试试。
[解决办法]
如果要方便,那么就在报表的事件中用代码实现。
写一个通用函数,参数为控件。
对每个需要动态设背景色的控件都调用一下这个函数。
[解决办法]
没有水晶报表,自己完善
Sub SetBackColor(byval ctl as 水晶报表的控件)
ctl.背景色 = iif(ctl.值 = "0", "White", "Black")
end sub