本科毕业设计论文-基于InfoPath的商务数据采集模块设计与实现(59页).doc
《本科毕业设计论文-基于InfoPath的商务数据采集模块设计与实现(59页).doc》由会员分享,可在线阅读,更多相关《本科毕业设计论文-基于InfoPath的商务数据采集模块设计与实现(59页).doc(57页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-本科毕业设计论文-基于InfoPath的商务数据采集模块设计与实现-第 49 页摘 要在现代的企业以及组织之中,企业对信息共享与工作的协同程度的要求不断增加。在这种情况下,企业如何实现业务流程的计算机化,成为一个值得研究的课题。现实情况是一次开发的产品往往不能满足企业的需求,从成本,效率,可靠性等多方面考虑,二次开发是最有效最可靠最方便的方法。与此同时,在办公人员中,使用最普遍,最为人熟知的首推Microsoft office,该系列产品拥有丰富的组件,成熟的开发平台。所以对office进行二次开发是实现办公自动化的一个重要途径。同时我们意识到表单是企业流程中的重要媒介,而InfoPath表
2、单正是提供了一种有效的解决企业表单电子化问题的途径。MS office 2003新增的InfoPath组件,是一款专业的电子表单制作与发布软件。如软件的名字,它是一条信息 (info)的通道(path),简化信息的采集过程,对信息资源加以重复利用和共享。它提供介于B/S和C/S之间的一种smart电子表单,本机填写保存也可以直接提交到数据库或Web页面,方便实用。关键词:二次开发 office二次开发 InfoPath XMLAbstractIn the organizations and enterprises nowadays,there is now higher requirement
3、 of information share and corporation. Under this situation,it would be worth of our effort to get to know how automation and computerization can be realized. Whats more,the situation nowadays is that the software that has been developed once can not well satisfy the need of the company. Considering
4、 the cost,effectiveness and reliability,redevelopments would be a better choice. Meanwhile,Microsoft office is now the most universal software used and be familiar with in the offices. It has a variety of components and well developed platforms for redevelopment. What is more important,people are no
5、w more used to the contact surface it provides. So it is an important way to realize office automation through Microsoft office. We at the same time get to realize that the table lists are the major media in the enterprises business work class. And the problem with the computerization of the table l
6、ist in a company can be well solved by InfoPath. InfoPath is a new module from MS Microsoft, and professional software for making electronic table list. As the name of the software expressed, it is a path of information, simplifying the process of information collection. It is a smart electronic tab
7、le list between the C/S and B/S model. It is easy to use because it can be filled in our computer and saved or sent to the web or the database directly.Keyword: redevelopment Office redevelopment InfoPath XML目 录摘要Abstract第一章绪论11.1选题的目的及意义11.2本课题研究内容3第二章 二次开发概述52.1 二次开发的意义52.2 二次开发技术分析52.2.1 DLL技术62.
8、2.2 COM与跨进程调用62.2.3对象嵌入与链接572.2.4脚本扩展技术82.2.5 Web扩展92.2.6 插件技术102.3 企业业务流程管理与二次开发112.4 二次开发的相关应用12第三章 Office二次开发173.1 Office二次开发的意义173.2 Office二次开发技术理论技术183.2.1 Office的体系结构183.2.2 Office 平台基础193.2.3 Office 对象模型223.2.4扩展点243.2.5 Office 开发工具集263.2.6 Office 的更多优势283.3 office二次开发方式293.3.1 VBA293.3.2 智能文
9、档313.4 excel的二次开发35第四章 InfoPath 的二次开发374.1 InfoPath 的功能374.2 InfoPath 二次开发的意义384.3 InfoPath 二次开发的主要技术应用394.3.1XML概述394.3.2 XML与InfoPath二次开发424.4 InfoPath 二次开发实例434.4.1需求描述434.4.2 功能分析444.4.3总体设计454.4.4 版面设计与功能实现47结束语53致谢55参考文献57第一章绪论本课题探讨的是基于InfoPath的商务数据采集模块的设计与实现,本章专门就这一选题展开讨论,对选题作一个初步的介绍。1.1选题的目的
10、及意义 本文主要通过InfoPath的二次开发实例作为office二次开发的一个方面来阐述二次开发的意义和重要作用,本文中实现的软件,即通过InfoPath实现商务数据采集的功能,实际上是工作流的一种实现形式。所以我们首先介绍一个工作流的概念,什么是工作流?工作流实际上是在进行业务流程的时候帮助我们把业务流程电子化、计算机化或者自动化。在很多组织或者企业里面,有很多复杂的业务流,业务流实际上构成了组织里的日常业务活动,这些业务流程如果手工来完成会非常的麻烦,通过电子化的手段帮助我们完成业务流的工作,什么是OA呢?有两种概念,第一种是办公自动化,意味着基于业务流程实现无纸化办公,因为业务流程的电
11、子化处理不一定要通过程序的方式来实现无纸化;另外一种,是指办公管理,是一个管理的过程,通过管理企业里的人和知识,加强人与人之间的信息沟通,人与数据之间,人与人之间,人与业务流程之间的协作和控制的水平。我们这里讲的就是如何通过office工具实现无纸化办公,即第一种的OA。Office是我们都经常使用的,Office在2003里面已经不是我们传统意义上的应用组件的组合,它不仅包含传统的应用组件,像word,excel,PowerPoint,outlook, access,FrontPage,publisher等,除此以外,在office里面还包含了很多的服务器产品,作为一个office syst
12、em来支撑office的应用,这些服务器产品包括SharePoint, Portal Server,Communication Server,Exchange Server。同时还会包含一些服务,像Microsoft online,Microsoft live meeting等。Office2003里面还会包含一些solution,像Microsoft Office Solutions Accelerators,能更好的使使用者实现办公流程,如表1.1 所示的office产品的结构图,是现在意义上所说的office。有了这些产品的构成,我们就可以去实现智能的电子化流程,也是我们本文中软件实现的
13、基础1。了解了工作流的概念,以及office system的二次开发平台,我们认识到工作流在现在的企业和组织里的重要的意义,可我们通过什么具体操作来实现工作流呢?二次开发可以使得我们实现把这个目标实现,因为我们现在已经拥有像office这样的成熟的较为完善的应用组件和开发平台,我们完全没有必要通过完全的程序开发过程重新来做这样的工作,不仅投资大,耗费大量的人力物力,且不能得到相较而言更好的绩效和可靠性,这一点在后续的章节还会有继续讨论。表1.1 office结构图电子化工作流程的基础WordExcelSharePoint Portal ServerOutlookPowerPoint Live
14、Communication ServerAccessPublisherProject ServerInfoPathExchange ServerMicrosoft project Microsoft VisioMicrosoft live meetingFrontPage OneNoteMicrosoft onlineMicrosoft Office Solutions Accelerators工作流中最重要的是什么?可以说是表单。企业是由商业流程驱动的,而商业流程是通过表单实现的,表单几乎淹没了企业的各个部门,表单无处不在。部门或企业定义的商业流程首先涉及到的是表单,收集信息的渠道会直接影响
15、业务流程的成败,所以表单的设计会直接影响业务流程的效率。客户更熟悉这样的Windows的界面,即不需要用户了解业务流程与表单之间的关系,这种关系是隐藏的,用户只是接触到文档,所要做的就是填写这些文档,实现起来就好像客户更熟悉的windows的操作;InfoPath是桌面的环境,表单和业务流程之间的关系是隐藏起来。InfoPath将传统的表单用电子化的方式体现出来,因此InfoPath就为我们提供了这样的优势:数据的再利用,如数据库里的数据,实现数据的共享,提高数据再利用的价值,使数据始终处于激活状态,而不是死状态,而且InfoPath已经提供了各种内置的表单,方便用户的使用。1.2本课题研究内
16、容本课题最终旨在软件实现商务数据的采集,具体来讲,就是基于InfoPath的电子化流程的建设,设计一套InfoPath的订单表单模版,通过这套模版,用户可以在线或者本机的填写订单以及订单相关的信息,最后保存在本地或者是提交到相连的数据库。本文同时还介绍了与此相关的一些理论,文章首先列举了二次开发的主要概念和二次开发的相关技术,对二次开发理论有初步的认识和了解后,其次我们介绍了基于office二次开发的相关理论知识,包括office的开发平台和系统工具等,并且以VBA和智能文档为例介绍office二次开发的两个主要方式。然后我们引出InfoPath的二次开发包括相关背景意义以及主要的开发技术等。
17、最后我们以一个实际的开发案例来具体阐述InfoPath二次开发的过程,也就是本文所指的InfoPath电子表单的设计。第二章 二次开发概述由于软件应用领域和用户需求的不同,一次开发出来的软件往往不能满足最终用户的需求。那更高效,更可靠的开发方法是怎样的呢?如何在一次开发的基础上完善以更好的满足需求呢? 2.1 二次开发的意义二次开发的意义在于它是一种软件提供的根据用户需求来对软件进行功能扩展的技术。对不同软件开发者而言,无法做到自己开发的软件能够解决一切用户所面临的问题,这时就需要为软件提供二次开发技术。不同的二次开发技术能够对应用软件进行不同程度的自定义和增强。二次开发因为可以增加应用软件的
18、自身的功能,现在已经作为一种重要的技术手段广泛存在于很多领域。二次开发不仅对软件开发者,对用户,都有着非常重大的意义,从成本、效率、可靠性各方面都对信息化进程起着巨大的促进作用。二次开发可以在很大程度上节约成本,包括开发商的成本和用户的成本。这一点是显而易见的。因为二次开发基于已有的软件平台,往往是已经相当成熟的软件基础,这样就可以为开发商节约很大的开发成本,用户也可以因此花费更少的金钱,享受更好的软件服务。于此同时,时间上和精力上的成本的节约也是非常可观的。二次开发可以提高效率。通过二次开发技术进行软件的开发,显然比通过程序从头做起可以有效地提高开发效率,开发商所需要做的就是了解已有的软件平
19、台,构架二次开发模式,选择合适的二次开发技术,进行工作。最后,通过二次开发技术生产的软件在可靠性上也往往更胜一筹。因为成熟的软件平台,通常是像微软这类的大规模的成熟的软件企业的产品,这位二次开发提供了可靠的,稳定的开发平台,同时还提供了强大的技术支持协助。2.2 二次开发技术分析二次开发技术是可以根据用户需求来对软件进行功能扩展的技术。由于软件应用领域和用户需求的不同,对软件进行二次开发的技术也各不相同。二次开发技术作为增加应用软件自身功能的一种手段已经广泛应用于各个领域。对不同软件开发者而言,无法做到自己开发的软件能够解决一切用户所面临的问题,这时就需要为软件提供二次开发技术。不同的二次开发
20、技术能够对应用软件进行不同程度的自定义和增强。根据计算机软件系统结构的定义,应用软件是建立在操作系统之上的,从操作系统的平台环境角度上看,二次开发技术可以找到一些共性之处,本文将对Windows操作系统环境下可行的通用二次开发技术进行必要分析,内容涉及DLL技术、脚本扩展技术、插件技术、跨进程调用技术、嵌入与链接技术及web扩展技术2。2.2.1 DLL技术DLL(Dynamic Link Libraries,动态链接库)技术是组件开发的基础,它能够更好地实现软件重用,为软件的维护和升级提供了非常方便。通过DLL来实现软件二次开发是二次开发技术中最基础的,也是最原始的一种做法,这一点可以从文献
21、3中分析得出。即将软件提供的各种功能全部封装到一个或几个DLL文件中,应用程序本身在需要时调用DLL,其他应用程序也可以调用DLL中的API接口。用户应用程序得到DLL文件后,便可以静态或动态的加载DLL,以进程内组件方式运行,通过对DLL暴露的API接口进行二次开发。用 DLL暴露API方法是最直接的二次开发方式,对于开发商和应用者而言,不需要更多的规范和流程,只要在开发说明书中注明哪一个DLL提供了什么样的API即可。应用者只需要技术文档和自身需要加载所需要的DLL,并调用相应的API接口即可。但一般的应用软件系统并不提供这种二次开发方式,其原因有三:第一个原因是DLL加载方式相对于其他二
22、次开发技术而言,比较麻烦,需要二次开发者有更多的专业知识。第二原因是应用程序底层都是由一些松散的、原子性功能构成Core,对于二次开发者而言,需要自己补充更多的应用逻辑,设计相应的调用算法。第三个原因是由DLL本身引出的API接口太庞杂,有些API接口都是为了服务于应用软件内部的,对于二次开发者而言,并没有应用价值。2.2.2 COM与跨进程调用DLL技术、OLE技术和脚本扩展二次开发技术基本上都是属于二次开发与应用程序藕合型。而相对跨进程调用方式来说,对应用二次开发技术的应用程序来说,灵活性更高一些,相应技术实现也更复杂。(1) 跨进程调用的基本原理提供二次开发功能的应用程序与使用二次开发功
23、能的应用程序同时运行在内存中,它们可以是同在一台机器上,也可以是在不同的机器上,甚至可以运行在不同机器不同操作系统环境内。调用者发出调用二次开发功能的请求信息,请求信息被操作系统某服务组件接收、解释、查找提供方,找到后将请求传递给提供方,提供方接收到后运行相应的功能并将结果返回,操作系统某服务组件接受,再传递给请求方。结果在请求方显示或存储。跨进程调用需要第三方支持,只有第三方能够正确接收、解释、传递等来实现两个进程之间的功能调用,才能使跨进程调用二次开发技术顺利实施。在Windows操作系统中,要想为软件提供可跨进程调用的功能,需要遵循COM机制。(2) COMCOM( The Compon
24、ent Object Model,组件对象模型)是由Microsoft提出来的一种工业标准。COM解决的问题是:提供一种标准方式,规定如何在Windows程序组件之间进行通信交流。由于COM已经为Windows操作系统级的规范和机制,所以凡是建立在Windows环境上的应用程序,都可以利用COM 机制来设计自己的二次开发方案。实现跨进程调用对提供二次开发功能的软件开发者而言,他们不需要编写额外的二次开发功能模块代码,只要按照COM 规范定义好对外暴露的接口和对象层即可4。不过,使用这种方式也会带来一种隐患,即跨平台问题,COM技术对Windows的依赖性过强。由于Linux操作系统的大行其道,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 本科 毕业设计 论文 基于 InfoPath 商务 数据 采集 模块 设计 实现 59
限制150内