请问如何调用存储过程,并将结果展示在report中

版本:10.0

【需求】设计一个按钮,点击一下即可执行一次存储过程,同时在report中将执行后的结果展示出来。

数据库是mysql,存储过程主要内容是建表并根据条件插入数据,没有参数

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

【目前】在fr中添加了按钮控件,设置了点击事件如下:

var sql="exec 存储过程名 ";

var res=FR.remoteEvaluate('=sql("数据连接名","'+sql+'",1,1)');

点击后,没有反应,存储过程数据集预览也没有东西。决策平台中的脚本调用公式限制已关闭。

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

看了一些问答帖,但是还是不太明白,求助解答!感谢!

FineReport haha11 发布于 2023-12-12 09:52 (编辑于 2023-12-12 10:12)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
1
Z4u3z1Lv6专家互助
发布于2023-12-12 09:54(编辑于 2023-12-12 10:33)

var sql="exec sp_rms_select_0460 "+FUNDCODE+","+DATE+","+STATUS;

alert(sql);

aler一下看看参数传递正确不?

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

var sql_="exec 存储过程名";

var a=FR.remoteEvaluate('SQL("连接名", "'+sql_+'", 1, 1)');

  • haha11 haha11(提问者) 抱歉,我没太看明白这句SQL的含义,看着问答有写就加上啦,我的存储过程里没有参数。按照您说的修改了,没有输出,不太清楚自己哪里整错了,日志也是空
    2023-12-12 09:59 
  • Z4u3z1 Z4u3z1 回复 haha11(提问者) dbbasedata 有这个数据连接名么?
    2023-12-12 10:06 
  • haha11 haha11(提问者) 谢谢您的提醒,我修改了点击事件的部分,因为我没有参数,因而把点击事件改为了var sql=\"exec 存储过程名 \"; var res=FR.remoteEvaluate(\'=sql(\"数据连接名\",\"\'+sql+\'\",1,1)\');不过还是没有反应
    2023-12-12 10:11 
  • haha11 haha11(提问者) 回复 Z4u3z1 有的有的,我这里对应写的是数据连接的名字
    2023-12-12 10:13 
  • haha11 haha11(提问者) 谢谢您一直回复我~考虑到我没有参数,我刚刚把按钮控件的点击事件,改为了var res=FR.remoteEvaluate(\'=sql(\"数据连接名\",\"exec 存储过程名\",1,1)\'); 然后把存储过程生成的表通过数据库查询获取,然后字段拖到report中,请问这样是对的吗?
    2023-12-12 10:18 
最佳回答
0
JL98Lv6中级互助
发布于2023-12-12 09:54

你插入之后可以在写一个查询语句,在数据库测试一下执行后有没有结果输出

最佳回答
0
用户k6280494Lv6资深互助
发布于2023-12-12 09:55(编辑于 2023-12-12 09:55)

这种写法没毛病啊,我9.0测试正常,你存储过程要有返回值

  • haha11 haha11(提问者) 请问,返回值具体是什么意思,要怎么设置呀
    2023-12-12 10:00 
  • haha11 haha11(提问者) 请问方便看一下您的设置以及预览截图吗?
    2023-12-12 10:01 
  • 3关注人数
  • 241浏览人数
  • 最后回答于:2023-12-12 10:33
    请选择关闭问题的原因
    确定 取消
    返回顶部