在线Excel的原理实现与使用
【技术应用】糍一
在线Excel的原理实现与使用
张
(枣庄科技职业学院
静
山东枣庄277500)
摘要:目前,在计算机数据处理方面,Excel是使用最广泛,操作最方便的数据处理工具,但对数据的交流传递和统计汇总很不方便;再加上网络办公平台
的广泛使用,开发设计一套在线Excel~有必要,通过论述dsoframer控件的使用,对如何实现在线Excel的使用进行简单的论述,灵活地解决Excel在线处理,比
较容易的实现数据在网络上的统计汇总自动处理如果进一步对该程序进行完善,将能更具有广泛的使用
性和推广性,进一步推动网络自动化办公.
关键词:在线Excel:Excel模版;Dsoframer控件
中图分类号:TO0159文献标识码:A文章编号;1671—7597(2012)0210125—02
目前,在计算机数据处理方面,Excel应该是使用最广泛,操作最方
便的数据处理工具,它对数据的编辑,格式化,设计报表和打印等功能都
提供了很完美的解决方案.但在规模较大的企事业单位,一方面Exce1只
能通过邮件或纸质报表的方式来交流传递,对于文件管理和汇总很不方
便;另一方面为经常变更的统计数据去设计一套MIS(管理信息系统)系
统,显然是非常麻烦,且非常的不经济.基于上述两点,再加上网络办公
平台的广泛使用,开发设计一套在线Excel,把Excel搬到网络上运行,是
很有必要且能够适用各种统计要求..
1Dsoframer控件的使用
Dsoframer控件是微软提供的开源控件,用于在线编辑,调用Word, Excel,PowerPoint等Activex控件.在使用Dsoframer控件前,先用regsvr32进行注册,注册后的Active控件才能使用.设计在线Excel 时,在
javascript代码段里,通过如下代码完成对Dsoframer控件的引用对象: <objectid=Mygxcelname=Mygxcel”style=LEFT:Opx:WIDTH:99%: TOP:
0PX:HEIGHT:505PxClassid=clSid:00460182-9E5E一11D5-B7C8一
#version=2.2,0.0>
</object>
Dsoframer控件常用方法如下:
1.1在线新建ExceI文档
document.al1.MyExce1.CreateNew(Exce1.Sheet):
1.2打开数据库中的Excel文档
document.al1.~yExce1.Open(1ocalhost/onlineExcel/oDen
Exce1.aspx?id=1,true,Exce1.Sheet,MyUserAccount. MyPassword):其中openExcel负责提供所需要的Excel文档.
13保存ExceI文件到数据库中
document.al1.MyExce1.Httplnit0://初始化Http~I擎
Document.al1.FramerContr0l1.HttpPost(localhost/on1in
eExce1/saveExce1.aspx):其中saveExce1.aspx动态页面负责解析数据存
于数据库中.
2在线Excel处理模式
在线Excel的处理方式如下图:
整个实现可以分为两大部分,第一部分是模版的制作及维护,通过Excel软件制作Excel~,模版制作完成后,保存在数据库中.第二部分是用户借助ExcelS]模版,从基础数据表中取得对应的基础数据填充到
Excel模版里,生成一个标准纸质类型的报表页,网络用户根据报表
要求
填写数据后,由程序把Excel的单元格数据分解出来,按照规则填充到数
在线代码运行器据库的业务数据表中,完成业务数据的录入,达到了外观表现为Excel数
据,内部存储为二维数据表,便于后面对数据的统计汇总分析.
3关键技术处理
31模版的制作与保存
在网页xls_add.aspx上通过object标签引用dsoframer控件,网页中即可呈现出Excel操作界面,然后在body标签的加载事件中执行create—
xls函数,实现新建Excel文档的目的.Excel文档在线处理后,点
击页面上”保存Excel模版到服务器数据库”按钮,执行保存按钮的单击
事件savexls—onclick,该事件通过调用dsoframer的HttpPost方法,把数
据提交给xls—save.aspxN页,由xls~save.aspx负责把Excel文档内容保
存在后台的数据库中,以供网络用户提取.xls—add.aspx简要代码如下:
<scriptlanguage=javascripttype=text/javascript>
//新建Excel文档
functioncreate—
xls0{
document.al1.MyExce1.CreateNew(Exce1.Sheet):
}一
//把在线Excel数据提交给xls—
save.asp处理
functionsavexlSonelick0{
document.al1.MyExce1.HttpInit0:
document.al1.MyExce1.HttpAddPostcurrFile(File,--):
varsaveurl=localhost:4919O/office/on1inexls/xls
save.aspx:
document.al1.MyExce1.HttpPost(saveur1):
)
</script>
<bodyonload=createxls0:>
<inputid=savexlstype=buttonvalue=保存Excel模版到
服务器数据库onclick=returnsavexlSonclick()/><br/>
<objectid=MyExcelname=MyExcelstyle=LEFT:Opx:
WIDTH:99%:TOP:Opx:HEIGHT:100%clasSid=ClSid:OO46O182—9 E5E~
11D5一B7C8一#version=2.2.0,-0>
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论