找回密码
 立即注册

QQ登录

只需一步,快速开始

KearneyKang 讲师达人认证 悬赏达人认证

超级版主

199

主题

6505

帖子

1万

积分

超级版主

Rank: 8Rank: 8

积分
10806

圣诞拼拼乐微信认证勋章讲师达人悬赏达人元老葡萄

KearneyKang 讲师达人认证 悬赏达人认证
超级版主   /  发表于:2018-12-27 18:15  /   查看:4051  /  回复:0
在进行报表加载后,由于报表绑定的数据是定时,因为需要报表展示的数据也是最新的数据。因此需要设置一个报表的定时刷新来进行报表绑定数据的更新。虽然AR报表的工具栏有一个刷新的按钮,通过点击就可以进行报表数据的刷新。但是在不同的场景下应用下有时需要写一个定时器进行定时的刷新。
下面就来看看在各个平台下如何实现报表的定时刷新:
C/S端:如 Winfrom、WPF项目的后台定时刷新代码如下:
  1. private void button1_Click(object sender, EventArgs e)

  2.         {

  3.             this.viewer1.Toolbar.ToolStrip.Items[30].PerformClick();

  4.         }
复制代码

B/S端:使用webviewer进行报表的渲染,那么想定时实现报表的刷新,只能通过整体加载WebViewer来实现。
B/S端:使用Html5进行报表的加载,可以直接在JS文件里使用 Refresh()函数实现定时刷新。
实现代码:
  1. <script type="text/javascript">

  2.             $(function () {

  3.                 var viewer = GrapeCity.ActiveReports.Viewer({

  4.                     element: '#viewerContainer',//报表展示区

  5.                     report: {

  6.                         id: "Reports/(多维透视表)商品销售及搭赠比例表.rdlx"

  7.                     },

  8.                     reportService:

  9.                     {

  10.                         url: '/ActiveReports.ReportService.asmx'//服务引用

  11.                     },

  12.                     uiType: 'Desktop',//展示模式,移动端

  13.                     documentLoaded: function reportLoader() {

  14.                         Console.log(viewer.pageCount);

  15.                     },

  16.                     reportLoaded: function (reportInfo) {

  17.                         console.log(reportInfo.paremeters);

  18.                     },

  19.                     localeUri: 'Scripts/i18n/Localeuri.txt', //汉化

  20.                     renderMode: 'Galley'

  21.                 });

  22.                 function refreshReport() { viewer.refresh() }

  23.                 setInterval(refreshReport, 100000);

  24.             });

  25.     </script>

  26. }

复制代码


0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部