编辑: ZCYTheFirst | 2019-07-06 |
// 当Office 文档加载完成后执 行writeReport 函数制作报表, writeReport 在引擎 reportEngine.js 中实现. …… // reportEngine.js function writeReport(){ //入口实现范例 var doc= DsoFramer J.ActiveDocument;
//取得 当前打开的文档对象 var start = doc.Content.End - 1;
var end = doc.Content.End - 1;
var rng = doc.Range(start, end);
//获取文档 的Range 对象, 用于写入数据 …. var Dataset ds=getDataByAjaxClient();
//获取 报表数据 rng.Text =ds. getValue( value );
//在文档中 写入数据 ….. } (2) 可视化绘制控制 本模型的一大特点就是, 能让用户看到报表的绘 制过程, 处了AJAX异步请求数据外, 控制Office文档 的光标移动和窗口滚动也至关重要. 将文档的绘制区 域滚动到窗口的可见区域, 使用户能够始终看到文档 的绘制过程, 体验动画绘制效果. 范例代码如下: …… var start = doc.Content.End - 1;
var end = doc.Content.End - 1;
var rng = doc.Range(start, end);
doc.ActiveWindow.ScrollIntoView(rng,false);
//显 示文档末尾区域 …… 其他用来控制界面显示的常用函数. 表2常用 Word 界面控制函数 名称 说明 Window.LargeScroll 滚动指定数量屏幕 Window.SmallScroll 滚动指定的行数 Window.PageScroll 滚动指定的页数 Document.FitToPages 调整文字大小以适应窗口宽度 图4是某军工行业质量系统中 Office 报表创建过 程的范例, 红色区域是报表当前正在绘制的位置. 可 以看出, 本模型可以创建复杂的动态行列报表.
4 结束语 本文分析了传统各种 B/S 系统的 Office 报表技术 以及存在的问题和缺陷, 并进行集成创新, 提出全新的 Office 报表技术, 继承和集成了多种传统 Office 报表技 术的优点. 如客户端分布计算、跨技术平台的架构、稳 定的服务进程. 同时实现了异步的可视化报表........