如何在参数面板添加一个点击按钮,添加js点击事件,运行一段sql

如何在参数面板添加一个点击按钮,添加js点击事件,执行一段sql,从而改变数据库里的内容

var sql ="UPDATE aa SET abc = '123' WHERE Year = '2024'";

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

alert("测试成功0")

如何修改,如何解决请各位大佬帮忙看看

image.png

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

把你更新的写到存储过程中去。然后按钮调用存储过程就行了

var mycode=this.options.form.getWidgetByName('mycode').getValue(); //获取参数

var mydate=this.options.form.getWidgetByName('mydate').getValue(); 

var STATUS=this.options.form.getWidgetByName('STATUS').getValue(); 

var sql="exec test_aa_cc "+mycode+","+mydate+","+STATUS;

var res=FR.remoteEvaluate('=sql("dbbasedata","'+sql+'",1,1)');

//比如你获取参数。再调用参数。你的存储过程要有一个接收参数的写法

var ymd=this.options.form.getWidgetByName('ymd').getValue();//获取参数 

var sql="exec UpdateDataForDate '"+ymd+"'";//拼接存储名称与参数 

var res=FR.remoteEvaluate('=sql("sqlserver_testaa","'+sql+'",1,1)');//执行

alert("已执行数据更新")

弄一个按钮,给一个点击事件

image.png

  • CYJXJ CYJXJ(提问者) 您好,是在我上面补充图里添加存储过程还是直接写到js点击事件里面?我上面的语句应该不要参数吧,是不是直接写存储名称就行?
    2024-11-01 14:11 
  • CD20160914 CD20160914 回复 CYJXJ(提问者) 对的呀。
    2024-11-01 14:11 
  • CD20160914 CD20160914 回复 CYJXJ(提问者) 只要你的存储过程写正确 。而且能够接收参数就行了。我上面的是sql server调用存储的方法。如果是oracel的话要把exec换成call
    2024-11-01 14:12 
  • CYJXJ CYJXJ(提问者) 回复 CD20160914 mysql的呢?
    2024-11-01 14:13 
  • CD20160914 CD20160914 回复 CYJXJ(提问者) 也是用call
    2024-11-01 14:13 
最佳回答
0
华莉星宸Lv7资深互助
发布于2024-11-1 14:04

现在不允许直接执行update了

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

改成存储过程

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

var res=FR.remoteEvaluate('=sql("dbbasedata","'+sql+'",1,1)');

=====解释说明

var sql="exec 存储过程名称 "+参数1+","+参数2+","+参数3;

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

  • CYJXJ CYJXJ(提问者) 您好,是在我上面补充图里添加存储过程还是直接写到js点击事件里面?不太了解,然后我上面的语句应该不要参数吧,没有参数呢
    2024-11-01 14:09 
  • 华莉星宸 华莉星宸 回复 CYJXJ(提问者) 在数据库里面把存储过程写好,点击的时候 直接调用存储过程就行了。没有参数 直接 var sql="exec 存储过程名称 "
    2024-11-01 14:13 
  • 4关注人数
  • 128浏览人数
  • 最后回答于:2024-11-1 14:09
    请选择关闭问题的原因
    确定 取消
    返回顶部