(计算机应用技术专业论文)企业生产报表系统的设计与实现.pdf_第1页
(计算机应用技术专业论文)企业生产报表系统的设计与实现.pdf_第2页
(计算机应用技术专业论文)企业生产报表系统的设计与实现.pdf_第3页
(计算机应用技术专业论文)企业生产报表系统的设计与实现.pdf_第4页
(计算机应用技术专业论文)企业生产报表系统的设计与实现.pdf_第5页
已阅读5页,还剩69页未读 继续免费阅读

(计算机应用技术专业论文)企业生产报表系统的设计与实现.pdf.pdf 免费下载

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

文档简介

摘要 企业生产报表系统的设计与实现 摘要 我国工业信息化的发展加速了企业生产的信息化建设,现代企业生产 管理中各种信息系统的构建推进了企业在新型工业化道路上的建设。报表 作为企业数据的组织和输出方式在企业信息平台中起着重要的作用。本课 题以过程工业监测平台为背景,对企业生产报表系统进行了分析和研究。 从分析企业生产报表系统的需求入手,本文在研究了各种报表系统的 解决方案的基础上,提出了基于c s 和b s 混合模式的企业生产报表系统 的设计思想,运用数据库技术、模板技术和组件技术在m 玎环境下实现 了具有一定通用性和自定义功能的企业生产报表系统,包括报表管理、报 表生成、报表数据查询和报表查询等子系统。重点解决了系统的结构框架、 报表模板的管理、报表数据处理以及报表在不同结构下的输出问题。满足 了企业在不同环境下对报表系统的需求,为用户提供了一个报表操作平 厶 亡】o 关键词:报表系统,a s 、b s 混合结构,数据库,组件技术 a b s t r a c t d e s i g na n dr e a ij z a t i o no fe n t e r p r i s e p r o d u c t i o nr e p o r t a b s t r a c t 7 1 1 l ed e v e l o p m e n to fo u rc o u n 衄si i l d u s t r i a li n f o r m a t i o na c c e l e r a t e s i n f o m a t i o nc 0 n s t m c t i o n0 fe n t e r p r i s e sp r o d u c t i o n a n dw i t ha l ll 【i n d s0 f i n f 6 加a t i o n s y s t e m sb e i n g b u i l ti nm o d e m e n t e 叩r i s e sp r o d u c t i o n m a n a g e m e n t ,e n t e 叩r i s e sg of o r w a r di nc o n s t m c t i o no fn e wt y p ei n d u s t r y a s am e t h o do fo 玛a n 娩i n ga n do u t p u t t i n ge n t e 叩r i s ed a t a ,r 印o r t sp l a y 卸 i m p o r t a n tr o l e i nt h i sp a p e r ,t h ea n a l y s i sa n dr e s e a r c ho fe n t e r p r i s ep r o d u c t i o n r e p o r t sw a sd o n eu n d e rt h eb a c k g r o u n do fi n d u s t r i a lp r o c e s sm o n i t o r i n g p l a t f o 姗 s t a r t e dw i t ha n a l y z i n gt h er e q u i r e m e n to fe n t e r p r i s ep r o d u c t i o nr e p o r t s y s t e m s ,t h ep a p e rm a d ear e s e a r c ho nm a n yr e p o ns y s t e m s s o l u t i o n ,p u t f o r w a r dad e s i g nt h i n l 【i n go fe n t e 叩r i s ep r o d u c t i o nr e p o r ts y s t e m sw h i c hw a s b a s e do nc sa n db sh y b r i dm o d e , r e a l i z e dt h ee n t e 印r i s ep r o d u c t i o nr e p o r t s y s t e m sw i t hu n i v e r s a la p p l i c a b i l i t ya i l dc u s t o mf u n 舐0 n su s i n gd a t a - b a s e , t e m p l a t e ,a n dc o m p o n e n tt e c h n i q u ei nt h e p i e te n v i i o n m e n t w h i c hi n c l u d e d l h 北京化t 人学顾l :学位论文 r e p o r tm a n a g e m e n t 、r e p o r tg e n e r a t i o n 、r e p o r td a t aq u e r ya n dr e p o nq u e r y ;a n d f o c u s e do ns o l v i n gr e p o n ,ss t m c t u r ef r a m e 、 t e m p l a t em a n a g e m e n t 、d a t a p r o c e s sa n do u t p u ti s s u ei nd i 骶r e n ts t m c t u r e 1 1 l es y s t e mm e e t sr e q u i r e m e n t o fr e p o r t si nd i f ! f 色r e n te n v i r o n m e n t ,a n dp r o v i d e s r e p o r to p e r a t i o np l a t f o 姗f o r u s e r s k e y w o r d s :r e p o ns y s t e m ,c sa n db sh y b r i dm o d e ,d a t a b a s et e c h n i q u e , c o m p o n e n tt e c h n i q u e i v 北京化工大学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下, 独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本 论文不含任何其他个人或集体己经发表或撰写过的作品成果。对本文 的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本 人完全意识到本声明的法律结果由本人承担。 作者签名:兰缝丝日期:盈丝丘。笸。! 关于论文使用授权的说明 学位论文作者完全了解北京化工大学有关保留和使用学位论 文的规定,即:研究生在校攻读学位期问论文工作的知识产权单 位属北京化工大学。学校有权保留并向国家有关部门或机构送交 论文的复印件和磁盘,允许学位论文被查阅和借阅;学校可以公 布学位论文的全部或部分内容,可以允许采用影印、缩印或其它 复制手段保存、汇编学位论文。 保密论文注释:本学位论文属于保密范围,在上年解密后适用 本授权书。非保密论文注释:本学位论文不属于保密范围,适用本授 权书名者签名:至鲢日期:丞塑爱笸。 导师签名: 誊丝兰止日期:垫墨受:么 第一章绪论 1 1 课题的研究背景及意义 1 1 1 课题的背景 第一章绪论 随着信息工业化的发展,许多工业企业都采用计算机对生产进行流程监测,但由 于各个企业的产品领域和生产流程各不相同,一套固定的生产监测系统很难适应每个 企业的要求。对生产监测领域的各种需求进行分析、总结,归纳一些广泛用于生产的 监测系统的优缺点,研究与实现通用性的过程工业监测平台是必要的。笔者所在课题 组对过程工业监测平台进行了研究,其结构如图1 1 所示: 图1 1 过程- t 业监测平台结构 h g 1 - ln e s l r i l c t u r co fp r ( ) c c 鳃i i l d u s 时p l a 渤脚 过程工业监测平台主要包括数据处理子系统、数据采集子系统、数据监测子系统、 w 曲服务子系统和报表处理子系统。 数据处理子系统是整个平台构建核心数据的服务中心,兼具数据存储、优化功能, 可以提供主被动数据服务,实现对外屏蔽数据存储结构,对内提高数据存储查询效 率的功能。 北京化t 人学硕i :学位论文 采集子系统运行在生产现场、分析室等提供数据的场所,用于现场采样,提供常 用的数据采集方式,编写标准采集模块及采集管理模块。 数据监测子系统主要完成c s 模式下的监测效果实现,提供各种监测手段,支持 多种显示方式,如流程图、棒图、实时曲线、历史曲线等。 w ,e b 服务子系统为用户提供b s 模式的监测服务,用户可通过浏览器登录w r c b 服务子系统。 报表处理子系统是过程工业监测平台的输出展现端,和平台的数据处理子系统密 切相关,为用户提供了报表管理和操作的平台,实现对企业生产领域中的报表展现。 本课题为过程工业监测平台的报表处理系统的设计与实现,是该平台的输出显示 模块,实现企业生产报表的管理、实时数据的显示和对历史数据的查询、统计、分析。 1 1 2 课题的研究意义 加强企业的信息化建设是进行新型工业化建设的重要措施,从企业的类型来看, 目前最需要信息化的是生产型企业,报表作为一种信息组织和分析的有利手段,在企 事业部门的信息管理过程中起着不容忽视的作用,任何部门均需要制作和管理一定数 量、一定格式的报表。企业生产报表反应生产过程中的过程数据、运行状态、能耗情 况及人员管理等信息,是对数据进行显示、统计的一种重要工具,是生产过程必不可 少的一个重要环节【。它既能反应系统实时的生产情况又能对长期的生产过程数据进 行统计、分析,使管理人员能够掌握和分析生产过程情况,有利于企业的生产、管理 和决策【2 】。 在企业的生产管理中,数据的显示输出是一项复杂的工作。随着信息技术的发展, 企业管理信息系统以不同的图表形式显示数据,报表作为信息系统的输出显示端种类 繁多,如果按不同的需求编程实现报表的开发,则会增加程序员的工作量。通过对不 同报表工具的研究,分析企业生产报表需求,制定在符合企业数据输出具有一定通用 性的报表系统的解决方案具有重要意义。 1 2 报表系统在过程工业监测平台中的位置 从过程工业监测系统的特点来看,其系统结构主要可以划分成三大模块:数据 采集模块、数据服务模块和数据监测显示模块。主要工作流程为:数据采集模块利 用各种驱动和组件将数据从各种生产设备和仪表中采集上来,并通过以太网或光纤将 2 第一章绪论 数据送到服务器端,服务器端将数据进行存放,并等待数据监测模块的调用,将所得 数据形象化的显示在监测人员面前。报表处理子系统属平台的数据监测显示端,是对 实时数据的显示和对历史数据的查询、统计、分析结果的显示,并可以扩展性对企业 生产所涉及的人员信息进行输出显示。 1 平台中报表系统的数据源 报表处理子系统在整个平台中是一个相对比较独立的子系统,在显示企业生产过 程数据方面,和监测平台的数据处理子系统密切相关,数据处理子系统根据报表子系 统读取数据的请求,向报表子系统提供相应的数据服务,数据处理子系统是报表子系 统的主要数据来源。在显示企业的管理信息方面,报表子系统可以完成相对独立的扩 展功能,如实现对企业人员信息和一些相关生产管理内容的制作显示。 在平台的设计中,数据处理子系统是整个平台构建的核心数据库,存放监测信息 和一些系统信息,根据该子系统的外部接口向平台的其他子系统提供数据服务,达到 对外屏蔽数据库结构,对内提高数据存储查询效率。 在构建监测系统时,数据处理系统主要提供两种类型与报表处理相关的数据。一 种是企业生产监测的核心位号数据,另外一种是监测对象信息。监测对象信息体现在 以下几个方面:主要是指生产设备信息,这些基本信息起着组织逻辑的功能,例如确 定某位号属于哪个车间,哪个工段及哪个流程,这些基本信息也是报表对生产数据进 行统计和分组时的不同的统计指标和分组依据。其次是指在企业生产中的一些重要静 态指标,如监测对象的单位、量程上下限等,在报表中计算平均值、最大值、最小值 或百分比时,单位之问的换算和量程的使用都非常频繁。再者,企业的生产管理信息 也是平台信息的重要组成部分,例如每个工厂都会有不同的车间,车间下面又可能会 有子车间等,报表系统从数据处理系统读取相关管理信息,对企业的组织结构及人员 管理进行显示输出。最后是用户的权限信息,其在构建系统时是必需的,通过对用户 权限的设定,系统依据不同的角色授权进行相应的报表操作。 2 报表处理系统与数据处理系统的接口1 3 l 数据处理子系统是报表处理系统的主要数据源,在生产过程中任何采集上来的数 据存放于数据处理子系统,报表系统对生产数据的展现需要从数据处理子系统读取数 据。数据处理子系统具有以下特点: ( 1 ) 模块对外提供标准接口,定义标准数据交换格式。 ( 2 ) 模块对外屏蔽数据库结构。 ( 3 ) 使用方便,快捷,提供多种优化方式。 基于数据处理子系统的特点,报表处理子系统和数据处理子系统的关系如图1 2 所示: 3 北京化t 人学顾i :学位论文 图l - 2 报表处理系统和数据处理系统的关系 f 唔1 2r e l a t i o n0 f 托p o ns y s t e m 锄dd a t ap l o c c s s i n gs y s 蛔n 报表子系统通过接口,向数据处理子系统传入查询参数,由接口调用数据处理子 系统内部的实现方法,返回数据集。 1 3 报表工具的发展现状与存在的问题 报表的处理是各种信息系统不可缺少的重要组成部分,报表以直观、概括、精 练的图表形式向用户提供有价值的信息。报表系统的应用非常广泛,以独立报表系统、 嵌入式报表系统和复合报表系统三种方式存在。报表的开发,早期主要由程序员编码 实现,后来主要通过第三方软件来开发报表1 4 】。近年来,随着软件开发技术的日新月 异,报表技术也不断成熟和完善,目前已经出现了一些优秀的且颇具特色的报表工具 软件,但在报表工具应用中也存在一些问题。以下扼要介绍一下报表工具的发展现状 与存在的问题。 1 3 1 报表工具的发展现状 报表从传统的手工操作发展到如今的数字化操作,经历了几次变革。随着企业管 理水平的进步及其信息化的发展,用户对报表的需求不断发生变化,从而,推动着报 表软件的发展,在对报表的开发应用中,出现了各种各样的报表工具。下面从国外和 国内两个方面介绍报表工具的发展现状。 1 国外报表工具发展现状 国外的报表开发工具很多,通过对其的应用可以把报表集成到w r e b 网站、门户 4 第一章绪论 网站、局域网和桌面应用程序中【5 1 。开发桌面应用程序主要采用开发工具自带的报表 开发工具,如b u s i n e s so b j e c t s 公司的c r y s t a lr e p o n 、g r a p e c i t y 公司提供的a c t i v e r e p o n 、f 勰tr e p o r t 公司的f 嬲tr e p o n 控件以及d e l p h i 自带的q u i c kr e p o n 报表组件。 一般来说,这些报表开发工具仅能处理一些简单的数据库报表输出,对复杂格式的报 表往往无能为力。 随着需求的发展,出现了b s 模式的报表工具,该类报表工具的数据源及报表引 擎处理逻辑均位于服务器端,用户在w c b 浏览器中浏览各种格式的报表,不需要下 载任何软件。目前,在国外产品中,采用b s 模式的报表系统比较成熟的开发工具有: c r y s t a lr e p o r tf o r 跚a ls l u d i o 砸玎、a c t i v e r e p o nf o r 砸汀以及s q ls c r v e r 2 0 0 5 中 的r c p o n i n gs e i c e 。 铆s t a lr e p o n sf o r 跚a ls t l l d i o n l 玎在开发w 曲报表方面具有以下优点:在m e t 平台能够轻松创建交互式的、高质量显现的报表内容,可以在w 曲平台和w i n d o w s 平台上承载报表,并将c r v s t a l 报表作为报表w 曲服务在w 曲服务器上发布1 6 j 。 m i v er e p o r t sf o rv i s u a ls t l l d i o n e t 是为适应n l 疆开发平台而开的w 曲报表工 具。m i v er e p o r t s 五d r t 的功能和灵活性与触i v er e p o n 相似,并提供了完整 的m 玎环境下的代码集成。使用闷玎版的a c t i v e r e p o r t 可以采用s u a l s t u d i o n e 丌 编辑器,可用c 挣或v i s u a l b a s i c n e t 语言编写报表代码,以实现分页和多页浏览,文 本搜索,内容列表和定制工具栏。 s q ls e r v e r 2 0 0 5 中的r e p o n i n gs e i c c 是一种基于服务器的新型报表平台,该平 台构建在n e tf r a m e w o r k2 o 上并与s q ls e r v e r2 0 0 5 集成在一起,可用于创建和 管理包含来自关系数据源和多维数据源数据的表格报表、矩阵报表、图形报表和自由 格式报表,可以通过基于w 曲的连接来查看和管理创建的报表,可以使用一个可扩 展的基于w e b 服务的a p i 将报表生成功能集成到应用程序中,因此,s q l s e e 记0 0 5r e p o n i n gs e r v i c e s 是在w i n d o w s 平台下开发企业报表的一种比较好的工 具。 由于国外报表开发工具在报表的设计和使用上都不太符合中国用户的习惯,其展 现报表的格式与国内的报表格式不同,可定制性差、价格昂贵等问题,所以在国内应 用不是十分广泛。 2 国内报表工具的发展现状 对于国内的报表开发,一方面是开发人员大都采用根据用户提出的实际需求,利 用现有的开发工具用固定的方式来解决报表的格式和数据的筛选,以至于编制出的报 表的功能仅满足当时用户提出的要求,系统没有可扩展和通用性,造成大量人力和物 力的浪费。另一方面是为用户提供生成报表的工具,如用友华表提供的c e l l 组件 i v e x 控件) ,c e l l 组件适用于开发w i n d o w s 桌面应用程序,可在v c ,v b ,c 撑, d e l p h i ,p b ,v f p ,c + + b u i l d e r 等开发工具下使用,它是一个符合中国入习惯的电子 5 北京化t 人学硕i :学位论文 表格软件,具有类似数据库一样的数据查询功能,是一个专用的报表工具f 7 1 。 对于w 曲报表的开发,国内也有较为成熟的工具可以使用,这方面以用友华表 提供的c e h 插件和深圳明宇科技研发的m i n g w e bf e p o n 尤为出色。c e l l 插件主要用于 开发w e b 应用程序,支持m m l ,a s p ,j s p ,v b s c r i p t ,j a v 嬲c r i p t 等语言。m i n g w e br e p o r t 是简单易用的专业w r e b 报表开发工具,它很好地解决了b s 软件中报表的制作及输 出等难题,并能存取、分析、分享数据和灵活地转换、分发、管理报表。m i n g w e br e p o n 支持多种操作系统如w i n d o w s 、u n i 】【、u n 呶以及多种w 曲平台,提供简繁体中文、 英文等多个语种的版本,支持a s p 、a s p n e t 和j 2 e e 架构的w r c b 应用环境。以上两 种开发工具本质上是开发适合于中国人使用的用于制作w r e b 报表的a c t i v e x 控件。近 年来,国内在w r e b 报表的研究开发方面做了很多有益的尝试,如采用x m l 技术,通 过x m l 的自定义功能定义出所需要的格式控制标签,对服务器端进行动态编码后通 过w | c b 服务器传到客户端,然后在客户端进行格式解析,根据服务器端定义的打印 格式打印出需要报表,使用这种方法能够精确控制打印格式【8 l o 但它要求数据库支持 x m l 格式的数据查询与转换,在客户端还需要相应的x m l 文件解析器,因此这种方 法没有被普遍采用。 1 j 2 报表系统存在的问题 通过对当前的各种报表系统解决方案的研究,报表系统存在的问题主要体现在: 报表种类增多,没有经过统一的规划和管理;报表功能被限定在事先提供的报表需求 范围之内,生成报表的种类固定,虽然使用方便,但增加报表种类必须改写应用系统 代码,带来系统扩充困难、成本大的问题【9 】;对报表格式或数据的微小改动均需要调 用报表管理工具,效率不高。由此可见,我们需要一种既适用于某一应用领域又便于 维护、通用性强的报表形式,使用户可以根据自己的需要来修改和定制一些报表。 1 4 课题研究的目的和内容 1 4 1 目的 随着工业自动化的发展和企业对信息技术的采用,报表在企业的生产过程起很重 要的作用。企业生产报表是反应生产过程中的过程数据、运行状态等,并对数据进行 记录、统计的一种重要工具,是生产过程必不可少的一个重要环节。它既能反应系统 实时的生产情况又能对生产过程中的历史数据进行统计、分析,使管理人员能够掌握 和分析生产过程情况。针对各个企业不同的需求,其管理系统所要求实现的报表系统 也不同,因此结合企业实际设计与实现有一定通用性和扩展性的报表系统是必要的。 6 第一章绪论 1 4 2 内容 对企业生产报表系统的研究从报表格式、报表数据的处理及报表的打印输出进行 分析,研究符合企业生产输出的具有一定通用性的报表系统。首要解决报表系统的格 式问题。虽然各个企业针对本企业的情况所要求实现的报表展现形式会有所不同,但 各企业的生产报表基本的表格模板和基本的功能是相近的。本文将对企业的各种类型 的报表需求进行分析,建立报表模板库,并通过参数控制报表的显示模块,允许用户 进行一定的自定义设置。 企业生产报表所涉及的第二个问题就是对报表数据的处理,由于企业所要展现输 出的数据可能有多种来源,所以要考虑报表工具对数据多源问题的处理,其中数据源 可以来自数据库不同的表或视图,也可以来自不同数据文件。对多源数据的处理要考 虑数据和报表单元格的映射关系,报表和平台的相关子系统的数据接口问题,报表对 多源数据从数据库读取的方式,以及从数据库读取数据的效率问题。 最后,是报表的输出问题,报表工具在制作时尽量实现方便用户的输出形式,如 文本、网页、e x c e l 、p d f 等形式。报表生成器也可以直接打印,提供相关的打印设 置,如排版、字体设置和分页。 报表是m i s 系统中各种数据信息的最终输出结果,是其重要的组成部分,因此, 企业的报表通常要有权限管理功能,设定用户的操作权限。 7 第二章报表技术研究 2 1 报表 2 1 1 报表及其特性 第二章报表技术研究 简单来说报表是一个信息交付的平台,是对转换成有用信息的数据的展现,是 指用直线、方格、文字、图表、数据来组织和表示信息的一种媒介。报表就其实质 而言,是信息的发布,包括内容和形式两个方面。形式方面:报表是表格,具有“统 一规定的表格形式,_ 搬表的内容要按照一定的格式组织;内容方面:报表要“报告 情况”,“反映生产经营成果和财务状况- 一艮表的内容是各种各样的数据。同时报 表是“数据处理系统所预备好”的输出文件,是“总结性文件乙搬表中的数据是经过 处理的数据1 1 u j 。 报表包含了人们所需要的信息,是便于人们阅读的表格和报告。在计算机特别是 数据库应用系统中,报表包含的信息主要来自数据库。通常报表具有以下一些特征: 1 由于报表包含的是人们所需要的信息,所以报表是面向应用的,而数据库中的 数据则是面向数据管理。这一差别说明要得到报表所需要的信息,需要对数据库中的 数据进行一定的加工处理,即有一个数据提取的过程。 2 报表的表现形式要易于人们阅读理解。报表的这一特征不仅使其区别于只有很 少量有用信息的实时交互查询,而且也隐含的说明了最终得到一张报表,需要对数据 加工处理得到的相应信息进行一番“格式化”处理,如标题居中、数据对齐、字体字号 等。 3 报表大多具有固定格式。对于固定格式的报表,报表的格式化处理可以在报表 数据输入前确定,具有重复使用的特性。在系统开发中,可以根据用户的使用频率把 报表分为两类:固定报表和格式灵活的报表。前者是所有用户经常使用的,故可以把 这类报表用模板加以保存,以便于用户重复使用。后者是用户不常用的报表,不用形 成报表模板,采用随机生成的方式来实现。 2 1 2 报表、报表工具、报表系统的分类 1 报表分类1 1 l 1 2 】 报表可以按照不同的标准分类。从报表的格式和样式来说,报表可以分为固定格 式报表和可变格式报表。固定格式是指报表的样式、打印纸张和字体等严格按照规定 不能改变,财务报表、专用票据等属于此类型的报表。可变格式的报表更注重所显示 数据的内容和结果,在决策支持系统中这种报表较常见。 9 北京化t 人学硕i :学位论文 从报表的实现方式来分,可以分为静态报表和动态报表。静态报表指在程序设计 阶段就将报表所要展现的数据通过程序代码来完成,并且确定好其表格样式。这种报 表可以实现事先设计好的任何样式的表格,但其数据的动态性和可控制性差。动态报 表指数据和表格样式可在程序运行之后进行操作和改变,但它展现的表格样式有限。 从报表的设计思想和所基于的报表模型看,报表可以分为基于条带的报表和基于 表格的报表。条带式报表以s q i o l a p 为理论基础,可以基于数据库或数据仓库作 自动化的报表生成,一般依次分成几个条状的区域:标题区、细节区、统计区和分组 区,整个界面由一个个横条区域组成。表格是报表以e x c c l 为原型,易于解决报表的 格式和展现问题,和数据库的接口基本没有或比较简单。 从报表的展现方式看,可分为规整报表、复杂报表、套打报表和图形报表。规整 报表又称长报表,它通常要分几页显示,也是最常见的报表,其最大的特点是在固定 的表头下重复着若干行类型相同的记录。复杂报表是指行列的分布不规律的报表。所 谓套打,就是指在打印纸的规定位置上输入相应的信息,与其它报表打印不同的是, 它并不要完整的打印出报表的标题、边框等信息,只需要在规定的地方打印出相应的 数据就可以了。图形报表是报表的一个重要组成部分,图形报表能很直观的反映出要 显示的数据间的关系,有利于更加好地分析数据,可为决策提供很好的依据。 2 报表工具的分类 目前,报表工具种类繁多,按照使用方式可分为:独立报表工具、嵌入式报表工 具和复合报表工具。 独立报表工具:这类报表工具一般可以独立运行,设计、浏览和打印报表。生成 的报表一般保存为私有格式。 嵌入式报表工具:指能嵌入到其它开发环境中使用的报表工具。这类报表工具一 般能封装成构件或类,不能独立运行,在其它开发环境中编程使用。 复合报表工具:这类报表工具可以独立使用也可以在开发环境中使用,其一般可 提供独立的报表工具,也可以封装成组件在一定的开发环境中使用。 关于以上三种工具,在目前的实际应用中,第二种和第三种工具比较流行,在特 定的环境中可以和其它应用工具灵活结合,开发出具有丰富功能的报表系统,是制定 报表系统开发方案比较流行的选择。 3 报表系统分类f 1 3 j 目前的报表系统通常可以分为专业报表系统、通用报表系统和电子表格系统三大 类。 专业报表系统把报表的种类( 张数) 、格式和编制方法固定在程序中。报表有变 化,程序就随之需要修改。以前许多应用程序采用此种方法提供报表功能。 通用报表系统允许用户定义报表的种类( 张数) 、格式、数据。报表系统根据用 户的报表定义,从数据库资源中提取数据,按照用户的报表格式定义,生成报表的全 1 0 笫_ 二章撤表技术研究 部内容。通用报表系统提供的自定义报表功能,使得用户在不需要程序设计或修改程 序的情况下,就能生成自己所需要的报表。因此,这类报表系统对编制报表非常实用。 电子表是一种“纯粹”的表处理系统,实际上各种表处理都可以通过电子表格系统 实现。同样,电子表格系统可以用来方便的编制各种报表。典型的电子表格系统如 e x c c l 。电子表格系统大都是可视化界面,每张表由行和列划分为许多单元格,在单 元格中定义数据和格式,使用方便。而且,大多提供图形功能、大量的函数和工具, 方便用户使用。但这类工具由于编程接口并不容易掌握,而且嵌入开发环境并不稳定, 因此并不被开发者所常用。 2 1 3 几种典型报表工具 现有的报表工具种类繁多,功能界面各具特色,下面对几种比较典型的报表工 具作介绍。 1 e x c e l e x c c l 是历史悠久的电子表程序之一,功能强大,许多后来出现的w i n d o w s 报 表工具均受其影响,甚至在功能和界面上加以模仿,出现了“类”e x c e l 报表工具。e x c e l 具有如下特点: ( 1 ) 可视化界面 e x c c l 提供工作薄和工作表,一个工作薄包括若干张工作表,一张工作表即是一 张报表。每张工作表由若干单元格组成,每个单元格可以单独操作:设计单元格的数 据格式,定义数据公式等。对报表作出修改后,可以立即看到修改结果。 ( 2 ) 丰富的格式支持 e x c e l 报表中可以包括文字、数字、图形等多种内容;提供文字的字体大小、颜 色、数字的显示格式等格式控制;支持条件格式化。 ( 3 ) 丰富的数据处理功能 提供多种数据处理函数:数据库函数、日期与时间函数、工程函数、财务函数、 逻辑函数、查询和引用函数、数学和三角函数、统计函数、文本函数等;支持数据的 分组、合计等【1 剞。 ( 4 ) 支持多种数据源f 1 5 l 可访问的数据库包括: m i c r o s o f ts q ls e r v e ro l a ps e n ,i c e s m i c r o s o f ta c c e 豁2 0 0 0 d b a s e m i c r o s o f tf b x p r 0 m i 锄s o ne x c e l 1 1 北京化t 人学硕l j 学位论文 0 r a c l e p a r a d o x s q l s e e r 文本文件数据库 此外,使用d a o 可以检索m i c r o s o f j 【e x c h a n g e 或l 0 t u s1 - 2 3 数据源中的数 据。还可以使用o d b c 驱动程序或数据源驱动程序以获取其他类型数据库中的信 息。 ( 5 ) w 幽发布支持 e x c c l 支持将报表放置到w | c b 页上,用户不需要在计算机上安装e x c c l 就可以 访问报表。 ( 6 ) 支持交互式报表 如果希望用户可以与报表中的数据进行交互,则可以将数据设置为交互式。在交 互式报表中,用户可以进行以下操作:筛选、输入新值以进行计算,或汇总和分析数 据。 仍提供编程环境 e x c e l 提供了v i s u a lb 弱i cf o ra p p l i c a t i o n s b a ) 和v i s u a lb a s i c 编程环境,同 时支持o l e ,用户可以使用v 】b a 编写自定义函数,实现对已有数据处理函数库的 扩充,满足实际需要。 2 c r y s t a lr e p o r t 【1 6 】 水晶报表是c r y s t a l 公司开发的优秀的报表工具,并被嵌入微软的m 强开发环境 中。水晶报表的主要组成部分为:报表引擎、报表设计器、报表查看控件、即t 报表 文件和数据源。 水晶报表可提供数据访问的拉模型和推模型。使用拉模型时,驱动程序连接到数 据库并根据需要把数据“拉”进来,使用这种模式报表引擎提取的是报表设计时数据库 对象确定的数据,不能提前筛选数据。推模型需要开发人员编写代码连接数据库,执 行s q l 命令以创建与报表中的字段匹配的记录集或数据集,并且将该对象传递给报 表。该方法可以将连接共享置入应用程序中,并在c r y s t a lr e p o r t s 收到数据之前先将 数据筛选出来。采用推模型,可以先对数据进行筛选、处理,然后推入报表引擎,可 以与应用程序中的其他对象共享数据库联机数据,并且报表引擎不需要接触数据库, 由程序负责生成数据集,使其不受报表引擎的限制。 在n e t 环境中水晶报表可以导入一般的w i n d o w s 程序,也可以放到w r e b 网页上, 让用户通过网页查看并打印这些报表。水晶报表具有连接不同数据源和b i ( 商业智 能支持0 l a p ) 的特性,能很好的作为数据处理层的前端展现。 3 s q ls e e r 提供的r e p o n i i l gs e i c e r e p o n j n gs e r v i c e s 是微软在2 0 0 3 年作为s q ls e r v e r 2 0 0 0 产品套件的一部分发布 1 2 第二章报表技术研究 的,2 0 0 5 年在s q ls e r v e r 2 0 0 5 中进行了扩展。s q ls e r v e r 报表服务是一种基于服务 器的新型报表平台,该平台构建在n e tf r a m e w o r k2 o 上并与s q ls e e r2 0 0 5 集 成在一起,可用于创建和管理包含来自关系数据源和多维数据源的数据的表格报表、 矩阵报表、图形报表和自由格式报表,可以通过基于w 曲的连接来查看和管理创建 的报表,可以使用一个扩展的基于w e b 服务的a p i 将丰富的报表生成功能集成到 应用程序中。 4 用友华表的c e l l 控件【1 7 1 1 8 l c c l l 产品分c e u 组件和c c u 插件两个姐妹产品。c e u 组件、插件( a m i v e x 控件) 是北京用友华表公司在长期开发实践的基础上推出的功能强大、技术成熟的报表二次 开发工具,是国内技术领先拥有广泛客户群的商业报表组件,其有6 0 0 多个编程接口, 可实现报表白定义,报表显示、打印预览、打印,图表,公式,自定义函数等功能。 c e l l 控件具有如下特点: ( 1 ) 能够制作出格式复杂的报表,满足用户对报表格式的要求。 ( 2 ) c e u 对打印的支持非常丰富。可以设置页眉,页脚,页边距,打印预览无 级缩放,多页显示。 ( 3 ) 通过c e l l 组件,您可以将数据转化为具有高度交互性的内容,c e l l 的单元 格多种多样,可以从几十种格式中选择按钮,下拉框,单选钮,核选框,滚卷钮。 ( 4 ) c e l l 产品中内置了上百个函数,基本满足用户的需求。c e u 中的单元公式 是相对单元公式,用户在作表行列插入删除操作时,将不会影响以前输入的单元公式。 用户在编辑公式时可以立即求得公式的结果,如果公式存在循环弓 用,c e l l 会列出产 生循环引用的公式列表。 ( 5 ) c e l l 产品除了提供一些常用函数外,用户可以根据自己的业务逻辑需求添 加自己的函数,这样就能完全满足用户做报表时要求,增大了做报表的灵活性,使你 的报表如虎添翼。采用c ,v b ,v b s 嘶p t 等语言皆可以编制自定义函数。自定义函 数可以无限制次数的嵌套。除了数值与字符串两种数据类型外,c e u 还定义了单元格 数据类型与区域数据类型,极大地增强了函数的易用性。 ( 6 ) 通过指定图表数据在表上的位置,完成图表的制作。可以指定图表数据并 不来源于表格,以及控制图表的每一个数据。 ( 7 ) c e l l 产品采用分析e x c e l 二进制文件格式的方式支持和e x c e l 文件的转换, 转换效率和转换效果好。 ( 8 ) 在公式中可以用单元格的名称来代替单元格。 ( 9 ) c e n 产品支持输出h t m l 、p d f 、c s v 等格式的文件。 c e l l 组件的开发应用模式如图2 1 所示: 1 3 北京化t 人学烦j j 学位论文 f ”,:,:_ 臻 卜:i ;。; 0i & ll 撬赢; 图2 - l 伽组件的开发与应用模式 f 喀2 - 1c e uc o m p e n td e v e l o p m e n ta n da p p l i c a t i o nm 0 d e 2 1 4 报表工具的分析比较f 1 9 l 目前,市场上的报表工具种类繁多,面对这些五花八门的产品,很难仅从某一个 方面就将它们都分类阐述清楚,更无法简单地分别打分评出优劣,必须分别从多个角 度把各产品放在一起加以比较讨论才能对其在市场中所处地位有较深入清晰的认识。 根据目前对报表工具的应用现状,从以下几个方面进行分析比较,以便于根据实际 应用环境,选择合适的报表工具,制定报表系统的解决方案。 1 产品产地 从产地上可以简单地分为国外产品和国内产品两类,表2 1 从商业职能系统软件 供应和专业报表软件两个方面列出了市场上主流报表工具,采用这样的分类在以下的 讨论中也能比较方便地讲述。 表2 1 报表工具产地分类 i a b l e2 - lc a t c g o r i e so r i 百nr e p o r t i n gt o o l s 国外产品一般都价格较为昂贵( 常被称作高端产品) ,而国内产品则普遍比较便 宜,国外产品大多数都带有b i 色彩,而国内产品则大多是纯报表工具产品。 1 4 第二章报表技术研究 在国内市场上,使用较多的国外报表软件主要还包括c r y s t a l r e p o n 、s t y l e r e p o n 、 f 嬲t r e p o n 、j a s p e r r e p o n + i r e p o n 以及j r e p o n 等产品。其中,除了f 弱t r e p o n 是一家 前苏联的公司以外,其他均为美国公司的产品,并各有特色。s t y l e r e p o n 可以说是最 早出现的j a v a 报表工具。j 嬲p e r r e p o n + i r e p o n 也是一个纯j a v a 的报表工具,并且是 一个免费开源的产品。f 鹤t r e p o n 是一个快速生成报表的第三方控件报表,纯d e l p h i 代码编制。 2 实现技术及原创程度 目前j 2 e e 技术在国内的b s 应用开发中占主导地位,对j a v a 的支持也是报表工 具的一个重要考查指标。从这个意义上讲,报表工具可以分为纯j a v a 和非纯j a v a 两 种,并且所有声称支持b s 应用的报表工具都能支持j a v a 。 纯j a v a 产品能够与j 2 e e 应用完全无缝结合以达到最高的运行效率,直接安装部 署到如w 曲l o 西cs e r v e r 、w 曲s p h e r e 、j b 0 s s 等应用服务器上;同时还可充分利用j 2 e e 应用服务器强大的集群平衡负载及共享管理的能力,适合支持用户数众多的大型应用 系统:由于j a v a 的跨平台能力,还能让整个应用系统轻松地从低端体系向高端体系迁 移,系统容量变大时只要更换硬件、操作系统及数据库等系统部件而无需或很少需要 重写软件。 非纯j a v a 产品,经常在w i n d o w s 下运行,例如c r y s t a lr e p o n 、r e p o r t i n gs e r v i c e 和微软的m 汀平台及s q l s e e f 作了很好的集成,增强了在w i n d o 、s 平台下的应用 能力。 表2 - 2 报表工具实现技术分类 t a b i e2 - 2r e p o n i n gt 0 0 lt e c h n o l o g yc a t e g o f ) , 除了采用的技术外,其技术的原创程度也是个较重要的指标,它能够在某种程 度上体现公司的研发能力以及产品的后续升级能力。手中不掌握原创技术的厂商无法 对产品有完全的控制,其产品发展将严重受制于人,显然不适合与之长期合作。 所有国外产品都是原创技术的,国内产品中润乾报表、中创i n f o r r e p o n 、用友 华表都有原创技术。 1 5 北京化t 人学硕l :学位论文 3 绘制方案 从绘制方案上区分一般有单元格式和控件拖拽式两种,前者采用类e x c e l 的方 案,用网格线围出报表;而后者则是用矩形框等可视化控件元素拼出报表。 国内报表对样式要求非常复杂而且严格,绘制方案是报表工具相当重要的指标, 它决定了报表样式的复杂度和绘制效率,以及导出e x c e l 的能力,一般用户都会有 此需求。单元格式在这方面有明显的优势,能够画出样式很复杂的报表,而且导出 e x c e l 时格式上不会失真,个别产品还可以直接读入e x c e l 画好的表以进一步提高 效率。而控件拖拽式在操作上则显得相对复杂些,表格线需要靠矩形框重合摆放拼接 出来,常见的复杂多层表头画起来非常繁琐,数据区某些纵向合并甚至无法绘制出来, 拼出的格线还与分辨率相关,屏幕上对齐的表在打印时或w r e b 上显示时又可能不整 齐,生成e x c e l 时经常丧失格式或导致格线太多太细而无法应用,读入e x c e l 格 式则更是完全不可能有的功能。 国外的报表样式非常规整,很少有分层分组,即使没有格线,如果表层数不多, 数据对的整齐就行了,表头非常简单,并且没有斜线表头,不容易看花眼,由于国外 产品是从简单的西方报表模型抽象出来的,所以处理中国式复杂报表的能力都较差, 而且一般不会提供任何变通的手法,而国内产品,由于很少没有格线的,不仅有格线, 表内嵌套也很繁杂,大格套小格并且有国外报表没有的斜线,大多数对复杂报表解决 也不够好,但针对个别问题一般都会有些变通手法,因此国内应用应性更强一些:国 外产品的历史大都很久,做工非常精细,除了模型算法不太适应国内需求外,常识性 的细节做的很好,国内产品历史积累较短,导致产品较粗糙和细节不够完整。 国外产品中除a c t u a

温馨提示

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

评论

0/150

提交评论