JS里面写删除SQL不生效

var form = this.options.form;

var id = form.getWidgetByName("id").getValue();

var isSettle = form.getWidgetByName("settle").getValue();

var sqlStr = "SQL(\"test\",\"delete from HTTZMain where tNumber = '"+id+"'\",1,1)";

//alert(id);

if (id.length <= 0) {

FR.Msg.alert("提示", "请选中行!");

} else if (isSettle == "1") {

FR.Msg.alert("提示", "已审核");

} else 

{

FR.remoteEvaluate(sqlStr);

setTimeout(function() {

_g().refreshAllSheets();

}, 200);

}

FineReport 帆软用户0UXi4asqKU 发布于 2024-7-11 11:18
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共6回答
最佳回答
0
华莉星宸Lv7专家互助
发布于2024-7-11 11:23

不支持直接删除了

建议把删除操作写到存储过程里面

JS在调用存储过程

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

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

  • 帆软用户0UXi4asqKU 帆软用户0UXi4asqKU(提问者) 好像还是不行: FR.Msg.confirm("警告","确定要删除吗?",function(value){ if(value){ var sql = "exec delete "+id+""; //alert(sql); var res = FR.remoteEvaluate('=sql("test","'+sql+'",1,1)'); FR.Msg.toast("删除成功!"); location.reload(); _g().refreshAllSheets() } },100) -------------------------- ALTER PROCEDURE [dbo].[delete] @id varchar(200) AS BEGIN SET NOCOUNT ON; DELETE FROM HTTZ where tNumber = @id DELETE FROM HTTZMain where tNumber = @id select 1 END
    2024-07-11 13:46 
最佳回答
0
用户k6280494Lv6专家互助
发布于2024-7-11 11:19(编辑于 2024-7-11 11:23)

在JS中使用FR公式

FR.remoteEvaluate('=sql("test","delete from HTTZMain where tNumber =\''+id+'\'",1,1)');

最佳回答
0
snrtuemcLv8专家互助
发布于2024-7-11 11:21

写法没有问题

先alert(sqlStr);  看看sql语句对不对

最佳回答
0
Z4u3z1Lv6专家互助
发布于2024-7-11 11:22

需要用返回的数据集

你用存储过程删,并在存储过程最后select 1

最佳回答
0
123木头人1Lv5初级互助
发布于2024-7-11 11:29(编辑于 2024-7-11 11:31)

有可能限制了高危操作,finedb库的FINE_CONF_ENTITY表,增加一条id=JDBCSecurityConfiguration.sqlWhiteFunction,value 值的格式是 ['keyword1','keyword2']的数据。

"attach" "create" "drop" "benchmark" "alter" "xp_dirtree" "merge" "insert" "delete" 这些字段是默认禁用的。

value格式为:["attach","create","drop","benchmark","alter","xp_dirtree","merge","insert","delete"]

最佳回答
0
ID1208Lv6高级互助
发布于2024-7-11 11:31

image.png

  • 6关注人数
  • 205浏览人数
  • 最后回答于:2024-7-11 11:31
    请选择关闭问题的原因
    确定 取消
    返回顶部