获取当前行数据,写表问题

//下面JS执行没报错,但数据没写进表里

var count = ds1.select(#0)

for (var i = 0; i < count; i++) {

    var F = 'F' + (2 + i)

    var G = 'G' + (2 + i)

    var valueA1 = _g().getWidgetByName('report10').getCellValue(F);

    var valueA2 = _g().getWidgetByName('report10').getCellValue(G);

    var uuid = FR.remoteEvaluate("=UUID()");

    // 构建SQL语句

    var sql = "INSERT INTO TEST (uGUID,A,B) VALUES ('" + uuid + "', '" + valueA1 + "','" + valueA2 + "')";

    // 执行SQL语句

FR.remoteEvaluate('=SQL("DEMOTEST","' + sql + '",1,1)');

}

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

你这语法是自己写的??语法 都不对

这是什么鬼?

var count = ds1.select(#0)

如果要获取报表扩展出来的行,参考下面的语句!

var _obj = $(".x-table tr");

var count  = _obj.length;   //获取扩展出来的所有行!

最佳回答
0
用户k6280494Lv6专家互助
发布于2024-12-18 12:00(编辑于 2024-12-18 12:01)

这个要放在参数栏哪里

count  ds1.select(字段名称),ds1是你单元格扩展数据集名称

image.png

for (var i = 0; i < count; i++) {

    var F = 'F' + (2 + i)

    var G = 'G' + (2 + i)

    var valueA1 = _g().getWidgetByName('report10').getCellValue(F);

    var valueA2 = _g().getWidgetByName('report10').getCellValue(G);

    var uuid = FR.remoteEvaluate("=UUID()");

    // 构建SQL语句

    var sql = "INSERT INTO TEST (uGUID,A,B) VALUES ('" + uuid + "', '" + valueA1 + "','" + valueA2 + "')";

    // 执行SQL语句

FR.remoteEvaluate('=SQL("DEMOTEST","' + sql + '",1,1)');

}

  • yyfnet yyfnet(提问者) ds1.select(字段) //执行不报错,但是表里没写入,这里的字段是否是数据集任意字段?
    ds1.select(#0) //能写入表,不过不说当前行的值,如果点第4行,就写入1-4行数据。
    2024-12-18 12:45 
  • 用户k6280494 用户k6280494 回复 yyfnet(提问者) 任意字段
    2024-12-18 13:00 
  • 用户k6280494 用户k6280494 回复 yyfnet(提问者) 改成count(ds1.select(字段))
    2024-12-18 13:01 
  • yyfnet yyfnet(提问者) 回复 用户k6280494 改成count(ds1.select(字段))后,点击任意行,写入的都是第一行的值,奇怪了
    2024-12-18 13:12 
  • 用户k6280494 用户k6280494 回复 yyfnet(提问者) 你是要单行写入?
    2024-12-18 13:21 
  • 3关注人数
  • 46浏览人数
  • 最后回答于:2024-12-18 12:01
    请选择关闭问题的原因
    确定 取消
    返回顶部