JS自定义提交按钮,参数赋值后的值无法及时传递到填报属性

1、控制面板:参数update_type,默认值是12、JS自定义提交按钮:点击后 把update_type参数的值修改为“upsert”后提交。

_g().parameterEl.getWidgetByName("update_type").setValue("upsert");//update_type参数值赋值为upsert

var update_type=_g().parameterEl.getWidgetByName("update_type").getValue();//获取修改后update_type的参数值_g().verifyAndWriteReport();//校验并提交3、填报属性的提交条件:$update_type="upsert"。困难:步骤3的条件一直提示不满足。setValue后要点击查询后,如果不点查询,填报属性获取到的参数还是初始化的1。需求:希望这个自定义提交按钮,可以不要点击查询,就可以将赋值后的值传入填报属性和成功提交

FineReport 叶童鞋 发布于 2022-3-12 11:51
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
axingLv6专家互助
发布于2022-8-9 23:46

_g().setCellValue(1,0,0,"upsert");

这样给单元格赋值,然后填报属性引用单元格

最佳回答
0
CD20160914Lv8专家互助
发布于2022-3-12 12:08

加一句测试看看加到你js的最后

this.options.form.getWidgetByName("update_type").fireEvent("afteredit");

  • 叶童鞋 叶童鞋(提问者) 报表主体的单元格还是无法获得到赋值后的参数值
    2022-03-12 17:17 
最佳回答
0
luojian0323Lv7资深互助
发布于2022-3-12 12:11

你可以把这个参数值 赋值给填报单元格,填报单元格隐藏对应的行或者列。

填报属性根据单元格的值作为提交条件。

  • 叶童鞋 叶童鞋(提问者) 这个方案是可以的,但是性能比较差。如果可以直接取赋值后的参数做判断就更好,就是获取不到赋值后的参数值。
    2022-03-12 17:18 
  • luojian0323 luojian0323 回复 叶童鞋(提问者) 你对比过吗?怎么知道性能较差?参数面板上的值必须查询后才生效。 况且给参数面板上的控件赋值和给单元格赋值,对于js来说是一样的。
    2022-03-13 10:52 
  • weiming47 weiming47 你好。我把参数值赋值给单元格,然后读取单元格直接提交给数据库,可还有有一样的问题,提交的是单元格的初始值,而不是更新后的值。
    2022-03-22 16:37 
  • 4关注人数
  • 639浏览人数
  • 最后回答于:2022-8-9 23:46
    请选择关闭问题的原因
    确定 取消
    返回顶部