永洪社区

标题: 脚本执行 [打印本页]

作者: zdq    时间: 2022-1-26 17:34
标题: 脚本执行
可以让脚本延迟执行吗  有相应的函数吗
作者: 环环    时间: 2022-1-26 17:43
刚打开报告时都会执行的,如果是变化时运行的脚本,做了筛选或者刷新的操作也会立刻执行,没有操作的情况下会根据实时刷新的间隔来执行。说下需求呢,是有什么特殊场景吗
作者: zdq    时间: 2022-1-27 09:37
永洪tech-秀秀 发表于 2022-1-26 17:43
刚打开报告时都会执行的,如果是变化时运行的脚本,做了筛选或者刷新的操作也会立刻执行,没有操作的情况下 ...

你好  我这里就是有个富文本框里面用到的一些参数的值是从一个交叉表来获取的 ,当进行了筛选操作或刷新操作  ,交叉表数据改变  我需要在变化时运行脚本里重新给参数赋值  但这次赋值还是筛选操作或刷新操作之前的数据,参数值并没有改变 (交叉表数据还没刷新完成,赋值脚本就执行了)
作者: 环环    时间: 2022-1-27 09:43
获取表格数据的时候用exists方式判断一下,参考如下
var a=getViewData("图表1")
if(a!=null &&a.exists(1,-1,true)){
param['a']=a.get(1,1)   //获取表格第2行第2列的数据,表格行列数从0开始计算
}
作者: zdq    时间: 2022-1-27 10:01
永洪tech-秀秀 发表于 2022-1-27 09:43
获取表格数据的时候用exists方式判断一下,参考如下
var a=getViewData("图表1")
if(a!=null &&a.exists(1, ...

这个exists()函数只是判断数据存不存在  第一次已经加载过数据了  变化时运行的脚本每次判断都为true  主要是现在变化时运行的脚本早于交叉表数据更新完成之前就执行了  请问我这种场景有其它解决的办法吗
作者: 环环    时间: 2022-1-27 10:11
表的视图是重新加载的,可以先试一下
作者: zdq    时间: 2022-1-27 10:14
永洪tech-秀秀 发表于 2022-1-27 10:11
表的视图是重新加载的,可以先试一下

数据库视图吗?
作者: 环环    时间: 2022-1-27 10:21
交叉表的视图数据,就是交叉表显示的数据
作者: 永洪tech-Bella    时间: 2022-1-27 10:27
clearData("表1")
获取组件数据的脚本前面加一句这个,再试试看能否获取到最新数据呢
表1  换成组件的名字,从哪个组件获取数据,这里就写这个组件的名字
作者: zdq    时间: 2022-1-27 11:32
永洪tech-Bella 发表于 2022-1-27 10:27
clearData("表1")
获取组件数据的脚本前面加一句这个,再试试看能否获取到最新数据呢
表1  换成组件的名字 ...

好的  请问这个函数获取出来的真正数据如何得到呢
作者: 环环    时间: 2022-1-27 11:43
这样子是将选中的值获取到数组a里面,a[0]表示数组中第一个,看获取到要怎么用呢
var a=下拉列表参数1.getSelectedObjects()
作者: _YH_lashi    时间: 2022-1-27 14:21
function manual_timer_useloop2(interval_manual){  var timestart = new Date().getTime();  while(true){ timecur = new Date().getTime(); var dif = timecur-timestart; if(dif > interval_manual) break; }  }
作者: _YH_lashi    时间: 2022-1-27 14:22
没办法Thread.sleep ,所以只能 空转 了

  1. function manual_timer_useloop2(interval_manual){

  2. var timestart = new Date().getTime();

  3. while(true){
  4. timecur = new Date().getTime();
  5. var dif = timecur-timestart;
  6. if(dif > interval_manual)
  7. break;
  8. }

  9. }
复制代码

作者: _YH_lashi    时间: 2022-1-27 14:22
yhdata_yTOX2xbw 发表于 2022-1-27 14:22
没办法Thread.sleep ,所以只能 空转 了

manual_timer_useloop2(9999)
作者: 环环    时间: 2022-1-27 14:54
      
作者: zdq    时间: 2022-1-27 17:21
已经通过报表的刷新功能实现,谢谢大佬们提供的帮助{:11:}{:11:}{:11:}
作者: zdq    时间: 2022-1-27 17:25
yhdata_yTOX2xbw 发表于 2022-1-27 14:22
manual_timer_useloop2(9999)

还能自定义函数啊  学到了  谢谢大佬{:20:}{:20:}
作者: 环环    时间: 2022-1-27 17:28
         




欢迎光临 永洪社区 (https://club.yonghongtech.com/) Powered by Discuz! X3.4