Grid++Report WEB报表开发方式

WEB报表开发方式 简介

Grid++Report WEB报表开发的方式包括“报表插件”、“HTML5报表”与“报表服务器”。报表插件是浏览器下的插件程序,具有非常强大的功能,但受部分浏览器 禁用插件的限制,使用范围上有局限性。HTML5报表是客户端纯 JavaScript 脚本程序,应用浏览器对 HTML5 的支持,实现报表与图表在浏览器中的展现,但没法实现直接的打印功能与报表数据导出功能。报表服务器是在WEB服务器上生成报表,并把生成的结果响应给客户端浏览器。

这三种WEB报表开发方式共享相同的报表模板与报表数据 ,即同一报表模板可以为三种方式共用,同一生成报表数据的程序可以为三种方式共用,可以很方便的由一种开发方式切换到另一种。

三种WEB报表开发方式比较

产品方式 简介 优势 劣势
报表插件 报表插件是运行在WEB浏览器下的插件程序,类似浏览器中的Flash播放器,Flash播放器实现在网页中播放动画,锐浪报表插件实现在网页中生成报表、展现报表、打印与数据导出等功能。
  • 功能强大,运行速度快,具有与桌面报表一样的功能与性能。
  • 服务器端不驻留程序,支持所有的WEB服务器平台(如IIS、Apache、weblogic等)与服务器操作系统(如:Windows、linux、unix),服务器只要提供约定格式的XML或JSON数据就行
  • 能直接驱动打印机进行打印,是WEB软件实现打印功能的最好方式。
  • 只支持部分浏览器(兼容性说明),禁用插件的浏览器不能使用,目前支持在IE与绝大多数国产浏览器下用,不支持Chrome与FireFox。
  • 初次运行需要在客户端安装插件程序,插件程序升级也需要在每个客户端重新安装。
  • 客户端电脑必须是 Windows 系统。
报表服务器 报表服务器是运行在WEB服务器上的程序,负责在服务器上生成报表,并将生成结果响应给浏览器下载或打开。相当于是把锐浪报表的数据导出与报表文档生成功能放在服务器上执行。
  • 支持锐浪报表的全部特性,生成结果与桌面报表完全一致。
  • 运行性能高,与桌面报表具有一样的生成速度。
  • 程序升级方便,只要替换服务器上的程序文件(DLL文件)即可。
  • 客户端无需安装,零部署。
  • 只实现整个产品的部分功能,数据导出与报表文档生成功能。
  • 目前只提供支持 ASP.NET 的报表服务器程序,支持 java 的报表服务器程序将稍后推出。 
HTML5报表 HTML5报表利用浏览器展现网页的能力实现报表在浏览器中的展现,根据从服务器端获取的报表模板与报表数据生成动态的HTML数据 并展现在浏览器中。HTML5报表是 javascript 程序,不依赖任何插件或第三方库程序。
  • 全面的跨平台支持,支持HTML5的浏览器(新版浏览器都支持)都可以运行,支持任何可运行浏览器的设备,如PC、手机与平板电脑等。
  • 客户端无需安装,零部署,随时随地使用。
  • 程序升级方便,只要替换服务器上一个 .js 程序文件。
  • HTML5报表完全免费,无试用标志,无功能限制。
  • 只实现数据展现功能,数据导出功能需要借助报表服务器来实现。
  • 除了浏览器提供的网页打印功能外,无报表打印功能。报表打印需要借助报表服务器生成PDF或报表文档数据,下载之后进行打印。
  • 受浏览器网页展现能力的限制,大数据量报表不适合一次性展现出来。 

选用“报表插件”的因素:

  1. 要求报表运行性能高,功能强大,达到桌面软件类似的性能与功能。
  2. 接受软件只运行在支持插件的浏览器中,目前支持插件的浏览器(兼容性说明)主要有微软IE与众多国产浏览器,谷歌Chrome与火狐FireFox都不支持插件。
  3. 软件只要求运行在 Windows 系统下。
  4. 较多的打印输出任务,且要求打印操作便捷,精确的票据套打。
  5. 要求为报表最终用户提供可视化报表设计功能。

选用“报表服务器”与“HTML5报表”的因素:

  1. 要求跨平台支持,硬件支持PC、手机与平板电脑等,支持各种操作系统与各种浏览器。
  2. 要求部署简单,升级便捷,客户端零安装。
  3. 打印功能接受由报表服务器生成导出格式文件(PDF与锐浪报表文档)并下载到客户端再进行打印。
  4. 最终用户如需可视化报表设计功能,需要借助报表插件来实现。一般操作设计报表功能的是少数用户,只有操作这些功能才会限定到支持插件的环境。

“报表服务器”与“HTML5报表”搭配使用说明

报表服务器与HTML5报表都不具备完整的报表开发功能,通常需要两种方式搭配在一起使用,为最终用户提供完整的报表展现、打印与数据导出等功能。HTML5报表主要负责报表展现,报表服务器负责报表生成为各种格式文档,并用生成的文档实现报表打印。 如果只需某一方的功能,另一方并不是必须的。

更多参考说明