数据集SQLwhere过滤某个单元格报错

image.png

如图BU是来自数据集1,我新建了一个数据集2,我想过滤G3(已设置成扩展)这个单元格。我直接在数据集2 写Where BU!=G3  报错  要如何修改呢

FineReport 用户z6964992 发布于 2021-9-1 14:44
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共5回答
最佳回答
0
烟尘Lv6高级互助
发布于2021-9-1 14:46(编辑于 2021-9-2 09:35)

数据集的执行顺序是优先于单元格的,在模版最开始加载时,单元格对象还没有值,数据集就已经执行完毕了,此时单元格参数都是空值。

要想实现你的需求,就要想办法在单元格有值之后,在不刷新页面的情况下再执行一次带参数的sql

两个办法,都有局限性:

1、单元格控件使用数据字典,数据字典来源于数据集,每次参数改变,控件的数据字典内容就会刷新。

2、在公式里或者js里使用sql函数,根据参数变化查出想要的结果

  • 用户z6964992 用户z6964992(提问者) 那要怎么实现,因为我想实现一功能,就是我做的是填报界面,我想计数数据库SQL中已有的数据减去要导入的数据(这部分数据主键有的和数据库是一样),然后分类计数。那这样要怎么实现?
    2021-09-01 15:00 
  • 烟尘 烟尘 回复 用户z6964992(提问者) 导入?提交之前?实现不了。导入的时候是不会触发模版函数的
    2021-09-01 15:03 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2021-9-1 14:46

报什么错?

最佳回答
0
snrtuemcLv8专家互助
发布于2021-9-1 14:46

至少是

Where BU!='${G3}'

估计也报错,G3是扩展的

  • 用户z6964992 用户z6964992(提问者) 这个我之前试过了,报错没有,就是没结果
    2021-09-01 15:01 
  • snrtuemc snrtuemc 回复 用户z6964992(提问者) 单元格生成晚于数据集取数,没效果的,放弃把
    2021-09-01 15:04 
最佳回答
0
NellieLv4见习互助
发布于2021-9-1 14:49

数据集写SQL的时候就把原本符合G3条件的数据去除掉,可以去搜一搜这类SQL怎么写,不要用单元格值过滤

  • 用户z6964992 用户z6964992(提问者) 现在的问题是我做的是填报表,我要过滤导入的数据和数据库属于一样的数据,然后分类计数
    2021-09-01 15:02 
最佳回答
0
IndustryPaysLv6见习互助
发布于2021-9-1 15:09

A列获取t1数据集数据,B列获取t2数据集数据,C列写公式计算比较

  • 5关注人数
  • 373浏览人数
  • 最后回答于:2021-9-2 09:35
    请选择关闭问题的原因
    确定 取消
    返回顶部