简介
SOAOffice 中间件是北京科翰软件为微软OFFICE量身打造的Web中间件,是Web调用Office、存取Office数据的必备中间件。SOAOffice中间件由服务器端数据组件和客户端显示控件构成。
SOAOffice 完全抛弃了传统利用Office服务器端自动化技术存取文档数据的种种弊端和缺陷,采用独创的专利技术构建了一个功能强大、简单易用的微软Office中间件平台,平台提供标准的.net和java组件接口,不但能够在线(浏览器页面)打开、编辑、保存Office文档,而且开发人员还能够以简洁的代码快速的将数据库数据动态填充到Office文档指定位置,并且也能够从Office文档中提取指定位置的数据保存到数据库。
SOAOffice提供这些强大功能的同时,服务器端并不需要安装运行Office软件。通过SOAOffice,在Web世界里,难以驯服的Word/Excel就变成了普通的、熟悉的、服务器端可调用的.Net组件、Java组件、ASP组件、PHP组件,开发人员再也不用研究复杂的Word/Excel COM自动化细节、学习复杂的VBA语法调用,也不用去应对Word/Excel死进程、系统稳定运行的问题。开发人员能够节省宝贵的精力和时间,把它投放到更重要的业务逻辑和系统架构上,而控制Office的具体技术细节交给SOAOffice去做。
SOAOffice除了提供Word/Excel动态数据填充,Word/Excel数据导入导出,Word/Excel/PowerPoint等Office文档的在线打开、编辑、保存,权限控制,只读控制等功能外,还给在线办公内置了强大的支持功能:强制痕迹保留,手写批注,圈阅,手写签名,电子印章、数字签名、模板套红、一键套红等。
科翰软件是国内唯一的微软Office中间件开发商,拥有卓越的自主研发实力和独创的专利技术,其产品SOAOffice不仅畅销国内,而且还远销欧美国际市场,其中世界500强美国Dover集团、可口可乐 Coca-Cola、中石油、中石化等都是SOAOffice产品的忠实客户。
SOAOFFICE中间件包括三个内置组件:SOAExcel、SOAWord、SOAPowerPoint。另外企业版还包括支持PDF文件的SOAPDF组件。
SOAOFFICE 中间件采用标准HTTP传输协议,支持任意Web服务器(IIS, Domino, WebSphere, Apache,Tomcat等),任意服务器操作系统(Win2k, Win2003, Linux, Unix等),以及任意WEB编程语言和Web架构(C#,Java,VB.Net,PHP,DOMINO,JSP,ASP,J2EE,ASP.NET,Ajax等)。SOAOFFICE同时支持C/S方式的编程和其他支持ActiveX的容器,您可以在VB,Delphi以及C++ Builder中使用SOAOFFICE,快速创建C/S结构的应用。
SOAOFFICE中间件是一个国际化产品,支持多种界面语言:简体中文、繁体中文、英语、日语、法语、德语等。
架构优势
Microsoft Office 所有当前版本的设计、测试和配置都是为在客户端工作站上作为最终用户产品运行而完成的。它们假定存在一个交互式桌面和用户配置文件,而且不提供满足为以无人参与方式运行而设计的服务器端组件的需要所必需的重入或安全性级别。
Microsoft 目前建议不要从任何无人参与的、非交互式客户端应用程序或组件(包括 ASP、ASP.Net、PHP、JSP、DCOM 和 NT Service)中进行 Microsoft Office 应用程序的"自动化",也不为此提供支持,因为 Office 在这种环境中运行时可能会出现不稳定的现象并且/或者会死锁。(摘自微软官方技术文章Q257757)
为完美解决Web服务器端读写存取微软Office文档的技术难题,微软Office中间件--SOAOffice应运而生。
SOAOffice是一套由服务器端组件和客户端控件构成的中间件系统。服务器端组件是标准.NET组件和Java组件,提供简洁高效的Word、Excel简化接口;客户端控件在浏览器网页里运行。服务器端调用SOAWord.WebOpen打开文档后,浏览器页面里客户端控件会启动客户机上的Word并且运行在网页里而不是本地打开。服务器端无需安装Office软件。
SOAOffice的架构很巧妙,开发者只需关注服务器端编程逻辑,客户端如何工作都交由中间件自动完成。SOAOffice充分利用了分布式计算的思想,把本来要在服务器端运行的Word运算量交给了客户机。也就是说,原来采用服务器端自动化技术的网页同时要处理N个Word任务现在交给了N个客户机,每个客户机运行一个Word。服务器只需处理需要服务器处理的业务逻辑,一切与界面有关、与Word程序本身有关的工作由客户机运行,当然这也是客户机的强项。
SOAOffice的架构消除了服务器端运行Word、Excel的风险,又充分利用了客户机闲置的计算资源,这种架构不但解决了ASP、ASP.NET等Windows web服务调用Word、Excel的问题,而且还给Java写的Web服务调用Word、Excel提供了解决方案(Unix、linux等无法自动化Word、Excel)。比如:Java编程在Unix、Linux下无法调用Jacob,在Windows下调用Jacob的接口又非常复杂,而且还有服务器端自动化Office的弊端。另外Java还可以调用Apache POI读写Excel、Word文件,不过Apache POI总是不能支持最新版本的Office格式,而且也不能保证各版本Office文件之间的格式兼容性。所以Java利用SOAOffice控制Word、Excel、Powerpoint等还是有明显的优势的。
SOAOffice能够让用户直接在网页里看到word/excel文件内容,并且可以直接编辑、保存回Web服务器,给用户省去了先下载下来,修改完后再上传的麻烦。
通过SOAOffice不仅能够动态填充word/excel,读取word文本区域/excel单元格,而且还能在浏览器里直接浏览word/excel、或者下载、另存。SOAOffice提供标准C#.Net组件和Java组件,组件在服务器端不使用自动化调用,稳定支持大量web并发访问,这是用com调用无法实现的。组件的属性方法都比较简单,易于调用,完全不用去掌握复杂的VBA调用。
适用场合
SOAOffice是一种中间件软件,不能直接给最终用户使用,需要软件编程人员将SOAOffice集成到软件系统中才能发挥它的威力。比较直观的来说,通常有以下需求的Web开发者推荐使用SOAOffice:
1. 需要把数据库字段内容填充到Word/Excel指定位置的;
2. 需要把Word/Excel指定位置的内容提取出来保存到数据库字段的;
3. 需要动态生成指定格式的Word文档的;
4. 需要把html页面中表格导出到excel的;
5. 需要在html页面中套打票据、报表的;
6. 需要在html页面中显示复杂报表,并要求精确打印预览及打印的;
7. 需要动态生成中国式复杂格式报表的;
8. 需要在html页面中输入复杂票据的;
9. 使用ole服务器自动化技术调用Word/Excel经常产生死进程或系统不稳定的;
10.Web系统中调用Word/Excel的页面有大量并发用户访问的;
11.使用jacob、jxl、apache poi的;
12.需要在Web中调用Word/Excel,并且追求系统运行稳定、可靠的;
13.最终用户可以浏览 Word/Excel/Ppt 文档内容,但需要禁止复制、粘贴、下载、另存的;
14.需要在html页面中在线编辑Word公文的;
15.需要在协同办公中强制保留Word修改痕迹的;
16.需要在协同办公中手写批注、手写签名、加盖电子印章、模板套红的;
17.需要在新闻编辑中强制保留Word修改痕迹、手写批注、圈阅的;
18.需要在远程教育中实现试卷、作业在线批改的。
19.需要在html页面中把Word转换为pdf的;
20.需要在html页面中快速打开、显示pdf的;
21.需要在Ajax架构里调用Word/Excel的,包括服务器端和客户端Javascript都适用。
22.需要控制不同的用户在Word/Excel中不同的区域中编辑权限的;
23.需要在企业局域网内架设在线Office文档中心、知识管理的;
最新版本
最新版本为7.2
主要升级记录:
7.2 SOAExcel增加采用循环样式根据数据库查询动态输出行循环类型Excel表格的功能。
7.2 SOAWord数据区域定义,企业版除支持文本插入外,增加[image]、[word]标签支持图片、word文件的插入功能。
7.2 SOAOffice全面支持WPS格式。
7.2 打开、保存、压缩、加密文档和保存数据都提供进度条提示。
7.2 SOAExcel组件增加AllUsedRangeNeedSubmit,保存时,可以提交整个Excel Sheet中的单元格数据。
7.1 新增Excel和Word保存的开发人员定制的非调试自定义错误框,给最终用户看。服务器端新增ShowPage方法。
7.1 word打印预览切换后,会导致当前手写内容消失。现已解决。word2003安装sp3即可打印预览。
7.1 服务器端增加新方法RequestFormField,获取来自客户端控件页面的Input域的值。
7.1 新增开发人员可以显示用户输入值合法性校验的结果信息框。可以设置信息框的大小。
7.1 添加上传文件大小限制的属性SaveDocMaxSize,在服务器端调用。
7.1 新增文档加密和压缩功能,压缩率最高可达原文档大小的10%。服务器端设置属性EncryptDocument=true。
7.1 自定义工具栏在打印预览时无法操作。现增加打印预览专用工具栏,可以方便地关闭预览。
7.1 SOAOffice企业版增加另存PDF并且能够在网页中快速打开显示PDF文档的功能。
7.0 增加新的Vista风格:silver 银色。
7.0 增加了下载进度实时提示。
6.1 支持所有IE内核的浏览器的全屏编辑功能。
6.1 丰富了各种调试信息。
6.1 支持多种语言界面。简体中文、繁体中文、英文、德语、日语。
6.1 新增Excel数据表定义模式,实现用户自定义报表和录入界面。
6.1 增加PPT的只读模式。
6.1 新增WORD动态数据区域填充功能。
6.1 发布新workmode=4手写专用模式,只针对word。
6.1 改进CanCopy,CanCopy=false 禁用F12,复制、剪切、粘贴、ESC、鼠标右键、Shift+F10、Application键。
6.1 新增Excel数据表定义模式,实现用户自定义报表和录入界面。
5.2 增加设置允许打印份数。
5.2 WebOpen支持从根开始的绝对URL。
5.2 在修改无痕迹模式时,启用"打开"菜单,便于上传本地文档。
5.2 手写批注改用先进的矢量图形技术,实现手写的平滑缩放效果。
5.0 手写批注时,可以设置手写的缩放比例。