fvs数据集有参数,我为参数赋值为公式,公式中用到sql()函数和value函数失效,函数返回值为空

如题屏幕截图 2025-08-22 160810.png公式在评论里,说是有安全问题发不到题目中

FineReport GGBoy 发布于 2025-8-22 16:04 (编辑于 2025-8-22 16:12)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
snrtuemcLv8专家互助
发布于2025-8-22 16:05

看你怎么写,sql贴出来

  • GGBoy GGBoy(提问者) 在上面了

    2025-08-22 16:09 
  • GGBoy GGBoy(提问者) if(SQL("dws_dm_prd","SELECT count(index_value) sl FROM dm_pro_power_xhfzjc_data_d_i WHERE org_name IN ('锦州热电') AND index_name ='实时电价' AND stat_time >=date_trunc('day', CURRENT_DATE-interval '1 day')::TIMESTAMP AND stat_time < CURRENT_DATE::TIMESTAMP and index_value>0 ",1)>0,"实时电价","日前电价")
    2025-08-22 16:12 
  • snrtuemc snrtuemc 回复 GGBoy(提问者) 这个,你先sql语句直接运行,看看有没有值,,正常不管有没有,肯定会有赋值的啊
    2025-08-22 16:13 
  • GGBoy GGBoy(提问者) 我把if删除了然后模拟计算返回值为空,但是把这段sql粘贴到数据集里就有返回值
    2025-08-22 16:13 
  • snrtuemc snrtuemc 回复 GGBoy(提问者) dws_dm_prd这个是数据库连接名称,对吗,你的语句是没有问题的
    2025-08-22 16:17 
最佳回答
0
ScyalcireLv7高级互助
发布于2025-8-22 17:11(编辑于 2025-8-22 17:12)

先测试 sql() 单独执行是否返回值,再结合 value() 等函数逐步排查

-----------------

sql改一下试试

sql.rar

需验证:

第一,确保帆软使用的数据库用户,对 sql() 中涉及的表/视图有‌查询权限

  1. 第二,数据源 dws_dm_prd 在配置中心中存在且连接正常。

  2. 第三,表 dm_pro_power_xhfzjc_data_d_i 存在,且字段 org_name、index_name、stat_time、index_value 存在。

  3. 第四,SQL语句需返回‌一行一列‌的结果(如 SELECT COUNT(*) FROM 表名)。若返回多行或多列,函数会返回空或报错

第五,若SQL中引用了fvs数据集的参数(如 WHERE id = ${param}),需确保参数名称与fvs参数配置一致,且参数值已正确传递

  • GGBoy GGBoy(提问者) 找到原因了,是帆软公式模拟计算的问题,不识别我的数据库函数,我用的华为数据库,部分函数他没识别所以模拟计算没数据,但是预览是有值的
    2025-08-26 09:56 
  • 3关注人数
  • 46浏览人数
  • 最后回答于:2025-8-22 17:12
    请选择关闭问题的原因
    确定 取消
    返回顶部