关于 grid setall 表达式问题,请大家指教。弄了一天了还是报错。
&&&& 在表单的init事件中 绑定临时表到 grid1 表中包含字段by_id (整型) 目前表中有2条数据,by_id=1;by_id=2 cksql1="select * from byjcxx into cursor tmpmain_byjcxx"
thisform.container1.grid1.columncount=7
thisform.container1.grid1.recordsource=null
thisform.container1.grid1.recordsourcetype=4 &&sql语句模式
thisform.container1.grid1.recordsource="&cksql1"
thisform.container1.grid1.refresh
thisform.refresh
&&&&从另一个表中查询满足指定条件的字段bl_id值(整型) 此表的bl_id字段与上表的by_id值代表的信息一致。
&&&& 此处满足条件的bl_id的值=1,所以tmp_qf=1 (已测试返回值正常)
select bl_id from blgl where bl_ssws>0 into array tmp_qf
select tmpmain_byjcxx
&& ascan(tmp_qf,tmpmain_byjcxx.by_id) 返回值为1,所以表达式返回正常。
&&& 错误点: 设置grid的颜色。 此处一直报 dynamicbackcolor 属性的表达式无效。
thisform.container1.grid1.setall("dynamicbackcolor","iif(ascan(tmp_qf,tmpmain_byjcxx.by_id)>0,rgb(255,25,20),rgb(255,255,0))","column")
经测试:
thisform.container1.grid1.setall("dynamicbackcolor","iif(1>0,rgb(255,25,20),rgb(255,255,0))","column")
grid能正常匹配。
可以确定是因为ascan(tmp_qf,tmpmain_byjcxx.by_id)>0 这个表达式引起的。
疑问: 这个表达式也是返回一个逻辑值,为啥一直会报 表达式无效呢?
求各位朋友指点!