(机械电子工程专业论文)erp环境下电能计量设备管理子系统的研究与开发.pdf_第1页
(机械电子工程专业论文)erp环境下电能计量设备管理子系统的研究与开发.pdf_第2页
(机械电子工程专业论文)erp环境下电能计量设备管理子系统的研究与开发.pdf_第3页
(机械电子工程专业论文)erp环境下电能计量设备管理子系统的研究与开发.pdf_第4页
(机械电子工程专业论文)erp环境下电能计量设备管理子系统的研究与开发.pdf_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

华北电力大学硕士学位论文摘要 摘要 本文首先分析了供电企业管理信息系统现状,针对供电企业目前应用的c s 模 式的管理信息系统的不足和所面临的实际问题,提出了新的基于e r p 管理体系标准 的网络化解决方案。论文详细介绍了n e t 框架技术、b s 模式的企业应用的三层体 系结构和数据库设计及优化技术,尤其是对n e t 技术作了深入的研究。基于对以上 技术的研究,设计和开发了b s 模式的供电企业电能计量设备管理信息子系统。本 课题来自于生产现场,所开发的软件已经调试通过。 关键词:e r p ,管理信息系统,电能计量设备,n e t ,w e b a b s t r a c t t h i st h e s i sf i r s t l ya n a l y z e st h ep m s ts i t u a t i o n o f m a n a g e m e n t i n f o r m a t i o ns y s t e m ( m i s ) i ne l e c t r i cp o w e r s u p p l ye n t e r p r i s e b ya n a l y z i n gt h ed r a w b a c k s o fm i so fc sm o d e lu s e da t p m s e m a n dt h ep r a c t i c a lp r o b l e m n e e d i n g t ob es o l v e d u r g e n t l y , i tp u t sf o r w a r d an e ws o l u t i o n b a s e do ne r p i td e s c r i b e si nd e t a i lt h et e c h n o l o g yo f n e tf r a m e w o r k ,t h e3 - t i r es y s t e m f r a m e w o r ki nt h ee n t e r p r i s ea p p l i c a t i o nb a s e do nb sm o d e la n do ft h ed e s i g na n do p t i m u m s o fd a t a b a s e ,e s p e c i a l l ym a k e sat h o r o u g hs m d y i n gf o r n e t t h r o u g ht h es t u d yo fa b o v e t e c h n o l o g y , t h e s u bm i so fb sm o d e lu s e f u lf o re l e c t r i c e n e r g ym e a s u r i n ge q u i p m e n t s m a n a g e m e n th a sb e e nd e s i g n e d t h i ss u b j e c tc o m e sf r o mt h ep r a c t i c a lp r o d u c t i o n , a n dt h e s o r w a r e d e v e l o p e d h a sa l r e a d yb e e n d e b u g g e d a n d p a s s e d h u o j u a n ( m e c h a n i c a l & e l e c t r o n i c a le n g i n e e r i n g ) d i r e c t e db ya s s o c i a t ep r o f f a nx i a o l i a n g k e yw o r d s :e r p , m i s ,e l e c t r i ce n e r g ym e a s u r i n ge q u i p m e n t ,n e t w e b 声明 本人郑重声明:此处所提交的硕士学位论文( e r p 环境下电能计量设备管理 子系统的研究与开发,是本人在华北电力大学攻读硕士学位期间,在导师指导下 进行的研究工作和取得的研究成果。据本人所知,除了文中特别加以标注和致谢之处外, 论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得华北电力大学或其 他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡 献均已在论文中作了明确的说明并表示了谢意。 学位论文作者签名:! 壅芏6 日期:赵丝! 兰:二, 关于学位论文使用授权的说明 本人完全了解华北电力大学有关保留、使用学位论文的规定,即:学校有权保管、 并向有关部门送交学位论文的原件与复印件;学校可以采用影印、缩印或其它复制手 段复制并保存学位论文;学校可允许学位论文被查阅或借阅;学校可以学术交流为 目的,复制赠送和交换学位论文;同意学校可以用不同方式在不同媒体上发表、传播学 位论文的全部或部分内容。 ( 涉密的学位论文在解密后遵守此规定) 作者签名: 日期:叠竺! 兰:! ; 聊签名地 日期:o 1 0 0 4 - t a z 2 华北电力大学硕士学位论文 第一章引言 1 1 研究工作的理论意义和实用价值 企业信息化、资源配置合理化有利于提高企业内部的工作效率,提高服务质量, 增强市场竞争力。e r p ( e n t e r p r i s er e s o u r c e sp 1 a n n i n g 企业资源计划) 这一观念最初 是由美国的g a r t n e r g r o u p 公司在9 0 年代初期提出的,并就其功能标准给出了界定。 作为企业管理思想,它是一种新型的管理模式;作为一种管理工具,它同时又是一 套先进的计算机管理系统。它的实质是将企业的业务流程看作是一个紧密联接的供 应链,将企业内部划分成几个相互协同作业的子系统,应用网络和信息技术将各子 系统的信息流、物流、资金流( 三流) 等进行有机集成,实现企业信息广泛交流, 把办公事务与决策事务有机结合起来,最终实现内外资源的优化配置。e r p 是随着 网络技术和信息技术蓬勃发展而产生的,它本身就是基于i n t e m e t 的,因此它为企 业信息化建设提供的是全新的网络化管理思想。 我国绝大多数供电企业在信息化建设进程中,已经初步建立了适合自身特点的 客户机朋臣务器( c l i e n t s e r v e r ,简称c s ) 模式的管理信息系统,在企业现代化管 理中发挥了重要作用。但是从应用实际看,c s 模式存在许多不足,首先它基于局 域网环境,不使用i n t e r n e t 开放式标准,随着供电企业规模的不断扩大、地域的不 断分散,现有的管理信息系统越来越要求建立在具有统一标准的,适合于分布式应 用的开发环境上:另一方面,c s 模式管理信息系统基本是模拟手工的数据处理流 程来实现的,这种方式也远远不能适应当今信息管理的高度集成化要求:而且,它 对使用者技术要求较高。 浏览器服务器( b r o w s e r w e bs e r v e r 简称b s ) 模式的管理信息系统建立在 i n t e r n e t 上,使用统一的与网络无关的跨平台通信协议一一超文本传输协议( h t t p ) , 它能借助网络的强大功能集中管理分散资源,浏览器和w e b 服务器及相关的接口软 件也独立于计算机的软、硬件平台,因此,客户端只需零安装,整个系统的开放性 和可移植性好,能很好地解决供电企业所面临的实际问题。因此应用e r p 技术提供 的全新管理思想和信息技术,研究开发b s 模式的供电企业管理信息系统具有一定 的现实意义。 本课题来源于企业实际项目,山东烟台牟平电力集团公司担负着烟台市牟平区 的供用电管n i 作,下属1 5 个供电所,有高压用户5 0 0 0 多户,低压用户1 7 万户, 电能计量装置有近二十万块。电能计量设备的管理又涉及到电费计算、业扩报装、 配电变压器管理等多方面业务,因此工作量大且复杂,是供电企业的重要工作之一。 由于c s 模式存在的上述不足,本课题尝试从电能计量设备信息管理子系统入手对 华北电力大学硕士学位论文 企业的管理现状和业务流程进行深入的分析与研究并在此基础上进行软件开发, 解决企业所面临的地域分散、管理难度大、软件使用不方便等实际问题,为企业提 供一个简单、便捷的管理环境,同时也降低软件开发人员的维护工作量,为整个电 力企业基于b s 模式的e r p 系统的开发打下扎实的基础。 1 2 国内外研究现状乜 管理信息系统模式大体上分为四种:主机终端模式、文件服务器模式、c s 模 式和b s 模式。单机版模式由于硬件选择有限,硬件投资得不到保证,已被逐步淘 汰,文件服务器模式也只适于小规模的局域网,对于用户多、数量大的情况就会产 生网络瓶颈,特别是在互联网上不能满足用户要求。我国供电企业信息化普遍采用 c s 结构的管理信息系统。如上所述,c i s 模式已逐渐不能满足企业目前的实际要 求,对于系统本身和开发者来讲,也存在很多不足:系统开发周期长、扩展性和代 码可重用性差、当用户数量增多时、客户端需分别安装应用系统并进行专门的培训 等等。 计算机技术,现代通信技术和网络技术的快速发展使b s 模式的应用受到越来 越多人的关注,在一些业务比较简单的行业,b s 结构的应用已取得了良好效果。 它的最大优势在于:支持多用户在任何时间、任何地点同时连接到i n t e r n e t 上并和 其上各站点通信,这样就把各分布应用都集中到了一点。解决了供电所地域分布分 散化的问题,既方便了用电客户及时地查询必要的用电信息,又可使企业领导即使 在外地也能及时了解企业的管理现状并能及时处理必要的业务以及做出重要决策。 开发b s 模式的管理信息系统,使企业成为全新概念的网络企业已成为企业信 息化的必然趋势。但对于供电企业来说,由于日常业务种类繁多而复杂、数据流量 较大、对数据库操作频繁,此模式的管理信息系统实现难度较大,所以目前b s 模 式管理信息系统还没有成熟的企业级应用,有待于投入大量的人力和物力进行研究 开发。 1 3 研究的主要内容 本课题所研究的主要内容是利用比较先进的n e t 技术,对b s 模式的供电企业 电能计量设备信息管理予系统进行深入研究和尝试性开发。具体包括: 系统开发方案的选择 n e t 技术在企业中的应用的研究 数据库的设计与优化技术 系统分析及功能的设计 2 华北电力大学硕士学位论文 第二章系统方案的选择 2 1 软件体系结构的选择 2 1 1 三层( 3t i e r s ) 体系结构的选择。儿4 3 层体系结构将应用程序分成3 个不同的逻辑层次:表示层,应用逻辑层和数 据层,即通常所说的客户端程序、应用程序服务器、远程数据库服务器。各层职能 可简单表述如下。 ( 1 ) 客户端程序:集中处理数据显示和用户与数据之间的交互作用,而不再涉 及数据的存储过程,数据的维护等任务。在本系统中就是指各种表单参数信息、查 询条件输入,同时完成对输入信息的校验并将请求结果输出到页面。 ( 2 ) 应用程序服务器:管理客户端和远程数据库服务器之间传输的数据,协调 各用户之间的请求,并掌握数据集定义的全部细节( 包括统一的页面、业务规则的 制定和数据处理逻辑的规定等等) 和远程数据库服务器进行数据通信。该层要根据 整个系统的设计,构造系统中关键的几个对象。从而实现系统中的大部分逻辑控制 功能。 ( 3 ) 远程数据库服务器:完成大部分数据库管理系统应该完成的如查询、检索、 排序、添加、删除、检验完整性、安全性等事务,由于访问数据库是系统中频繁发 生而且最消耗资源的操作,所以在这一层要对数据库访问进行优化,提高系统的性 能和可靠性。 与传统的2 层体系结构相比,使用3 层结构的数据库应用程序使开发易维护、 易修改的“瘦”客户端应用程序软件成为可能,它能动态地调节负载,保障系统有 更高的安全性能。 2 1 2e s 模式的3 层体系结构” 本系统采用b s 模式的3 层体系结构进行开发。其通信原理如下:客户端浏览 器以超文本h t t p 形式向w e b 服务器提出访问数据库的请求,w e b 服务器接受客户 端请求后,将这个请求转化为s q l 语法,并交给数据库服务器,数据库服务器得到 请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给w e b 服务器, w e b 服务器再一次将得到的所有结果进行转化,变成h t m l 文档形式,转发给客户 端浏览器以友好的w e b 页面形式显示出来。 如图2 一l 所示为b s 模式的3 层体系结构模型 华北电力大学硕士学位论文 圈2 - 1b s 模式的3 层体系结构模型 这种结构有以下优点: 集中式管理:便于系统的修改和维护,大大增加了系统的灵活性。 集中式计算:客户端使用服务器端提供的数据,减少了对客户端的要求。 分布式资源共享:分摊运算负担,有利于提高系统性能和开发效率。 更便捷的安全管理:这种结构只有w e b 服务器可以访问数据库上的敏感数据, 既可以在w e b 服务器上验证用户,也可以在数据库服务器上设置权限,使安全 管理更灵活可靠。 2 2 前端开发工具的选择陆 2 2 1 n e t 框架开发平台 w e b 应用程序的优点在于可以让企业间的商业数据透过因特网的通讯来彼此 交换信息。这样不但可以节省数据交换的时间,而且可以简化流程。但是在新一代 的n e t 开发平台还没有出现之前,要让因特网应用程序达到上述的功能是一项浩 大的工程。涉及到的技术及程序开发语言可能包括了h t m l 、a s p 、v b s c r i p t 、 j a v a s c r i p t 、c + + 、a d o 、s q l 、c o m 、m t s 等多项内容。这样的环境对于开发人 员来说,想要快速的开发一个功能强大且稳定可靠的w e b 应用程序,显然不是一 项轻松的工作 n e t 就是微软公司为适应当前分布式w 曲应用程序的开发推出的新一代集成 开发平台。它提供了稳定、安全的跨平台的通用语言执行环境以及应用程序可以调 用的类函数库。 2 2 2v is u a i s t u d i 0 n e t ( 简称v s n e t ) 在n e t 框架中,有多种方法可实现软件的开发。可以通过最简单的记事本来 编写后台程序代码,也可以利用n e t 提供的n e ts d k 开发工具包来完成,但这都 不是很好的选择。v s ,n e t 是创建n e t 应用程序和服务程序的首选开发工具,为所有 程序开发人员提供了一个统一的集成开发环境。与其他优秀的开发工具一样, v s n e t 提供了很多优秀的开发工具,包括:项目管理器( p r o j e c tm a n a g e r ) 、 源码 华北电力大学硕士学位论文 编辑器( s o u l - c ec o d ee d i t o r ) 、用户接口设计器( u id e s i g n e r s ) 、执行引擎( w i z a r d s ) 、 即时编译器( j u s ti nt i m e c o m p i l e r ) 、连接器( 1 i n k e r s ) 、工具包( t o o l s ) 、帮助文 档( d o c u m e n t a t i o n ) 、动态调试器( d e b u g g e r s ) 等。v s n e t 以其独有的特点吸引了 大多数w e b 应用程序开发者0 1 共享集成开发环境:所有的开发工具都被集成到统一集成开发环境中来供开发 者使用,包括任何语言的程序员。 h t m l 设计器:不需要编写h t m l 或描述语言,就可以图形化地开发h t m l ,a s p a s p n e tw e b 表单。 服务器端快速开发:可以访问与集成服务器管理工具,比如事件目志,数据库 及x m l w e b 服务。服务器浏览器以及工具可以与服务器端应用组件联合使用。 可视化数据库工具:在集成开发环境,能够可视地进行数据库设计,如设计存 储过程、索引、添加表。需要说明的是,在v s n e t 专业版中,这些功能仅限于 s q ls e r v e r 桌面开发引擎。 v s n e t 提供两类服务器控件,w e bf o r ms e r v e r c o n t r o l s 和h t m ls e r v e r c o n t r o l s , 其中前者在服务器端执行,它还支持数据绑定( d a t ab i n d ) 功能,更适合动态 网页的开发。此外,在v s n e t 中开发者还可以按需要编写一些可重用的用户控 件。 2 2 3a s p ,n e t 帅】 b 1 a s p n e t 建立在n e tf r a m e w o r k 的编程类之上,是使开发人员能够使 用n e t 框架开发基于w e b 的应用程序的宿主环境,它是由n e t 框架提供的类库 构建而成的一个w e b 应用程序模型,该模型由一组控件( 例如h t m l 控件以及功能 更强的w e b 控件) 和一个基本结构组成。在服务器上,控件负责将面向对象的编程 模型呈现给开发人员,通过利用模型提供的控件集和基本结构服务,开发人员很容 易就能完成w e b 应用程序的开发。当客户请求一个页面时,开始运行在c l r 环境 内,a s p n e t 执行代码以及生成最后的h t m l 页面并发送给客户。 a s p n e t 完全基于组件,可以使用n e t 框架提供的各种运行环境服务,支持 完全面向对象的v i s u a lb a s i c n e t 和c 撑语言,与a s p 相比,a s p n e t 具有以下优点: 1 ) 网页可以使用任何一种n e t 语言设计,如v b n e t 、c + + 、j a v a 等,克服了 a s p 使用v b s c r i p t 脚本语言的局限性a 2 ) 代码不再是解释型代码,可以经即时编译器编译后运行;而且只需编译一次。 3 ) a s p 页面后台代码和h t m l 语言混合使用,当程序复杂时页面维护起来很困难。 a s p n e t 将后台代码从h t m l 中分离成单独的a s p x 文件,使得他们可分别由不同 人完成。 华北电力大学硕士学位论文 4 ) a s p n e t 的控件可以适应各种客户端。w e b 页面被请求时,服务器端自动侦测 客户端所需的格式提供适合的网页,如:提供给移动电话的为w m l 格式网页,对能 力较差的浏览器则提供h t m l 3 2 格式。而在a s p 中这项功能需要手工完成。 5 ) 在程序开发的过程中,引入最新推出的w e bf o r m 编程模型及其事件驱动机制使 w e b 程序开发更加容易和高效。 6 ) w e b f o r m 模型由底层系统自动完成客户和服务器之间繁琐的交互,而且还提供 了状态管理功能,能在不同页面请求之间自动维护页面数据。 综上所述。本系统采用基于n e t 框架的开发平台和v s n e t 的集成开发环境, 结合a s p n e t 和a d o n e t 技术进行开发。同时,根据v i s u a ls t u d i o n e t 的硬件 要求和本人的熟练程度,操作系统使用w i n d o w sx p p r o f e s s i o n a l 。 2 3 服务器的选择 2 3 1w e b 服务器n 0 流行的w e b 服务器有多种。如n e t s c a p ee n t e r p r i s es e r v e r ( n e s ) ,w e b s i t e p r o f e s s i o n a l ,a p a c h e 等,i n t e m e t i n f o r m a t i o ns e r v i c e s ( 简称i i s ) 是m i c r o s o f t 公司 开发a s p n e t 的唯一的可用w e b 服务器,它运行专门的软件( 即内景的) 来支持 邮件交换、f t p 和h t t p 访问以及客户端为了访问w e b 内容所需要的其它东西。i i s 不仅仅是一个w e b 服务器,它还可以驻留消息服务,用作一个f t p 服务器或者传 递s m t p 电子邮件。有了i i s ,w e b 服务器才能被i n t e r n e t 上的远程客户看到并访问。 当客户端请求某页面时,实质是通过i i s 访问w e b 服务器上的页面,并通过h t t p 转换功能检索最终的h t m l 页面返回给请求端。i i s 是w i n d o w sx p ,n t 2 0 等所 包含的系统可选组件,因此安装i i s 非常方便。i i s 安装完后,系统自动创建一个表 示w e b 站点的目录。 i i s 最主要的功能为; 响应使用者的请求,将所要浏览的网页内容传输给他们。 管理及维护w e b 站点。 管理及维护f t p 站点。 作为s m t p ( s i m p l e m a i lt r a n s f e rp r o t o c 0 1 ) 虚拟服务器使用。 2 3 2w e b 数据库的选择 用于动态网页开发的数据库就称为w e b 数据库。目前比较流行的w e b 数据库 系统主要有以下几个。“1 6 华北电力大学硕士学位论文 1 ) m ys q l m ys q l 是有瑞典t c x 公司开发的功能强大的,快速而又价格低廉的小型数 据库系统,既可以运行在w i n d o w s 平台上,也可以运行在l i n u x 平台上。在使用p h p 开发网站时结合使用m ys q l 已经成为目前网站开发的一种经典组合。 2 )o r a c l e 由o r a c l e 公司开发,它几乎可以运行于当前所有的操作系统平台上,其功能强 大,查询快速并且拥有极高的稳定性,可与各种网站开发语言结合使用,目前比较 流行与j a v a 结合开发。 3 ) s q l s e r v e r s q ls e r v e r 是微软提供的运行在w i n d o w s 操作平台的数据库系统,操作简便、 性能稳定,属于大型数据库系统。它与o r a c l e 一起成为了w e b 数据库开发系统的主 流。 本系统采用n e t 作为开发平台,n e t 是微软精心打造的力作,自然对自己的 s q ls e r v e r 数据库特别支持,在v s n e t 的开发工具箱里提供了专门的s q ls e r v e r 数据组件,而且s q ls e r v e r 与n e t 的数据通信直接使用它自身的协议而不用添加 任何o l ed b 或o d b c 层,具有更优的数据访问性能。 综合考虑,本系统的开发选用s q ls e r v e r 作为后台数据库。 2 4 系统开发框架“1 综合b s 模式的3 层体系结构和n e t 技术可以得到本系统的开发框架如图2 2 示: 图2 - 2 n e t 平台下b s 模式3 层体系结构 生i ! 皇垄盔堂堡圭兰垡堡壅 第三章n e t 技术在企业中的应用 3 1 n e tf r a m e w o r k 框架技术1 n e t 框架主要由4 大部分组成:通用语言运行环境( c o m m o nl a n g u a g e r u n t i m e 简称c l r ) 、n e t 类库( c l a s sl i b r a r y 简称c l ) 、a s e n e t 、a d o n e t , 其中c l r 和n e t 类库是基本构成,如图3 - 1 所示为n e t 框架的体系结构。 回臣习回团 图3 1 n e t 框架体系结构 3 1 1 通用语言运行环境c l r “ c l r 是- n e t 执行的软件引擎,也可以理解为一组标准资源集合,为程序运行时 代码的管理提供核心服务,它负责内存管理、线程执行、代码执行、代码安全验证、 编译、碎片收集以及其他系统服务。c l r 是面向对象的执行环境,因此,所提供的 服务也是通过面向对象的方法由程序语言存取。c l r 中任何n e t 的组件都可以被 视为c o m 组件使用,传统的c o m 组件也可以被加入n e t 的环境中当作一般的n e t 组件来使用。c l r 有以下主要特点: 深层语言综合:c l r 为2 0 多种编程语言提供统一的运行环境,常用的如:v i s u a l b a s i c 、c 撑和j s c r i p t 三种语言,执行时任何一种语言代码都被首先编译成微软 中间语言( m i c r o s o f ti n t e r m e d i a t el a n g u a g e ) m i l ,代码运行时再使用即时编译器 生成相应的机器代码来执行,这就以意味着n e t 从本质上与开发语言无关a 稳定的安全可靠性:c l r 强制实旎代码访问安全,其安全性取决于托管组件来 源在内的一组因素,通过实现称为通用类型系统( c t s ) 的严格类型验证和代 华北电力大学硕士学位论文 码验证基础结构来加强代码可靠性。同时,c l r 自动支持安全、非托管代码和 无用单元收回,在不再使用它们时将它们释放。这种自动内存管理解决了两个 最常见的应用程序错误:内存泄漏和无效内存引用。 不再有“d l l ”陷阱:m i l 产生的同时生成元数据,它包含有关类和所需要的 组件的一些附加信息,c l r 会分析这些信息并自动地防止应用程序的使用错误, 减少组件冲突。 并行执行:以往的c o m 组件只是通过注册表中的一个g u i d 来进行定位。这将 一台计算机上的所有应用程序都指向了特定的同一个d l l 。然而,在n e t 中, d l l 并不需要注册,它可以从应用程序目录自动加载并且可以被并行加载和执 行,单独的应用程序能一次装载多个d l l 。c l r 自动管理这些d l l 组件。 使编程工作更加容易 。n e t 提供了丰富的h t m l 和w e b 控件,这些控件被拖放到应用程序设计页面 后,系统自动产生相关代码,极大地减少了程序员的工作量。更重要的是,开 发者可以创建能重用的x m lw e b 服务,这些服务是可以被第三方调用的。 垃圾回收 程序编写过程中免不了要分配和使用内存,及时释放内存是必须的。在n e t 中 提供了垃圾回收机制,只要是没有使用的内存,n e t 架构会在适当的时机将这 些内存回收给其它需要的装配( 只经过i l 编译器形成的d l l 文件) 使用,而 且不会造成内存漏失。因此,程序员可以很方便的使用内存。 c o m 组件集成 n e t 的装配环境不同于以往的c o m 组件,但n e t 能够将传统o m 组件集成 到当前环境中来,使其能继续应用到n e t 中。在v i s u a ls t u d i o n e t 中,这种转 换自动生成,使用时只需将c o m 组件引用到应用程序中即可: c l r 的运作过程如下: 第一步:首先程序代码先由编译器编译成i l ,同时相关联数据会由相关数据引擎 ( m e t a d a t a e n g i n e ) 产生。 第二步:这时候如果有不同的语言所编译成的i l 或机器码,连结器就可以将它连结 进来,并产生包含i l 的e x e 或d l l 。 第三步:这时当程序在执行的时候,就是c l r 执行工作的时候。程序中如果有任 何使用到n e tf r 啪e w o r k 共享对象类别库的程序代码时,会被对象类别加载器 ( c l a s sl o a d e r ) 载入并合并。这时候被合并的程序代码在即时编译器执行之前可以 透过查验器( v e r i f i e r ) 来检查型别安全。 第四步:最后由即时编译器把程序代码编译成可以被c l r 所管理的机器码便可执 行。 华北电力大学硕士学位论文 3 1 2 n e t 类库 n e t 类库是一套以支持w e b 标准和应用为首要目标且简单实用的函数库,它 是个综合性的面向对象的可重用类型集合,为开发人员提供了一套统的面向对 象、异步、层次结构的可扩展类库,包含许多高度可重用的接口和类型。该类库在 域名空间“s y s t e m ”之下,为了方便查找开发者所需要的类,域名空间按照功能区 的分级制度进行排列,用户还可以应用扩展类库中的类来定义自己的类。它支持 h t t p 、x m l 、s o a p 以及w e b f o r m 、w e bs e r v i c e ,极大地简化了分布式应用程序 开发的步骤。通过创建一套跨编程语言的通用a p i ,n e t 类库可以实现跨语言继承、 纠错处理以及程序调试。开发人员可以自由地选择想使用的任何语言。同样可以使 用第3 方厂商提供的任何符合通用语言规范的类库。 n e t 框架类库也是面向对象的,能够完成一系列常见编程任务( 包括诸如字 符串管理、数据收集、数据库连接以及文件访问等任务) 。除这些常见任务之外, 类库还包括支持多种专用开发方案的类型。 值得一提的是,微软为n e t 做了数量相当可观的类别对象,为了避免命名冲 突,n e t 宣告使用了命名空间n a m e s p a e e 将这些类别按功能加以分类存放。每个命 名空间又包含许多个类,记录了对象的名称以及所在,这样编译器在编译我们程序 的时候才知道这些对象要到哪里去加载。我们在编写程序时,需要哪个类库就引入 哪个类库。另一方面,命名空间的划分充分保证了n e t 的可扩展性。 3 2 n e t 的数据存取技术a d o n e t 噜m 卯 3 。2 。1a d o ,n e t 对象模型 a d o n e t 是一个以n e t 框架为基础的全新的数据操作模型。它适应了分布式 w e b 应用程序以断开连接的方式快速访问各种数据的需要。与传统的a d o 相比有很大 提高: 支持用于断开数据连接和操作d a t a a d a p t e r 和d a t a s e t 类,不必一直连接到数据 库,允许更大的可缩放性。因此应用程序可以使用较少的资源。而传统的主从 式应用程序在执行时,都会保持和数据源的联机,但是在某些状况下和数据库 一直保持联机是不需要的。 通过a d o n e t 的连接机制数据库直接可以被不同的应用程序使用。因此,减少 了连续连接到数据库和断开连接的时间,提供了更好的协调工作能力和性能。 a d o 只能顺序读取r e c o r d s e t s 中的数据,a d o n e t 采用一种新的数据浏览方式, 可以通过对象之间的关联性存取相关的数据。 a d o n e t 对象模型中有五个主要的组件,分别是c o n n e c t i o n 对象、c o m m a n d 1 n 华北电力大学硕士学位论文 对象、d a t a a d a p t e r 、d a t a s e t 以及d a t a r e a d e r 。图3 ,2 所示a d 0 n e t 对象模型 厂= 一。一删对象h 裟武卜 数 c 对。象n n e c t i o n hc o 一乒 据 使 用 d a t a _ r e a d e r 对象r 程 序 a d o n e t 图3 - 2a d o n e t 的对象模型 下面分剐介绍一下a d o n e t 的主要对象“” 1 c o n n e c t i o n 对象 位于a d o n e t 的最底层,负责与数据之间的物理连接,它可以由我们自己生 成也可以由其它对象自动生成,它的属性决定了数据提供程序、数据源所连接到的 数据库和连接期间用到的字符串。c o n n e c t i o n 对象的方法比较简单:打开和关闭连 接,以及改变数据库和管理事务。 2 c o m m a n d 对象 代表在数据源上执行的一类s q l 语句或一个存储过程,例如可以对数据库下达 查询、新增、修改、删除数据等指令,当链接到数据库之后,可以使用c o m m a n d 对象对数据库进行操作。这个对象是架构在c o n n e c t i o n 对象上,也就是c o m m a n d 对象是通过连接到数据源的c o n n e c t i o n 对象来下命令的。 3 d a t a a d a p t e r 对象 是功能最复杂的对象,是c o n n e c t i o n 对象和数据集之间的桥梁,它的主要作用 是在数据源和d a t a s e t 对象之间传递数据。同时也可以对底层数据保存体进行数据的 添加、删除或修改操作。这个对象是架构在c o m m a n d 对象上,并提供了许多配合 d a t a s e t 使用的功能。 4 d a t a s e t 对象 是记录在内存中的实际数据,可以将其看成是一个缓冲区r 它可以同时存储多 张数据表,也可以将数据表之间的关联保存至本地端的主机,并加以浏览、编辑或 是排版等。d a t a s e t 是x m l 和a d o 结合的产物,它的重要特点就是本身不具备和 数据源沟通的能力,与数据库或s q l 无关,只是简单的对数据表进行操作、交换数 据或是将数据绑定到用户界面上。d a t a s e t 对象是由许多数据表( d a t a t a b l e ) 、数据 表关联( r e l a t i o n ) 、限制( c o n s t r a i n t ) 、记录( r o w ) 以及字段( c o l u m n ) 对象的 华北电力大学硕士学位论文 集合所组成;这意味着d a t a s e t 架构内所有的成员都非常对象化,可以让我们更有 弹性的来操作这些对象。 5 d a t a r e a d e r 对象 d a t a r e a d e r 对象为我们只是按序读取数据提供了快速方便的方法。它不同于 d a t e s e t 的地方在于,d a t a r e a d e r 是一次一笔向下循序的读取数据源中的数据,而且 这些数据是只读的,并不允许作其它的操作,因为不用把数据全部传回,所以使用 起来效率很高。 除此之外,a d o n e t 还提供了一个可以自定数据外观的d a t a v i e w 对象。利用 d a t a v i e w 对象,可以编辑d a t a s e t 中数据,如进行排序、条件过滤、查找等,这样一 来,同样的数据就会有多种显示方式。表3 2 7 0 出了d a t a v i e w 对象的常用的属性及 方法 表3 2d a t a v i e w 对象的常用的属性及方法 c o u n t 属性传回d a t a v i e w 中的纪录笔数 r o w f i l t e r 属性传回或设定过滤记录的条件 r o w s t a t e f i l t e r 属性传回或设定以记录的状态来设定过滤条件 s o r t 属性传回或设定记录的显示顺序 f i n d 方法搜寻指定的记录 3 2 2a d o n e t 数据提供程序 a d o n e t 数据提供程序( d a t a p r o v i d e r ) 包括三种,通过这3 种方式,几乎可以实 现对所有类型数据源的访问。 1 ) s q l c l i e n t :一个特定的基于t d s 的提供程序,主要是针对m i c r o s o f ts q l s e r v e r 来 进行数据操作。它完全是在n e t 框架中实现的,由于它经过了优化,可以直接 访问s q ls e r v e r 而不用添加o l ed b 或开放式数据库连接( o d b c ) 层,因 此s q ls e r v e r n e t 能够提供良好的数据访问性能。 2 )o l ed b :o l ed b 为一种开放式的标准,并且设计成c o m ( c o m p o n e n to b j c o t m o d e l ) 格式,应用广泛。它通过o l ed b 服务组件( 它提供连接池和事务服 务) 和数据源的o l ed b 提供程序与o l ed b 数据源进行通信。凡是依照 c o m 的规格所制作出来的组件,皆可以被其它程序或组件所使用。 3 )o d b c :用于访问任何可以通过o d b c 驱动程序访问的数据源。 比较o l ed b n e t 和s q ls e r v e r n e t 两种数据提供者采用的数据访问技术可 以看出,访问数据时所用到的命名空间和类对象是不同的,最根本的是两种数据提 供者在底层上的实现是不一样的,可以根据需要( 比如需要访问的数据库类型等) 来 一 兰i ! 皇垄盔堂堡主兰垡堡苎 决定到底使用哪种数据访问技术,以达到最优的数据访问性能。 实验测试结果分析,当数据库为s q ls e r v e r 时,无论是在数据库连接、数据提 取、数据更新方面,s q ls e r v e r n e t 提供程序执行效率比o l ed b n e t 提供程序具有 明显的优势。因此当连接s q ls e r v e r 数据库时,采用s q ls e r v e r n e t 数据提供者访 问数据源,而不采用o l e d b n e t 数据提供者。需要说明的是,由于s q ls e r v e l n e t 提供程序专为s q ls e r v e r 数据库设计的,因此当数据库为o r a c l e 、s y b a s e 等非微软 s q ls e r v e r 的数据库时,采用o l ed b n e t 数据提供者进行访问才能达到最优的数 据访问性能。“” 3 3 报表技术c r y s t a j r e p o r t s n e t “6 c r y s t a lr e p o r t s n e t 与v s n e t 的集成开发环境紧密结合,所有被添加到应用 程序的报表都生成d l l 和e x e 文件,作为应用程序的嵌入资源的一部分运行。它 提供了一个适用于a s e n e t 的健壮的报表浏览器控件c r y s t a l r p o r t v i e w e r ,在无需 下载额外的插件和浏览器的情况下就能实现报表的预览。c r y s t a lr e p o r t s n e t 同样 沿用了m i c r o s o 赶公司宗旨“任何语言,任何时候”,支持旧版本的报表开发技术, 可使用多种不同的数据源,如表3 - 3 所示 表3 - 3c r s t a | r e p o t s n e t 的可用数据源 l 数据源描述 工程数据支持a d o n e t 框架以及在应用程序中显示从数据集直接得 到的报表 o l e d e ( a d o 、 用于o l ed b 来访问的数据源 o d b c ( r d o ) 用于通过与o d b c 兼容的所有的数据源,能够从表、视图、 存储过程中生成报表外,还允许输入s q l 命令作为基础 数据库文件用于包含许多文件类型的数据库格式,即在先前版本和绑定 报表中使用的格式。如:e x c e l ,a c c e s s ,x m l 其他数据源通过d a o ,从x m l 、a c c e s s 等直接生成的报表数据源 3 3 1 基于w e b 应用程序的报表的生成 n e t 提供的c r y s t a l r p o r t v i e w e r 控件用于实现报表的预览,使用时需要把报表绑 定到此控件上。有5 中方法实现这一绑定: 1 ) 通过报表名称 1 3 华北电力大学硕士学位论文 通过报表的d a t a b i n d i n g 属性或通过如下表单代码实现: c r y s t a l r p o r t v i e w e r l r e p o r t s o u r c e = ”报表路径” c r y s t a l r p o r t v i e w e r l d a t a b i n d ( ) 2 ) 通过报表对象 如果是从工程外部引入报表,则首先导入c r y s t a l d e c i s i o n s c r y s t a l r e p o r t s e n g e e r 命 名空间才能够创建对象,然后还需要把报表对象创建为r e p o r t d o c u m e n t ,代码如下: d i m m y r e p o r t a sn e w r e p o r t d o c u m e n t0 m y r e p o r t l o a d ( “报表路径”) c r y s t a l r p o r t v i e w e r l r e p o r t s o u r c e = m y r e p o r t 如果报表已经添加到工程中则自动为报表生成一个类,则不必把报表绑定到浏览 器,只是如下代码即可; m y r e p o r t = n e w 报表名 c r y s t a l r p o r t v i e w e r l r e p o r t s o u r c e = m y r e p o r t 3 ) 通过绑定非类型报表 这种方法需要首先把报表组件r e p o r t d o c u m e n t 拖到表单上,将报表加载到组件,然 后将组件绑定到浏览器上 d i m r e p o r t d o c u m e n t l a s n e w r e p o r t d o c u m e n t0 r e p o r t d o c u m e n t l l o

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论