永洪社区

标题: 数据刷新问题 [打印本页]

作者: 小宝    时间: 前天 08:36
标题: 数据刷新问题
本帖最后由 小宝 于 2024-10-30 08:36 编辑

一张驾驶舱多个数据集,多个图表,能否限制某个图表不参与数据刷新
有个实时滚动的表格,没有完全滚动完毕就重新开始了,不参与数据刷新的话,可以一直滚动

作者: yhbi老6了    时间: 前天 08:36



  1. // 控制滚动的脚本 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
  2. function aa(table_name,now_indx,res_,show_rows){
  3.         //debug(table_name)
  4.         var datawait=getViewData(table_name)
  5.         var getwait  = []; //暂存数组
  6.         if(  ! isNull(datawait) && ! isNull(datawait.size())){
  7.                 //addHint(datawait.size())
  8.                 if(datawait.size() <= show_rows){ // 如果数据量少于等于10条(其中第一条是表头),直接显示
  9.                         for(var i = 1 ; i < datawait.size(); i++){
  10.                            getwait.push(datawait.get(i,0))
  11.                         }
  12.                         //debug(getwait.join(','))
  13.                         param[res_]=getwait;
  14.                 }else{ // 如果数据量大于11等于10条,根据索当前轮播的索引,每次刷新取更替后的9条(9条为show表的长度)
  15.                         for(i=0;i<show_rows;i++){
  16.                                 //debug(table_name+'  :'+param[now_indx])
  17.                                 getwait.push(datawait.get(param[now_indx]+i,0))
  18.                         }
  19.                         param[res_]=getwait;
  20.                         // addHint(getwait.length)
  21.                         if(param[now_indx] >= datawait.size()-show_rows){  // 判断索引是不是已经等于数组长度,等于则'归零',否则索引加1
  22.                                 param[now_indx] = 1
  23.                         }else{
  24.                                 param[now_indx] = param[now_indx] + 6;
  25.                         }
  26.                 }
  27.         }
  28. }
  29. aa('图表1','forjcnum',"getjcname",9)
  30. //debug(param['getjcname'])
复制代码





作者: yhbi老6了    时间: 前天 09:20
可否对需要刷新的组件进行设置刷新,其他都不做刷新?并且不做报告级别的刷新
作者: 小宝    时间: 前天 09:32
yhbi老6了 发表于 2024-10-30 09:20
可否对需要刷新的组件进行设置刷新,其他都不做刷新?并且不做报告级别的刷新 ...

这里边比较复杂,设计一些全局的脚本,控制下拉参数组件,下拉参数组件是没法单独设置自动刷新的
作者: yhdata_lyaa    时间: 前天 09:35
设置数据刷新大于滚动播放完的时间呢
作者: yhbi老6了    时间: 前天 09:41
嗯,了解。我这边做过类似的需求。有一个思路,实现稍微复杂点,可以给你一下:复制那个滚动的表格,做一个数据隐藏表(拉小表大小即可隐藏)。然后再在脚本中,按索引读取数据隐藏表的数据,读取滚动表行数的n+5条放进数组中。然后将数组赋值给参数。滚动表组件的过滤器做参数限制。以达到保持刷新后,滚动表的索引还是在原来的位置。
注意点有:两个表的排序必须一致(避免滚动乱序问题)。刷新需要传递索引变量,判断需要做好防止索引越界问题。
作者: 小宝    时间: 前天 09:47
yhdata_lyaa 发表于 2024-10-30 09:35
设置数据刷新大于滚动播放完的时间呢

表格内容比较多,全部滚动完时间太久了
作者: 小宝    时间: 前天 09:49
yhbi老6了 发表于 2024-10-30 09:41
嗯,了解。我这边做过类似的需求。有一个思路,实现稍微复杂点,可以给你一下:复制那个滚动的表格,做一个 ...

相当于每次刷新还是从头来,但是初始行数会循环加5条?
作者: yhbi老6了    时间: 前天 10:16
简单做个10.2的demo给你吧,毕竟我有现成的脚本

作者: yhbi老6了    时间: 前天 10:17
1
作者: yhbi老6了    时间: 前天 10:18
看不看得懂,就看你it功底啦
作者: 小宝    时间: 前天 10:29
yhbi老6了 发表于 2024-10-30 10:18
看不看得懂,就看你it功底啦

好的,多谢大佬
作者: 小宝    时间: 前天 10:31
本帖最后由 小宝 于 2024-10-30 10:33 编辑



作者: yhbi老6了    时间: 前天 10:32
啊哈?你版本多少?或者你装一个10.2desktop版本看一下?
作者: 小宝    时间: 前天 10:33
yhbi老6了 发表于 2024-10-30 10:32
啊哈?你版本多少?或者你装一个10.2desktop版本看一下?

我版本10.1.3
作者: yhbi老6了    时间: 前天 10:35
10.1 我还真没有,只有9.0.4 和10.2,考虑下载一个吧
作者: 小宝    时间: 前天 10:36
yhbi老6了 发表于 2024-10-30 10:35
10.1 我还真没有,只有9.0.4 和10.2,考虑下载一个吧

我私信您了,脚本那块可否截图给看下
作者: yhbi老6了    时间: 前天 10:44
本帖最后由 yhbi老6了 于 2024-10-30 10:47 编辑

我设置表格一次展示3条,轮播间隔是3,报告刷新时长是12。每次报告刷新,索引+6(代码第24行),过滤器限制加载9条。函数大部分不用修改,但是需要你自己重新根据你自己需要适配哈
作者: 小宝    时间: 前天 10:48
yhbi老6了 发表于 2024-10-30 10:44
我设置表格一次展示3条,轮播间隔是3,报告刷新时长是12。每次报告刷新,索引+6(代码第24行),过滤器限制 ...

OK,我研究研究




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