按钮点击事件中,sql返回结果undefined,但在同事电脑上能返回正确值。

js中sql返回结果undefined,但在同事电脑上能返回正确结果,请问是什么原因?代码如下:

// yearmonth和floorname是控件的变量名

var yearmonth = _g().getParameterContainer().getWidgetByName("YearMonth").getValue(); // 获取yearmonth控件的值

var floorname = _g().getParameterContainer().getWidgetByName("floor").getValue(); // 获取floor控件的值

// 构造SQL查询语句,用于检查是否存在匹配的数据

var cx = "=SQL(\"erp_jnhyc\",\"select count(*) from t_dw_sales_tb where sale_day = '" + yearmonth + "' and floor_name = '" + floorname + "'\",1,1)";

alert(cx)

var result = FR.remoteEvaluate(cx);

alert(result);

if (result > 0) {

// 如果存在匹配数据,提示用户

FR.Msg.alert("提示", "已存在数据");

} else {

// 如果不存在匹配数据,可以进行其他操作

FR.Msg.alert("提示", "数据不存在,可以填报");

}

FineReport M4H5mKPZ 发布于 2024-5-24 17:08
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
M4H5mKPZLv2见习互助
发布于2024-5-27 11:54

找到原因了,var cx = "=SQL(\"erp_jnhyc\",这里应该填数据集的名称,而不是数据库的名称,文档里都写的是数据库名称,被误导了。

最佳回答
0
F-LeonLv3见习互助
发布于2024-5-24 17:12

在JS中使用FR公式

要配置一下哦

  • M4H5mKPZ M4H5mKPZ(提问者) 谢谢,试了,还是没用。
    2024-05-24 17:19 
  • F-Leon F-Leon 回复 M4H5mKPZ(提问者) FR.remoteEvaluate('=sql()'),单引号试试呢
    2024-05-24 17:24 
  • M4H5mKPZ M4H5mKPZ(提问者) 回复 F-Leon var result=FR.remoteEvaluate('=sql("erp_jnhyc","select count(*) from t_dw_sales_tb where sale_day = \''+ yearmonth + '\' and floor_name = \'' + floorname + '\'",1,1)'); alert(result); 一样报错
    2024-05-24 17:34 
  • F-Leon F-Leon 回复 M4H5mKPZ(提问者) 你可以换个帆软自带的数据表查一下,确定一下是这个函数问题还是你sql问题,防火墙关一关看看,
    2024-05-24 17:37 
  • M4H5mKPZ M4H5mKPZ(提问者) 回复 F-Leon 我同事电脑上就正常,说明表和sql都没问题啊
    2024-05-24 17:39 
  • 1关注人数
  • 121浏览人数
  • 最后回答于:2024-5-27 11:54
    请选择关闭问题的原因
    确定 取消
    返回顶部