关于参数的我认为可能时BUG的问题

我设置了一个参数$org,用下拉列表来对参数进行设置,下拉列表控件设置了默认值,然后执行报表后可以正确的查询,但是使用js获取参数值并输出的话就会一直都是默认值,但是查询筛选却能正确使用。

image.pngimage.png

就是这个,它的输出结果一直都是上面设置的控件默认值,但是控件实际上改变了而且也能够正确查询。然后,如果我直接获取空间的值的话又是可以的

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

这个不是bug

1、如果你是写在参数面板上,再按你上面截图的方式使用了公式去获取变量的值,那么不好意思。这种方式不会获取到变量修改的值。它只会获取到下拉框最初的默认值,假如你的下拉框没有设置默认值,那么它会一直获取不到参数框的值

2、你截图的这种方式一般是在单元格中使用。比如你单元格里面有一个按钮或者单元格超连接写了一个JavaScript脚本,那么你点击查询后。。。它会获取到参数的值。这个没有问题

3、参数面板上面获取值直接使用:

var a=_g().parameterEl.getWidgetByName('org').getValue(); //所有地方都可以用

var a =this.options.form.getWidgetByName("org").getValue()//写在参数面板里,就只能获取参数面板里的组件, 写在 body 里,就只能获取body 里的组件

image.png

  • 普普通通的len 普普通通的len(提问者) 就是设定上就是这样的对吗?获取控件值我倒是知道,只是以为是bug就说说
    2022-01-26 13:44 
  • CD20160914 CD20160914 回复 普普通通的len(提问者) 不是bug。。。参数面板不能用公式这种方式。放在单元格的话就可以的。
    2022-01-26 13:45 
  • CD20160914 CD20160914 回复 普普通通的len(提问者) 你可以仔细看一下我上面说的。。。参数面板里面如果用公式获取控件的值。。它是不会更新的。单元格可以是因为你点击了查询它重算了才有值。所以能够获取到
    2022-01-26 13:46 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2022-1-26 11:47(编辑于 2022-1-26 11:54)

首先你 的JS是写在什么事件上的?其次 JS里面不要都用org嘛(参数名是org值也来自参数org,太不规范了......)

image.png

  • 普普通通的len 普普通通的len(提问者) 点击后时间,放在查询按钮里的
    2022-01-26 11:49 
  • 普普通通的len 普普通通的len(提问者) 而且就算改一下变量名也不行
    2022-01-26 11:50 
  • Z4u3z1 Z4u3z1 回复 普普通通的len(提问者) 看补充的图
    2022-01-26 11:54 
  • 普普通通的len 普普通通的len(提问者) 回复 Z4u3z1 这样可以,上面不是说直接获取控件值是没问题的吗,我只是想反应以下可能是bug的问题
    2022-01-26 13:43 
  • Z4u3z1 Z4u3z1 回复 普普通通的len(提问者) 如果你认为是bug的话 可以直接拉到页面下边 联系社区管理员或者 联系帆软反馈。这儿 关于你的这个问题的回复都是猜测,你最好直接联系官方看他们怎么解释
    2022-01-26 14:04 
最佳回答
0
浪兔Lv7初级互助
发布于2022-1-26 11:47

请问你用的是什么事件

  • 普普通通的len 普普通通的len(提问者) 点击后时间,放在查询按钮里的
    2022-01-26 11:49 
  • 浪兔 浪兔 回复 普普通通的len(提问者) 你给他一个延时看看。
    2022-01-26 12:13 
最佳回答
0
快乐星光Lv5中级互助
发布于2022-1-26 13:43

如果你用的是面板自带的那个查询按钮,那就不是bug。那个按钮自带的查询功能,一般来说他首先执行查询过程,然后再执行你的点击事件里面的js,具体的过程我也不太清楚。

不过有办法可以解决你这个问题,你不要用这个查询按钮,新加一个按钮,在这个按钮点击时间里面添加查询事件和其他js,让他按js顺序执行就不会有错。

  • 普普通通的len 普普通通的len(提问者) 新增的按钮也是这样,获取参数就会一直是这个参数初始化的值,获取控件值就没问题
    2022-01-26 13:45 
  • 快乐星光 快乐星光 回复 普普通通的len(提问者) 你试一下动态参数,获取参数值应该会变化。
    2022-01-26 13:52 
最佳回答
0
Doctor_WeiLv7中级互助
发布于2022-1-26 14:01

你要这样想

什么时候参数才会发生变化?????

什么时候参数才会生效????

---点击查询的时候,所以如果你想用参数的形式获取参数改变后的值,你就得点击查询,

不然你想获取参数的值,只能通过获取控件的值的形式获取过来。

--注意区分参数、控件。。。严格意义上来说这是两个事

  • 普普通通的len 普普通通的len(提问者) 嗯,我就是放在了查询按钮的点击事件里,或者新增按钮_g().parameterCommit();也不行
    2022-01-26 14:10 
  • 5关注人数
  • 508浏览人数
  • 最后回答于:2022-1-26 14:01
    请选择关闭问题的原因
    确定 取消
    返回顶部