如何使用复选框控件实现动态列

blob.png

问题如图所示,大佬们指导一下..

FineReport STT 发布于 2019-2-12 19:04
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
cherishdqyLv7高级互助
发布于2019-2-13 08:28

复选框的值是布尔型,false或true

你这个报表最简单的方法就是直接判断参数隐藏列

在同期环比那几个单元格里直接用条件属性判断,如实销:

在L4单元格添加条件属性-列宽为0,条件用公式:$fsum=false

image.png

  • STT STT(提问者) 谢谢女神,测试过确实可行
    2019-02-13 09:33 
最佳回答
0
圣体叶小凡Lv6高级互助
发布于2019-2-12 19:50(编辑于 2019-2-12 19:55)

因为你这里有逗号,你看一下,你这里是空的话,那就变成了 select ,,,, date***** from  表,这样肯定报错,你需要判断情况,然后想办法把逗号给处理了······


select 

${if(len(fsum)=0,"","fsum,")}

${if(len(d2d)=0,"","d2d,")}

${if(len(fsum_ly)=0,"","fsum_ly,")}

${if(len(dod)=0,"","dod,")}

${if(len(yoy)=0,"","yoy,")}

dates.surdate FROM  表    ,自己吧那几个动态列替换一下,替换成我上面写的这个


  • STT STT(提问者) 如果复选框控件fsum 没有选中 len(fsum)=0???主要是不太知道这个复选框控件返回的值是什么
    2019-02-12 20:29 
  • 圣体叶小凡 圣体叶小凡 回复 STT(提问者) if(len(fsum)=0,\"\",\"fsum,\") 如果 fsum的长度是0,那就运行\"\", 如果长度不是0,那就运行 \"fsum,\" 这个
    2019-02-12 21:04 
  • STT STT(提问者) 回复 圣体叶小凡 灰常感谢小凡的耐心解答,emmm...女神的方案更简单一些
    2019-02-13 09:35 
  • 圣体叶小凡 圣体叶小凡 回复 STT(提问者) 我忘了页面也要判断隐藏了,因为要一开始全部拖出去,然后再隐藏
    2019-02-13 09:38 
  • 3关注人数
  • 976浏览人数
  • 最后回答于:2019-2-13 08:28
    请选择关闭问题的原因
    确定 取消
    返回顶部