报表系统范文

时间:2023-03-08 07:28:54

报表系统

报表系统范文第1篇

ATM监控系统集SNA通信技术、TCP/IP通信技术、数据库技术、数据库远程同步技术、语音卡技术、报表技术等多种技术于一体,实现了基于银行分布式网络环境下的ATM集中管理。银行需要通过ATM监控系统将总行数据分发到各地市行的数据库,各地市行通过报表及时掌握本地区ATM机的整体状态信息、局部状态信息和交易信息。同时,银行高级管理人员通过系统灵活的报表来进行科学的决策分析。所以,从用户的使用频度来说,除了交易监控之外,接下来就是报表的使用了。由此可见,报表是很重要的一项功能。相对应的,报表内容的测试在整个ATM监控系统中也就显得很重要了。

虽然所有报表测试的总体目标都是相同的,即要求生成的报表的统计结果是正确的。但是因为银行业务的独特性,所以ATM监控系统的报表测试与一般信息管理系统的报表测试,在以下三方面有所不同。

信息类型不同

ATM监控系统要处理的信息有两类:一类是管理信息,主要用于将ATM的状态告知前置服务器,如OEX信息、RWT、RDT、RTT等交易;另一类是客户交易信息。而一般信息管理系统要处理的信息则主要是交易信息。

报表统计的原始数据不同

对于ATM监控系统,每天日切时,系统将根据历史(包括当日)的交易以及状态信息进行分析统计,产生新的分析统计记录。ATM监控系统的报表统计功能使用的原始数据就是这些每日产生的新的分析统计记录(笔者在这里称为:报表中间数据)。而一般信息管理系统的原始数据,则是通过系统执行交易或操作产生的报表统计的原始数据。

测试方法不同

因为报表统计的原始数据不同,所以两类系统的报表在测试方法上也有一定的区别。对于一般的信息管理系统,可以通过在相应功能界面进行数据的增、删、改操作,然后在报表界面执行生成报表操作,就可以验证报表数据的正确性。但是ATM监控系统无法简单通过前台界面的操作来验证报表数据的正确性。

本文是笔者在某省行ATM监控系统中,对超过三十个报表进行测试的经验总结。在本项目的报表测试过程中,笔者主要通过以下六个方面进行测试:功能测试、界面测试、数据正确性测试、单设备和多设备测试、权限和访问安全性测试、报表性能情况验证。

功能测试

功能测试主要是对报表的基本功能进行测试,如正常生成报表功能、二次查询、报表导出等正常功能外,还对报表统计日期合法性控制、没有数据情况下进行生成报表等异常控制的测试。报表功能测试的主要目标是:验证报表基本功能的正确性,为后续的数据正确性测试奠定基础。

报表的功能测试是整个报表测试的基础内容。同时,通过这部分测试,测试人员可以逐步了解报表模块的需求,提高业务的熟悉程度。因为这部分内容的测试方法和其他功能的测试没有太大区别,所以这里不再详细介绍。

界面测试

报表的界面测试,也可以算是功能测试的一部分,但是由于更侧重于界面内容的正确显示验证,所以笔者将它剥离出来作为单独的一项测试内容。

界面测试的主要目的是验证界面显示的内容是否正确,是否符合软件开发规范。避免出现如表格布局不合规范、打印的硬拷贝少了表格线、界面有多余字符之类的情况。在报表测试中,界面测试的主要内容包括:报表表头信息、报表整体界面、报表导出文件的界面显示、打印预览时的界面显示、打印出的硬拷贝内容的界面显示等。

数据正确性测试

报表功能的基本要求,就是通过统计分析操作,提供给用户所需的准确数据。如果无法实现这个基本要求,则报表会完全失去意义。所以,报表测试很重要的一个内容就是对报表数据进行正确性的测试,而这部分工作也最复杂。在本文提到的某省行ATM监控系统的报表测试中,笔者主要从以下五个方面进行报表数据正确性的测试。

1.多个报表相互对照

在交易类报表中,有一些报表取的原始数据是相同的,我们可以在假设这些报表取的数据库表的数据是正确的前提下,通过对比这些报表相同列的数据,进行报表结果是否取正确数据的验证。如:交易情况明细表、金融交易统计表、它行卡、发卡机构交易分析、盈利情况表,虽然这几张报表表单不一样,但是本行卡、它行卡的交易笔数、金额却应该是相同的。在测试时,我们通过对比这几张报表同一字段的数据,发现“金融交易统计报表”中,“改密”和“缴费”这两列取了错误的数据。

这种方法是在有假设的前提下进行的,所以具有一定的局限性。假如所有报表的同一列都取错了数据的话,那么这个方法就失效了。尽管如此,这个方法还是可以帮助我们在测试初期快速发现一些简单的数据错误缺陷。

2.修改数据库数据

部分报表的数据,由于数据的验证比较烦琐,可以通过修改数据库表对应字段数据的方式,来验证报表数据是否如预期设置生成报表。

在测试“厂商服务质量报告”时,为了验证报表是否只统计“接警操作员”和“修复操作员”为同一个人对应的故障数据,我们可以在数据库中修改某一故障记录对应的“修复操作员”的数据,将它修改为和“接警操作员”不一致的数据,然后进入系统,生成对应统计条件的报表数据,验证系统是否有将这条“修复操作员”和“接警操作员”不相同的故障记录也统计出来,通过这种方式来验证数据的正确性。

3.特征数据的准备

对于有特殊计算要求的报表,我们要准备相应的特征数据。在本系统中,每台设备在省行、分行等各级机构,分别设置了直接维护人员、监护人员、督办人员三个管理员。当ATM产生故障时,这些管理员要对这些故障进行响应和处理。为了统计管理员们及时响应故障、及时处理故障的情况,系统设计了响应及时率、处理及时率之类的及时率计算数据。对于这类报表数据正确性的验证,笔者使用边界值和等价类划分的测试用例设计方法,设计了及时率测试用例。具体举例如下。

处理及时率的计算方法是:将“故障修复时间”与“故障报警时间”的差值与配置文件中的“故障处理超时时间”进行对比。当差值小于或等于配置文件的设置,则说明处理及时;反之为处理超时。在实际测试时,笔者修改配置文件中的“故障处理超时时间”为10秒,然后修改某故障记录的“故障修复时间”与“故障报警时间”的差值分别等于9秒、10秒、11秒,然后执行报表生成操作,验证系统是否正确统计及时和超时的数据。

通过这个例子说明,在进行类似需要进行类比操作后才能得到的统计数据,可以考虑将测试用例设计方法融入测试设计中,设计特征数据来进行测试,避免测试的盲目性。

4.报表数据的正确性验证

ATM监控系统的报表统计的“原始数据”是通过后台程序在指定时间,对日常交易数据、管理数据进行统计、分析后生成的,所以在进行ATM监控系统的报表测试时,还需要对生成的报表中间数据的正确性进行测试。这部分测试的重点是,验证后台程序是否将符合条件的交易数据、管理数据生成报表中间数据,即验证报表中间数据的正确性。

例如,在进行生成故障报表数据的测试时,为了验证系统没有将“维护结果”为“尚未处理”的报警记录生成报表中间数据,但是“维护结果”为“成功”和“失败”的报警记录可以生成报表中间数据的功能。笔者特意设计了三笔不同“维护结果”(成功、失败、尚未处理)的报警记录,执行生成报表中间数据的脚本,然后到“故障统计分析”报表中,验证生成的报表数据是否正确(如果报表中间数据生成有误,这里得到的报表是错误的)。采用这种方式间接验证程序是否如预期的要求生成了正确的报表中间数据。

5.留意四舍五入对报表数据的影响

在生成的统计报表中,报表数据不可避免的会发生四舍五入的情况。对于普通比例列的计算,只需验证是否正确四舍五入即可。这里提到要留意四舍五入对报表数据的影响,主要是指四舍五入对于合计列的影响。如:对于合计列,要注意百分比的合计结果应为100%,合计列的数值要等于所有统计列之和。

单设备与多设备测试

为了验证程序在选择单设备和多设备时处理是否都正确,笔者特意对报表模块,在选择单设备和多设备的两种情况下分别进行测试。这部分测试,可以说是功能测试中的一项边界测试。由于测试目的明确,所以笔者将它单独出来说明。通过这部分测试,笔者发现了部分报表在单设备情况下,处理有误的缺陷。

权限和访问安全性测试

在报表测试中,除了功能测试、数据正确性测试外,我们不要遗漏权限控制和访问安全性的测试。为了验证报表在权限控制和访问安全性的控制,笔者使用不同机构的用户对报表模块的所有报表进行测试,验证权限控制,以及报表正确筛选数据的功能。指定机构级别的用户只能看到指定机构级别的数据和设备。例如:使用三级机构的用户登录系统,进入某个报表界面,即使是直接选中“省行”执行生成报表操作,也只能列出该机构所属设备对应的信息。

报表性能情况验证

虽然报表公认响应速度是很慢的。但是从用户接受度来说,也不可能出奇得慢,尤其是对于用户常用的报表。为了检查在大数据量情况下,报表的响应情况,笔者以省行用户登录系统,在一个月实际运行数据的情况下,对省行下的所有设备(1000多台)进行交易情况的统计。通过测试结果反映,对于交易情况统计这类常用报表,在数据量大的时候,响应速度过慢。通过这次测试结果给项目组敲了个警钟,项目经理组织人员对报表实现方式等进行了一系列的优化。如原来默认对所选机构,包括所属机构的全部设备进行统计,改为默认只对所选机构本级别下的设备进行统计。通过一系列的调整,优化了报表的性能。

报表系统范文第2篇

关键词:报表;独立性;分离

中图分类号:TP393文献标识码:A文章编号:1009-3044(2009)34-9722-02

The Research and Implementation of Web Report Formed System

WU Ge1, WU Wei2

(1. School of Computer, Jiangxi Aviation Vocational & Technical College, Nanchang 330024, China; 2. Jiangxi Applied Technology of College, Ganzhou 3410000, China)

Abstract: The report is the information issue, including content and information. In the design, the mainly characteristics of this system is the separation between data and styles, namely the identical data of the report could have many displaying styles. Therefore, the separation between data and styles strengthens the data independence and enhances the data sharing degree.

Key words: Report; Independence; Separation

1 背景

在企业的信息管理中不可避免地要编制各种各样的报表,报表是企业生产、销售等各个环节的重要依据。报表就其实质而言,是信息的,包括形式和内容两方面。形式方面,报表是表格,按照一定的格式组织。内容方面,报表要“报告情况”,反映经营成果和财务状况,报表内容是各种各样有用的数据。同时,报表是“数据处理系统所预备好”的输出文件,是总结性文件,即报表中的数据是经过处理后的数据。随着Internet的广泛应用,电子商务及ERP(Enterprise Resource Planning,企业资源计划)得到迅猛发展,数据的采集、传输、交互、安全等问题显得越来越重要。报表作为一种信息组织和展示的有利手段,是企业信息系统的重要组成部分。据不完全估计,系统应用的60%以上与报表有关。报表的生成系统在各行各业中都有着广泛的用途,是进行信息浏览、分析、打印的有利工具。随着WWW技术的发展,报表生成系统从传统的客户/服务器结构正逐步向Internet转移,越来越多的报表应用在Web环境下开发与运行。

2 数据库的连接

信息系统的主要任务是通过大量的数据获得管理所需要的信息,这就必须存储和管理大量的数据。因此建立一个良好的数据组织结构和数据库,使整个系统都可以迅速、方便、准确地调用和管理所需的数据,是衡量信息系统开发工作好坏的主要指标之一。

在本系统的数据库连接中,应用程序所采用的数据库连接方式是使用ODBC驱动程序,免去了配置ODBC数据源的步骤,可以利用ODBC驱动程序与数据库相连接。代码如下:

var conn,connstr,query;

conn=Server.CreateObject("ADODB.CONNECTION");

connstr="Driver={SQL Server};Server=(local);Database=deports;UID=sa;PWD=sql;"

conn.Open (connstr)

3 报表数据管理

报表数据管理页面包括在系统管理员权限页面里,系统管理员的登录页面使用了员工信息表。在系统登录页面里还需要引用这个表的用户名,密码和是否是管理员等字段进行用户身份鉴别。如果用户身份通过验证的话,系统登录页面还要记录用户的详细信息,留待以后的系统页面使用。

报表数据管理是管理员权限里的功能,包括员工信息数据管理和员工工资数据管理。员工信息数据管理是管理员可以通过该管理页面查看所有的员工信息,然后根据需要,对数据进行不同的操作。在员工信息数据管理页面中,首先显示浏览,然后以表格的形式显示信息,它需要从数据库中读取记录。首先设定数据库的连接,以及返回的数据集。然后是查询员工信息表里面的所有记录查询出来,最后获取所有的值,然后将每条记录的所有字段都赋予特定变量的值,显示出来。这里为了方便浏览,还设置了分页功能。员工工资数据管理的设计过程类似于员工信息数据管理。

4 报表样式设计

报表样式设计属于后台设计,XML报表数据会按照设计好的样式自动展示出来。Web报表生成系统实现的是报表数据和报表格式的分离,XML报表数据文档里没有任何关于格式方面的信息,为XML文档提供信息的是XSL样式表,这就意味着同一报表数据可以有多种显示样式,方便用户根据需要对报表进行浏览。般的报表可以划分为八个区,分别为:页头、页尾、标题栏、报表头、报表体、汇总带,分组头,分组尾。针对具体的某一报表,可能会只有其中的几个区。针对于本系统中的报表设计,划分为六个区:页头、页尾、报表标题、报表头、报表体、汇总带。页头区设计的是单位名称和报表日期;页尾区设计的是报表的相关信息,如报表制作和审核的相关人员;报表标题区是显示在报表开始处,设计的是报表名;报表头区设计的是报表头部,如员工号、姓名等;汇总带区设计的是报表数据的总结,如金额、总人数等。本系统,对同一报表数据设计了2种显示样式:横向和纵向。

4.1 横向显示

报表系统范文第3篇

关键词:VFP报表;Excel模板;协同程序设计

中图分类号:TP317文献标识码:A文章编号:1009-3044(2011)20-4899-03

The Report Design was Made by Excel Template in the VFP Application System

ZHU Yang-qing

(The School of Electron and Information Engineering, Foshan University, Foshan 528000, China)

Abstract: During the VFP report design, how to use Excel template and Excel workbook object in the VFP, the complicated report design method and its program were given in this paper. An effective method of VFP application report form design with VFP and Excel was given in the VFP application system.

Key words: VFP report; Excel template; coordination programming

在应用系统中开发报表是一项重要的工作。在VFP(本文指VFP 6.0以上版本,下同)中进行报表设计时可以使用传统的程序设计和报表设计器工具两种方法。在VFP中还可以直接调用Excel应用程序对象,然后通过调用Excel 的方法和属性来实现表格的制作和数据传递,但这需要了解很多Excel的属性和方法。而利用Excel强大的制表功能形成表格模板,然后在VFP中把Excel作为应用程序对象进行调用,则可以快速制作出精美的报表。本文通过制作学生成绩报表,介绍这一过程的实现。

1 数据表的设计

本文涉及到两种数据表,一个是保存班级名称的数据表,只包含“班级名称”一个字段,本文该文件名为BJMC.DBF;另一种存放各班级学生成绩的数据表,包含学号、姓名以及各门功课的成绩(本文有高数、英语、普化、政治、电脑、物理6个字段,各个记录数据已保存在数据表中)和平均字段,平均字段成绩通过程序计算得出。为方便操作,每个班级学生成绩数据表的文件名与BJMC.DBF中的相应记录的“班级名称”一样。

2 Excel 模板设计

在Excel中制作如图1所示的模板。关键步骤如下:

1) 表格标题“学生成绩表”的制作。在Excel工作表sheet1第一行选中报表占用的列数,本文为A1:I1,然后单击格式工具栏的“合并及居中”命令,并进行字体及大小的设置。

2) A2单元输入“班级:”,H2单元输入“日期:”;B2单元中由程序自动填入班级名称,I2单元中由程序自动填入系统的日期。

3) 在A3:I3输入报表的字段名行。

4) 在B4:B9输入“平均”、“60分以下人数”、“[60,70)”(指大于等于60分小于70分,下同)、“[70,80)”、“[80,90)”、“[90,100]”。并设置该区域的背景色。

5) 在A10输入“单位:”、B10 输入“教务处”、H10输入“制表:”、I10输入制表人,如本文为“朱扬清”。

6) 将该文件保存为Excel模板文件。本文该文件名为XSCJMB.XLT。

需要填入的具体记录数据,由程序根据VFP数据库表中每一班级学生数量自动插入。图1报表如果在VFP中进行设计则是非常复杂的。

3 将VFP数据传递给Excel

为方便用户操作,设计一个表单,如图2所示。通过表单选择相应的班级,然后,单击“预览”按钮进行预览或者单击“打印”按钮进行打印,单击“退出”按钮则退出该系统。

3.1 表单各对象属性的设置

表单Form1的Caption属性为:打印学生成绩。

三个命令按钮的Caption属性分别为:预览、打印、退出。

标签Label1的Caption属性为:请选择班级。

组合框Combo1的RowRourceType属性为:5-数组,RowRource属性为:BJ。BJ数组由Form1的Init事件代码创建。

3.2 事件代码设计

为高效完成在VFP中调用Excel 模板进行报表设计,需要对表单Form1的Init事件、三个命令按钮的Click事件设置程序代码。

3.2.1 Form1的Init事件代码

该事件由以下两行代码组成,主要功能是定义全局数组BJ,通过SELECT查询命令将BJMC数据表的值复制到BJ数组中,以便其它事件代码中调用。

public bj (6) &&定义全局数组变量,数组元素的个数任意指定

select * from bjmc into array bj &&根据数据表的记录个数确定数组元素个数.

3.2.2 “预览”按钮的Click事件代码

该事件代码的主要功能是通过组合框选择班级名称,然后经宏代换打开相应的班级学生成绩数据表;完成平均成绩的计算和各个分数段学生成绩的统计;创建Excel 对象,打开前面创建的Excel 模板,并根据班级学生成绩中的记录向其中插入空行以及传递各记录数据,在Excel 中浏览数据8秒后关闭Excel,返回图2表单。VFP调用Excel模板创建的报表如图3所示。

该事件代码如下:

*打开数据表,并进行平均值等的计算

aa=bo1.value&&将组合框选定的值赋值给变量aa

use &aa &&经宏代换转换,打开选定的数据表

repl all 平均 with (高数+英语+普化+政治+电脑+物理)/6

dimension pj(7)

sele avg(高数),avg(英语),avg(普化),avg(政治),avg(电脑),avg(物理),avg(平均) from &aa into array pj

dimension SJB(6,6) &&二维数组的元素个数任意确定

sele 学号,姓名,高数,英语,普化,政治,电脑,物理,平均 from &aa into array sjb;

&&根据数据表的记录个数和所选字段数确定二维数组的元素个数,并将数据表的指定字段的记录数据传递给数组

dimension tj(5,6)&&定义保存各门功课各个分数段数据的数组.

*进行各门功课各个分数段的统计计算

for i=1 to 5

for j=1 to 6

tj(i,j)=0

next j

next i

for i=1 to reccount()

for j=3 to 8

do case

case sjb(i,j)

tj(1,j-2)=tj(1,j-2)+1

case sjb(i,j)

tj(2,j-2)=tj(2,j-2)+1

case sjb(i,j)

tj(3,j-2)=tj(3,j-2)+1

case sjb(i,j)

tj(4,j-2)=tj(4,j-2)+1

otherwise

tj(5,j-2)=tj(5,j-2)+1

endcase

next j

next i

*创建Excel对象,打开模板,设置Sheet1为当前工作表

bb=createobject('excel.application') &&创建Excel 对象

bb.visible=.t. &&使刚创建的Excel对象可视

bb.workbooks.add('d:\xscj\xscjmb.xlt') &&打开前面创建的Excel模板文件

bb.worksheets('sheet1').activate &&激活模板文件的Sheet1为当前工作表

bb.caption="VFP与Excel设计报表"&&设置当前打开的Excel模板报表文件的标题

*在Excel中插入填加学生成绩需要的空行

for i=1 to reccount()

bb.activesheet.rows(4).insert

next i

*传递数据给Excel

bb.cells(2,2)=bo1.value

bb.cells(2,9)=date()

for i=1 to reccount()

for j=1 to 9

bb.cells(i+3,j)=sjb(i,j)

next j

next i

for j=1 to 7

bb.cells(i+3,j+2)=pj(j)

endfor

hs=i+3

for i=1 to 5

for j=1 to 6

bb.cells(hs+i,j+2)=tj(i,j)

next j

next i

*预览Excel报表数据,8秒后自动关闭

wait "" timeout 8&&浏览Excel报表数据,等待8秒后返回

bb.activeworkbook.saved=.t. &&不保存Excel文件

bb.workbooks.close&&将Excel关闭

bb.quit &&退出Excel

3.2.3 “打印”按钮Click事件代码

该事件代码与“预览”按钮的Click事件代码基本一样,只是在打印时不想看到Excel窗口出现,将bb.visible=.t. 语句改为:bb.visible=.f .即可,另外再将

wait "" timeout 8&&浏览Excel报表数据,等待8秒后返回

改为:

bb.activeworkbook.printout(1,1,1,.f.)&&打印当前工作簿的第1个工作表,1份,不预览.

即可

3.2.4 “退出”按钮的Click 事件代码

close table all && 关闭已打开的数据表

thisform.release &&退出表单

通过在VFP中调用Excel模板来制作复杂表格的方法,对于在VFP应用系统中制作复杂报表非常有效。给出的“学生成绩打印表”的设计过程及有关程序代码,稍微修改一下该程序代码的有关参数,就可以适合其他应用系统报表的输出。

本文的程序代码在VFP 6.0以上版本和Excel 2000以上版本通过调试

参考文献:

[1] 朱珍.Visual FoxPro数据库程序设计[M].北京:中国铁道出版社,2008.

[2] 徐尔贵,富莹伦.Visual FoxPro 面向对象数据库教程[M].北京:电子工业出版社,2006.

[3] Walkenbach J.Excel 2002公式与函数应用[M].路晓春,译.北京:电子工业出版社,2002.

报表系统范文第4篇

关键词:I/A系统;IND模块;流量积算

中图分类号:TH81 文献标识码:A

1 概述

中国铝业下属的各分、子公司,大多采用了FOXBORO公司的I/A系统进行生产过程控制。实际生产中,对于部分关键指标,是操作岗位、生产调度进行生产调整的重要依据,也是生产考核的重要指标。这时,操作员、调度及车间管理均要求能够对其累计量、平均量进行直观的实时监测和跟踪。I/A系统提供的报表功能远不能满足要求,这给组态设计人员提出了新的课题。

事实上,I/A系统提供了顺控模块IND模块,利用顺控模块的优良特性,可以有效解决这一难题。本文详细介绍实现思路和程序代码,供同行借鉴和指导。

2 IND模块的特性及功能要点

在I/A常规培训中,认为IND模块较复杂,难于控制而不推荐使用。事实上,在特定情况下,IND模块却有极大的优势,可以简明地处理较复杂的算法或控制逻辑。

2.1 函数功能强,程序可控性强

与I/A系统常用的CALC模块相比,IND模块支持算术运算、多种函数运算,赋值运算等,支持丰富的程序控制语句。程序易读性很强。

2.2 语句灵活,受限制少,节省系统资源

与CALC相比,IND模块不受50行的长度限制。

IND模块提供了ACTIVE参数,由外部条件触发,这样,其执行时间可以由外部时钟(或其它条件)控制,在额定条件下激活。如可以每30秒执行一次,不象CALC必须由CP周期(默认每0.5秒)触发,很占CP资源。

3 典型实例与实现思路:

3.1 问题提出

高压溶出下料量是氧化铝生产过程中的一个重要参数,是衡量一个周期内氧化铝生产是否平稳的重要标志,因此,岗位和工序提出,对高压溶出五个系列的下料量的班报、日报、月报、上月总量、月平均量进行实时监控,使岗位的主操作员、辅操作员、调度等与参与生产指挥人员即时看到动态报表。

3.2 实现思路

以IND模块为核心,实现的基本逻辑图为:

3.3 逻辑图说明:

实现过程采用了四个BLOCK来实现。

(1)用CALCA制作RS触发器,每30秒发生一个0.5秒的激活脉冲,驱动IND模块的ACTIVE。特别说明的是:这个触发器并不只为一个IND模块服务。当同一个系统有多个积算器时,统一由一个RS触发器驱动即可,IND模块每次激活,则进行一次积算,并输出到现场监控桌面。

(2)用AIN模块采集由现场流量计输入的瞬时流量。

(3)用ACCUM模块实现流量的积算

(4)用IND模块实现流量报表的起止点截取、积算,通过FoxDrow输出到界面。

4 实现流量积算报表的详细组态参数和程序

4.1 RS触发器的实现:采用一个CALCA实现

NAME: DRIVER

TYPE: CALCA

PERIOD 2

PHASE 0

BI01:TRUE

STEP1 CST

IN BI01

IN M02

MRS

STM M01

DON 30

STM M02

IN M01

NOT

OUT BO01

STEP50 END

输出脉冲由BO01输出。

4.2 其它模块。

AIN为现场仪表接入FBM的常规BLOCK模块, ACCUM为流量积算模块,注意根据仪表量程参数填写MTRFAC计算参数。

4.3 IND模块实现报表程序主要代码及说明:

INDEPENDENT_SEQUENCE {************************************

** 本模块完成高压溶出下料量的操作台报表 **

** IND BLOCK **

****************************************************}

CONSTANTS

BAN2=480; {8点班交接时间。}

BAN3=960; {4点班交接时间。}

VARIABLES

BAN0,BAN5:I;

{BAN0:当前所在班次,取值1时,为0至8点班,为2时,为8至16点班,为3时,为16点至0点班.}

USER_LABELS

{参数说明:ACTIVE FLOW_ACCM.DRIVER.BO01

II0001 CP27D1_STA:STATION.MONTH

II0004 CP27D1_STA:STATION.MINUTE

RI0005 流量的本月初值,

RI0010 :FLOW_ACM.OUT 当前流量积算输出值

RO0001 0至8点班,即当日第1班累计量

RO0007 月累计量

RO0008 月平均量 }

STATEMENTS

{计算月累计量。如果月份翻转,将上月量转RO0011,月份值置为当月,对本月起始流量置初值,本月累计量清0,否则,对本月正常计算}

IF NOT(II0001=II0005)

THEN RO0011:=RI0010-RI0005;

II0005:=II0001;

RI0005:=RI0010;

RO0007:=0;

ELSE RO0007:=RI0010-RI0005;

RO0008:=RO0007/((II0002-1)*24+II0003+1);

ENDIF;

{同理可计算日累计量}

{判断当前所在班次,为BAN0赋值1,2或3}

BAN5:=II0003*60+II0004;

BAN0:=1;

IF NOT(BAN5

IF NOT(BAN5

{以下班报计算与月累计、日累计同理,计算各班流量累计}

IF BAN0=1

THEN IF NOT(BAN0=II0008)

THEN RO0003:=RI0010-RI0002;

II0008:=BAN0;

RI0002:=RI0010;

RO0001:=0;

ELSE RO0001:=RI0010-RI0002;

ENDIF;

ENDIF;

{同理可计算另两个班次的班累计量}

ENDSEQUENCE

5 对I/A流量报表开发的体会

I/A系统是一个功能很强大的自动化控制系统。在实践发展过程中,陆续提供了120多块标准模块完成用户各种控制需求,通常I/O系统工程师只需掌握其中部分模块的组态和参数就能完成常规控制。而加上顺序块的软件开发,则可以实现用户几乎所有可能的需求。笔者希望通过这篇文章,与I/O系统工程师共同分享交流。

参考文献

报表系统范文第5篇

中图分类号:TM734文献标识码:A文章编号:1673-0992(2009)12-102-01

一、开发要求

一般MIS系统主要的功能有:数据输入、数据维护、信息查询、数据统计和报表,其中信息查询功能是MIS系统的主要应用功能.通常,查询功能会根据用户不同的需求而设计成不同的查询界面,因而使得软件的查询模块经常需要随着需求的变化而重新设计、修改源代码,给系统维护员带来繁琐的系统后续维护工作.因此,如果开发完成一种通用查询模块,则可使用户能根据自身实际需求来设计查询条件,以完成各种复杂查询功能.这样,即避免了重复的编码工作,提高了开发效率,而且提高了软件的可靠性和复用性. 选题分析

通用MIS系统平台软件设计――通用查询子系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。经过分析,我们使用 MICROSOFT公司的 Microsoft Visual Studio 2005开发工具以及SQL SERVER 2000,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。

二、系统模块设计

所谓的模块化设计,简单地说就是程序的编写不是开始就逐条录入计算机语句和指令,而是首先用主程序、子程序、子过程等框架把软件的主要结构和流程描述出来,并定义和调试好各个框架之间的输入、输出链接关系。

逐步求精的结果是得到一系列以功能块为单位的算法描述。以功能块为单位进行程序设计,实现其求解算法的方法称为模块化。模块化的目的是为了降低程序复杂度,使程序设计、调试和维护等操作简单化。

根据本系统的特点,设计出如下的系统模块图。

通用MIS系统查询子系统功能模块图

数据结构设计

按照通用MIS查询系统的数据字典,设计出系统数据库中各个数据表,包括数据库信息数据表,数据库表信息数据表,字段信息数据表。

数据库中各个数据表名称和结构如图。

三、系统实现

1.系统配置模块实现

本系统是通用MIS查询子系统,需要系统支持查询任何类型、任何结构的数据库。因此查询的数据库结构信息不能定死,必须是可以配置的。本模块主要完成对查询数据库的配置管理。

配置信息保存在Sql Server数据库中,主要保存的内容有查询数据库的信息,如数据库类型、数据库地址、数据库名称、用户名、密码等。查询数据库的表信息,主要是数据库中包含多少个表。查询数据库的字段信息,主要包括字段所属的表、字段名称和字段类型。

2.系统查询模块

系统查询模块即根据系统配置好的查询数据库信息,查询该数据库的数据。可以查询该数据库中的任何表的信息,可以根据该表中的任何字段进行各种方式的查询。设置好要查询的数据库表,和查询条件后,点击查询按钮,即可把查询到的结果显示出来。©

参考文献:

[1] 东方人华.Visual c#.net应用程序设计入门与提高[M].北京: 清华大学.2005

[2] 唐学忠,费贤举,腾刚等.SQL Server 2000 数据库教程[M].北京:电子工业出版社.2005

报表系统范文第6篇

关键词:电子报表; 报表系统; MVC; Struts; Oracle

中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2013)26-5862-03

随着企业规模的不断扩大,业务的无限增长,伴之而来是信息的急速膨胀。信息爆炸对于传统的办公模式和管理方法提出了严峻的挑战,各个行业都提出了新的要求,那就是真正的实现“无纸化办公”,“网络查询”。针对这种迫切的需求,出现了实现文档的电子化存储与Internet在线查询的电子报表系统,这种系统把目前以纸张、手工处理为主的文档,图纸等用计算机存储,用户可以非常方便的对文档等实现快捷、安全的存储和在线查询[1]。而且电子报表系统还可以使管理部门的管理水平提高一个层次,还可以减少因手工填报而引起的不必要的问题,在很大程度上提高了工作的准确性和及时性[2]。可以认为,采用电子报表平台是各个行业业务系统完成现代化转型不可或缺的一个关键步骤。

文章在分析电子化报表平台各个部分的实现方式及关键技术的此基础上,设计了一套符合目前企业管理流程,方便快捷的电子化报表平台系统,并采用MVC模式与基于JSP的Struts Web框架设计,实现了基于WEB的电子化报表平台系统。

1 系统总体结构

随着网络技术的快速发展,绝大部分的管理软件开始向B/S(Browser/Server)结构转变。这种基于WEB技术的应用系统基于现成通用的浏览器作为用户界面,应用程序安装在后台服务器中,可以被任何操作系统上的通用浏览器所浏览,这样不但实现了跨平台操作,而且降低了系统开发和维护的成本[3]。文章设计的Web电子报表系统由浏览器、Web服务器、应用服务器和数据库服务器组成,如图1所示。

从图1中可以看出,在文章设计的电子报表系统中,在客户端,用户利用Web浏览器通过URL访问Web服务器,Web服务器通过SQL数据库语言请求数据库服务器,并将获得的结果以HTML形式返回客户端浏览器[4,5]。基于系统采用B/S的模式,本系统的逻辑结构由以下三个部分组成:

前台系统:即用户界面,采用目前比较流行的基于JSP的Web框架结构—Struts框架技术来实现。

业务处理系统:该系统负责提取数据源、数据预处理、对数据输入核对的业务流程控制、报表处理以及必要的系统管理。可以看出,该部分包含与前台通过HTTP协议交互的功能,同时也包括通过JDBC与数据库交互的功能。该部分是本系统的核心之一。

数据库系统:采用ORACLE11g数据库,里面存放系统所需的数据,通过JDBC与外界交互。

系统的逻辑结构图如下:

2 Web电子报表系统设计方案

设计的电子报表系统主要由后台数据库系统、报表生成管理系统和手工录入系统等组成,下面分别详细介绍。

系统数据库采用ORACLE11g,负责处理大量的后台计算。数据库具有以下功能:

报表生成管理系统主要生成两类报表:原始数据展现类和用户查询类。原始数据展现类主要是用于原始数据的保存。报表处理模块按照预先设定的程序,通过报表名称、机构号以及时间分别调取相关数据,然后经过加工处理,生成所需的报表文件,并以*.roi的文件格式存放在I-SERVER(报表管理服务平台)的指定地点。用户查询类主要是用于根据用户需要将报表中指定的信息。这类报表的实现主要利用E-Report-Designer通过SQL语句调用数据库中的表、视图的数据,然后经过加工处理后生成所需的报表。

手工录入系统按照需求包括三个功能模块,则三个功能的具体需求如下:

3 手工报表录入系统的具体实现

由于篇幅上的限制,文章在这里以关键的手工报表录入系统作为实例,通过具体介绍手工报表录入系统的界面制定、中间层的实现原理来阐述整个电子化报表平台建立的关键技术,数据库实现部分就不在这里描述。

3.1中间层的实现原理

当用户点击按钮,提交一个事件(Event),JSP页面即前端视图则向Servlet控制器(Structs)发出一个请求(Request)给Action类[6]。其中页面提交的请求和Action类的对应关系由Structs的配置文件Structs-config.xml来配置;Action类利用到数据访问对象类(Data Access Object,DAO类)存取数据,并通过ActionForward对象指向的JSP组件生成动态网页,返回给客户。其中对每一个具体的功能对应一个具体的Action类。

控制器的配置决定了发给控制器的请求将得到怎样的处理。在系统配置的sructs-config.xml文件中,将action的请求都映射到了控制器,并指定对每一请求该如何处理。部分实现代码如下所示:

input="/autocrtjsp/reportagregation.jsp"

name="agreReportForm"

path="/agretbl"

scope="session"

type="com.pansky.autocrt.Action.agreReportFormAction" validate="true">

就本系统来说,需要处理登录请求和页面提交的信息。每个视图都分别具有相应的表单FormBean和用于处理的Action类[7]。其中配置文件分为两个部分:其一是表单 Form bean,负责指定存储来自视图的参数值以及action映射置的Java类。第一部分处理提交的信息,如下所示:

而第二部分则负责处理登录和页面的跳转,通过customerLoginFormAction类来实现。

3.2前端视图的代码实现

前端视图利用JSP实现,用Struts标签库同表单Form bean交互,意味着所有的元素都必须用Struts标签库来创建。下面介绍手工录入的汇总表页面设计,该页面分为三部分,分别是页面上部的公司logo,页面左边的树形结构,和主页面的汇总表显示窗口。该页面的部分代码如下:

在该页面视图中可看到所有的HTML标签都是用标签库编码的。这就是Struts调整HTML文档和表单Form bean 之间参数值的方法。在处理每一JSP页面时,标签库会被扩展为HTML,而内部的Form bean 则包含默认值。

页面上按钮标签的功能实现也是通过页面编码实现,例如“返回”按钮实现页面跳转功能:

其中center表示按钮处于该行的中间,如果点击该按钮将跳到reportagregation.jsp的页面。到这里,整个系统的描述基本结束,有关应用程序的部署请查阅相关书籍,在这里就不赘述。

4 结论

论文主要工作围绕着企业电子化报表系统的研究开发而展开,针对报表平台的核心技术:手工报表录入系统的具体实现进行了详细的论述,采用了目前较流行的基于JSP技术的Struts框架结构实现用户界面。尽管论文在电子化报表平台系统方面做了一定工作,但是距离实际应用还有一定距离。对系统中的某些细节问题(如中心数据库的建立,用户界面等),需进行更进一步的研究与完善。

参考文献:

[1] 王丽.企业会计报表发展探析[J].中国经贸, 2013(2): 216.

[2] 梁红兵.企业财务电子报表错误及解决对策[J].中国电子商务, 2011(9): 185, 187. (下转第5868页)

(上接第5864页)

[3] 李伟春.浏览器状态电子报表的系统实现[J]. 计算机与现代化, 2008(2): 125-126.

[4] Havery M Deitel. Advanced Java2 Platform How to Program [M]. Prentice Hall, 2003.

[5] 张宗福. 基于STRUTS框架开发MVC模式的WEB应用[J].计算机光盘软件与应用, 2012(22): 206-207.

[6] 孙卫琴.精通Struts: 基于MVC的JavaWeb设计与开发[M]. 北京:电子工业出版社, 2007.

报表系统范文第7篇

摘 要 合并报表是综合反映企业集团整体财务状况和经营成果的财务报表,目前合并报表的编制已成为集团企业一大难事。如何优化企业集团合并报表系统的功能是当前企业集团会计关注的焦点。因此,研究企业集团合并报表系统的使用现状具有十分重要的现实意义。本文以企业集团合并报表系统为切入点,在分析企业集团合并报表系统的使用现状的基础上,探讨了优化企业集团合并报表系统的策略,以期为企业集团合并报表系统的使用提供参考。

关键词 企业集团 合并报表 报表系统 使用现状

一、企业集团合并报表系统的使用现状

当前,企业集团合并报表系统的使用现状不容乐观,还存在着诸多亟待解决的问题,这些问题主要表现在无法实现自动对账、欠缺自动抵销功能和不能编制报表附注三个方面,其具体内容如下:

1.无法实现自动对账

在企业集团合并报表系统中,无法实现自动对账是目前企业集团合并报表迫切需要解决的问题。一般来说,企业集团合并报表系统都有检查项目关系和勾稽关系,但系统没有足够的判断能力用于核对所有项目关系和勾稽关系,这都是由于企业集团合并报表系统无法实现自动对账造成的。现有的企业集团合并报表系统不能识别、分类内部交易和内部往来,直接影响了企业集团合并报表的工作效率,许多集团编制合并报表的工作中对账环节耗费了大量的时间。

2.欠缺自动抵销功能

欠缺自动抵销功能,也在一定程度上制约着企业集团合并报表的编制。在企业集团合并报表系统中,很多企业集团不能自动做抵销分录,一般软件只能由操作人员按照会计准则和会计制度的要求,根据内部交易事项、性质和金额等情况,在系统中手工录入抵销分录。即使是有些软件的合并模块,也只能由系统自动生成一些常用的往来性抵销科目,其他较为特殊的项目则不能自动生成。由上可知,企业集团合并报表系统欠缺自动抵销功能,增大了企业集团合并报表的工作量,不利于企业集团合并报表工作的顺利开展。

3.不能编制报表附注

报表附注的编制是一项繁重琐碎的工作,企业集团合并报表系统不能编制报表附注,使得企业集团合并报表工作陷入困境。报表附注的信息采集量比较大、并且涉及到非财务信息,由于企业集团合并报表系统没有意识到编制报表附注的重要性,当前企业集团合并报表系统在编制报表附注环节还比较薄弱,往往都不具备编制报表附注的功能,企业集团合并报表所耗费的时间和人力颇为可观,无形中增加了企业集团合并报表的工作量,对企业集团合并报表工作是非常不利的。

二、优化企业集团合并报表系统的策略

为促进企业集团合并报表系统的功能完善,针对当前企业集团合并报表系统的使用中存在的问题,优化企业集团合并报表系统的策略,可以从加强会计制度建设、健全自动抵销功能和增加编制报表附注三个方面入手,下文将逐一进行分析。

1.加强会计制度建设

优化企业集团合并报表系统的策略,加强会计制度建设是关键。对企业集团而言,加强会计制度建设,是企业集团合并报表实现自动对账的基础,实施合并系统必须按照严格的制度规定进行,规范合并系统在企业集团合并报表工作中的工作流程,可以为合并报表的自动提取数据打下坚实的基础,促进自动对账的实现,使得企业集团合并报表系统可以自动核对所有项目关系和勾稽关系,识别、分类内部交易和内部往来。因此,加强会计制度建设,从基础工作源头抓起,可以大大减少对账的时间。

2.健全自动抵销功能

健全自动抵销功能,在企业集团合并报表系统中的作用也不容小觑。在企业集团合并报表工作中,针对现有的集团合并报表系统自动抵销功能方面存在的缺陷,结合企业集团的具体情况,进行合并报表系统二次开发,二次开发主要是根据公司的实际情况设置取数公式,如集团各公司的报表、内部交易、内部往来等的信息来源,健全自动抵销功能,在一定程度上可以改善企业集团合并报表欠缺自动抵销功能的局面,确保整个合并报表系统工作的顺利进行。

3.增加编制报表附注

增加编制报表附注,也是企业集团合并报表系统的重要组成部分。编制报表附注的实现,以仿照主表的生成方法进行,即先按照披露的模板的要求自定义成报表,然后按照自定义的报表从各公司提交的附表中去取数,并生成需要抵销的分录,最后通过合并报表系统的合并抵销功能生成工作底稿。对于附注,报表附注涉及的会计及非会计的信息非常多,且信息披露会随着监管部门规定变化而变化,因此合并附注全部实现自动化不太现实,建议暂时采用手工填制模版。由此可见,增加编制报表附注,可以大大提高企业集团合并报表的工作效率。

结语:总之,合并报表是母公司站在整个企业集团角度上得出的报表数据。企业集团合并报表系统是一项综合的系统工程,具有长期性和复杂性,面对当前企业集团合并报表系统使用现状不佳的现象,应结合企业集团的具体情况,加强会计制度建设、健全自动抵销功能、增加编制报表附注,不断探索优化企业集团合并报表系统的策略,只有这样才能发挥企业集团合并报表系统的作用,促进企业集团财务管理工作又好又快地发展。

参考文献:

[1]李务贤.企业集团内部往来挂账管理问题探讨.商业会计. 2011(12).

[2]张晓梅.企业财务管理模式与企业财务成本管理研究.经济研究导刊.2010(12).

[3]边琪,王宁宁.我国企业集团内部资本市场初探.社会科学论坛(学术研究卷).2007(04).

[4]朱建平.服装企业集团资金管理研.合作经济与科技.2008(15).

报表系统范文第8篇

关键词 WCF;Silverlight;报表

中图分类号:TP393 文献标识码:A 文章编号:1671-7597(2013)17-0071-02

随着国内各个工厂企业信息化进程的不断深入, 大部分工厂在生产中接入了数据采集与监控系统(SCADA),并积累了大量的历史数据,企业收集和存储的数据以惊人的速度增长, 各种各样的文档充斥着工厂企业。管理部门有效的利用这些数据产生分析报表,通过分析历史数据来优化生产、提高效率,将有利于企业进一步的精益化。因此在工厂企业中,一个用户可定制的、可扩展的工厂报表环境尤为重要。

1 研究现状

目前,报表系统主要使用有两种模式实现:C/S模式(客户端/服务器)和B/S模式(浏览器/服务器)。C/S模式的报表系统需要在客户端机器上部署软件,通过客户端软件,系统可以获取客户端机器的所有资源,应对用户的各种需求,因此C/S模式的报表系统功能最为强大,使用效果最为理想,但是C/S模式需要针对不同的操作系统开发软件,并且需要在客户端手工部署软件,维护效率很低,已经很难适大规模用户同时使用。由于C/S模式的这种特点,使得C/S模式的报表系统只能部署在单机或小型局域网内;而大型局域网或互联网上,B/S模式报表系统逐渐代替了B/S模式的报表系统。

使用B/S模式报表系统,客户端不用安装任何特殊的软件,只需要浏览器支持即可。这使得B/S模式报表系统的升级更新无需在客户端部署程序,只需要更新服务器程序,扩展非常容易,便于维护。但是B/S模式也存在不足,因为主要代码都是运行在服务器上,处理数据量过大,会导致服务器负担过重,系统运行缓慢;许多调用系统资源的功能(如实时通知,打印,调用摄像头等)浏览器不能实现或实现起来比较困难,使得B/S模式报表可能不满足用户需求。同时,开发者只能依赖JavaScript、VBScript等嵌入式小程序实现客户端代码,代码难以维护,不能充分发挥客户端计算机的运算能力。

基于WCF和Silverlight的报表系统可以充分发C/S模式和B/S模式两者的优点,并规避二者的缺点。

2 WCF和Silverlight

2.1 WCF

WCF(Windows Communication Foundation)是由微软开发的数据通信应用程序服务接口。它是.NET框架的一部分,由.NET Framework 3.0 开始引入。

WCF规定了服务端和客户端通信的协议和数据传输方式——契约、协议绑定。契约以接口的方式定义,开发者定义契约并使用类实现契约的定义。契约分为4种:定义客户端和服务端数据类型的数据契约(Data Contract),定义客户端和服务端行为的操作契约(Operation Contract),定义服务服务契约(Service Contract)以及定义消息内容的消息契约((Message Contract)。WCF支持HTTP协议,TCP协议,命名管道,消息队列等多种协议通信。

WCF完全可以看作是ASMX,.Net Remoting,Enterprise Service,WSE,MSMQ等技术的并集,并且它是真正面向服务的产品,它已经改变了通常的开发模式。利用WCF,就可以解决包括安全、可信赖、互操作、跨平台通信等需求。

2.2 Silverlight

Silverlight是微软推出的一个跨浏览器富客户端插件。用户只需在第一次使用系统时安装Silverlight插件,即可使用Silverlight应用程序,无需在客户端升级部署应用。同时,Silverlight提供灵活的编程模型,XAML的使用,使得Silverlight应用开发的程序逻辑和用户界面的设计分离,开发速度大大超过了现有其他B/S模式的开发架构。目前Silverlight的最新版本是5.0。

3 报表系统

3.1 系统总体结构

本报表系统架构设计为三层架构设计(如图1)。

客户端采用Silverlight浏览器插件,既发挥了B/S结构程序部署、更新方便的特点,又避免了其显示效果逊色于C/S结构程序,编程复杂等缺点。中间服务层使用WCF,实现了面向服务的组件。报表组件可以与其他服务(如权限,实时监控,故障预警等)灵活配置。

3.2 系统功能结构

根据系统调研及需求分析,该系统在功能和业务处理上分为6个模块(如图2所示),各个模块具体功能描述如下。

3.2.1 曲线分析查询

查询报表相关曲线,包括饼图,柱状图,折线图等。

3.2.2 设备台账查询

相关设备实施数据记录,如氮气每小时的压力,电流电压每小时的数值等。

3.2.3 统计报表查询

对预处理后的各项数据重组,计算和统计,并按班、日,月,年等时间显示工厂的各项用能数据。

3.2.4 历史数据维护

配置历史数据库测点,设置IP地址,数据通道管理,人工修正错误数据,并负责实时保存、压缩SCADA数据库中的数据。

3.2.5 报表模板配置

管理报表类型的配置信息,包括报表的绘制样式,显示数据显示位置,数据的计算公式,绘制报表样式。

3.2.6 曲线模板配置

设置曲线类型,显示数据类型,曲线样式。

4 关键技术

4.1 报表数据动态配置

工厂报表数据来源较多,结构较分散,导致报表相关的数据分散在不同的数据库和数据结构中。用户为了查询不同的数据信息,不得不分别到不同系统中查看,造成用户无法集中分析统计各项报表信息。本系统分布式数据库和统一的数据接口,并使用灵活的报表配置模板,使数据通过中心各种算法计算处理后,生成报表、曲线图。展示效果正确、直观、有效。图3是河南氯碱厂配置的某工序各班组能耗同环比柱状图。

4.2 分布式服务

系统使用了WCF技术实现了SOA架构,对不同工厂开发新的应用时先检查现有的服务是否部分满足需求,若存在这样的服务,则可以直接调用该服务,不用重新进行开发。另外提高了系统的灵活性。本系统通过将业务抽象成不同粒度的服务,我们可以通过将一些细粒度的服务组装成可以实现某些特定功能的粗粒度服务。工厂可根据自己需求,应用不同服务。

5 结论

文章阐述了基于WCF服务架构,运用Silverlight富客户端技术设计和开发报表服务的一种解决方案,并在河南氯碱厂实施运行。在实际系统运行中,有效的提高了企业能源管理的水平和工作效率。

基金支持

该项目受到辽宁省第一期大学生创新创业训练计划支持,项目编号201310146010。

参考文献

[1]李云云.浅析B/S和C/S体系结构[J].科学之友,2011(1):6-7.

[2]李建平.基于WCF的分布式程序的研究与实现[J].科技创业家,2013(7):51.

[3]马海凤,飞.Silverlight核心技术研究[J].价值工程,2013(20):233-234.

作者简介

于博(1991-),男,辽宁海城人,辽宁科技大学软件学院,本科在读,研究方向:软件工程。

吴杰(1981-),男,山东蓬莱人,辽宁科技大学软件学院,硕士,讲师,研究方向:形式概念,软件工程。

报表系统范文第9篇

关键词:数据库;FineReport;生产报表

1需求及建设目标

某集团熔炼分厂各工序存在大批量的日报、月报等由人工编制的Excel统计报表,通常由岗位人员对分厂各工序生产过程中产生的数据按小时进行记录并分析,管理和技术人员通过分析结果对其生产采取相应的管控措施。然而,各种复杂报表的编制及大量数据的记录给岗位人员工作造成沉重的负担,同时人为因素引起的数据记录不准确以及统计分析结果的滞后性导致管理和技术人员无法对生产做到精准、及时的管控[1]。因此,建立一套生产报表自动化系统,可规范数据采集及录入标准、加强数据统计分析工作、提高工作效率,强化企业生产管理。结合熔炼分厂各工序实际业务需求,生产报表自动化系统涵盖DCS/PLC、无线终端设备、能源、检化验等数据的自动采集与存储,生产报表按时间自动生成并记录数据,对关键三区指标数据可进行红、黄、绿三区报警和批注,同时可对日数据、月数据进行统计分析形成相应的分析结果。

2系统架构

根据熔炼分厂生产报表自动化系统实际业务需求。数据层主要为报表业务提供多源数据源,通过工业隔离网闸PSL-A1081对现场DCS/PLC、DTU/RTU、智能装备等设备采用相应的通信协议将所需数据采集至隔离网关,并通过Modbus、CommServer等协议将数据上传至工业实时历史数据库pSpace进行存储。通过ODBCRouter转储工具可将实时库数据按需转储至关系库,从而为后续业务的开展提供数据保障。业务层主要为业务报表的开发,包括生产运行参数报表、关键设备运行参数报表、能源报表、关键三区报表、检化验报表等生产统计报表。用户层主要为用户开放,完成对系统参数、用户及用户权限等参数进行配置,同时给用户提供报表操作及展示的平台。

3关键技术及实现

3.1数据采集与存储

依据熔炼分厂业务需求,需对现场不同品牌的DCS/PLC、大量的能源计量仪表以及智能装备等相关数据按需采集并存储。工业隔离网闸PSL-A1081支持多种品牌DCS/PLC以及各种无线仪器仪表数据的采集与转发,对工业控制网络和生产网络起到“防火墙”的作用,可确保工控系统的正常运行。工业实时历史数据库pSpace可对网闸采集与转发的数据进行存储,存储周期按需可达5-10年。

3.2数据转储

为便于生产报表自动化系统对实时数据的应用,需将采集存储在实时数据库的数据转换为结构化的实时数据,从实时数据库转移到关系数据库存储,形成结构化实时数据[2-3]。ODBCRouter是实时数据库pSpace与关系数据库的衔接组件,支持实时数据与管理数据的交互。按熔炼分厂报表业务需求,需确定数据转储频率;对照数据转储标准,对实时数据进行结构化存储。为方便报表开发及后续修改,在Postgresql中转储生成的结构化实时数据表与业务关系表之间需建立insert触发器和触发函数。

3.3表结构设计

熔炼分厂生产报表以前一天20点开始,当天20点结束为当天报表数据,因此需对当天20点后数据进行时间逻辑处理以满足报表需求。

3.4生产报表开发与实现

FineReport是由帆软自主研发的一款用于报表制作、分析和展示的报表开发工具,秉持零编码的理念,易学易用,功能强大,以“专业、简捷、灵活”著称,仅通过简单的拖拽操作便可制作中国式复杂报表,轻松实现报表的多样化展示、交互分析、数据录入、权限管理、定时调度、打印输出、门户管理和移动应用等需求[4-5]。熔炼分厂生产报表种类繁多,格式复杂,通过FineReport报表开发工具可简化报表开发流程,缩短报表设计与开发时间。FineReport报表开发界面。熔炼分厂生产报表主要包括生产运行参数报表、关键三区报表、关键设备运行参数报表、能源报表以及检化验分析报表,除检化验分析报表数据来源于第三方LIMS系统外,其余报表数据均来自现场设备或系统,因现场原因无法采集的数据,将以人工录入方式录入。熔炼分厂生产报表一般按照每小时记录一次的方式定时将实时数据转储至关系库并在报表中展示,同时根据不同时间维度,自动生成相关数据的日报、月报、季报以及年报等统计数据,并以图形的形式进行展示。通过超链接的方式可实现关键三区报表异常数据的报警与批注,但需对数据提前设定相应的三区范围。熔炼分厂生产报表开发完成后,通过链接的方式可嵌入FinforWorx信息化生产管控平台,相关人员可在平台上对报表执行相应的操作,也可对熔炼分厂生产报表设置对应的权限,按实际需求设置熔炼分厂报表填报权限和熔炼分厂报表只读权限即可。图3为熔炼分厂铜合成炉中央控制室生产原始记录。合成炉生产运行监控大屏主要对当日和当月数据进行统计分析后以图形的形式直观展示分厂生产运行情况,主要对合成炉作业率、负荷率、电单耗、氧单耗、能源(电耗、风、氧)以及生产(干/湿精矿处理量、放铜/渣量)等数据进行日数据和月数据的统计结果展示。

4系统应用效果

4.1多源数据实时共享

熔炼分厂生产报表自动化系统的开发打破了分厂各工序生产经营数据“信息孤岛”现象,打通分厂内部上下游数据共享通道,通过分厂多源异构数据的统一采集与存储,实现了数据的长期存储,为将来分厂数字化业务的开展提供有效的数据支撑。

4.2生产报表自动生成

通过FineReport报表开发工具完成各种报表的开发,可根据日期自动生成相关内容,避免了报表“月月做,天天改”的现象。通过报表与关系库的实时交互,实现数据定时自动上传,较之前纸质报表人工录入而言,最大限度地提高了数据记录的准确性和及时性,同时数据录入更加快捷、方便,岗位人员由原来4人缩减至1人即可完成现有数据录入工作,进一步降低了分厂人工成本。

4.3生产数据自动分析

根据熔炼分厂生产报表需求开发对应的日报、月报、年报,对于分厂产量或能耗等数据的统计分析可通过系统后台算法实现实时统计,并将分析结果以图形的方式直观地展示。生产数据的自动分析提高了工作人员的工作效率,减少了劳动强度,对熔炼分厂日常生产起到辅助决策的作用。

4.4生产管理精准及时

通过熔炼分厂生产报表自动化系统的开发与应用,打通了分厂内部实时数据共享通道,通过生产报表自动生成与生产情况实时分析,分厂管理和技术人员对生产的管控更加精准、高效,生产匹配化更加完善。

5结论

基于FineReport开发的生产报表自动化系统在熔炼分厂的成功建设与应用,改变了分厂原有生产和管理模式,对生产管理更加精细化,生产过程参数调整更加及时,数据共享更加准确、高效,提高了熔炼分厂整体信息化生产和管理水平,已在集团公司内部树立了信息化建设的典范,起到了标杆示范作用,下一步将在现有报表数据积累的基础上,深入挖掘生产数据的价值,帮助企业管理人员对企业生产做出更精准的管理。

参考文献

[1]高辉,白雲,冯晓峰,等.铜业公司生产数据集成建设探讨[J].金川科技,2021(4):47-49.

[2]孙晓红,曾昭虎.油田生产实时数据的建设与管理[J].信息系统工程,2020(12):62-63.

[3]刘伟,郭宇,于宏.凌源钢铁有限公司能源管控系统设计与应用[J].冶金自动化,2022,46(S1):5.

[4]张莉,强志勇,蒋建群,等.基于FineReport的信息化报表设计与快速实现[J].中国管理信息化,2022(21):109-113.

[5]夏晴.基于Finereport的信息化系统报表设计[J].电气应用,2019(S1):4.

报表系统范文第10篇

关键词:报表系统;应用环境;系统特点;操作说明;优点综述

中图分类号:TP391.13 文献标识码:A文章编号:1007-9599(2012)03-0000-02

Project Department Cooperative Development Report System

Ni Jianchao

(Communications Company of Liaohe Petroleum Exploration Bureau,Jinzhou121209,China)

Abstract:Combined with the actual needs of the project the Ministry of Development the report generation and inquiry,General requirements in accordance with the company reporting system,the full development easy and efficient reporting system.Elaborate reporting system,application software and hardware environment,the system features,system operating instructions and the Summary of the advantages of application in practical work.

Keywords:Reporting system;Application environment;System features;

Instructions;Review of advantages

一、前言

为了方便捞油项目部合作开发报表的生成及查询,在厂领导的相关工作要求下,全力协助开发了其合作开发报表系统。该报表系统是采用C/S模式设计的,以公司报表系统通用的Powerbuilder为系统开发工具,以Oracle9.0为后台数据库。

系统共分为三大模块,七个子模块。开发合作开发报表系统可合理利用数据库资源,减少人工计算,方便捞油项目部对合作开发数据的管理及使用。

二、系统应用环境

(一)硬件环境

1.客户端主机:PIV1.0以上,内存1.0GB以上。

2.服务器:SUN V880服务器。

(二)软件环境

1.客户端操作系统:windows2000\windows2003\XP中文版。

2.后台数据库:Oracle9.0。

3.网络协议:TCP/IP。

三、系统特点

(一)用户权限的设计模式,使得非授权用户不能操作系统数据,可保证系统数据的安全性。

(二)合作开发日报的生成过程中,只需要维护当天合作开发的井号,报表自动生成。

(三)数据库中已经存在的数据(如单井日产油、日产气、日产水、冲程、冲次等数据)不再重复存储,节省数据库的存储空间,提高了数据库的运行速度。

四、系统操作说明

(一)系统登录

双击合作开发系统应用程序图标,即可登陆本系统。

在密码验证窗口中,输入登录用户名和密码,点击“确定”按钮,即可进入系统主界面。点击菜单可进入相关模块。

(二)井号录入修改

进入“井号录入修改窗口”,你可以进行插入、删除、保存等操作。用户可利用本窗口维护合作开发的井号,在确定本窗口中的井号与当日合作开发的井号对应之后,可执行报表生成的操作。

(三)报表生成

1.生成日报

(1)点击报表生成菜单中的“生成日报”,进入日报生成窗口。

(2)先判断数据库中是否有当日的日报数据,如果有当日的数据,弹出对话框,用户可根据实际需求选择相应的操作。

以下是部分代码截图:

(3)报表生成完毕后系统弹出对话框,通知用户日报已成功生成,并且显示生成数据的条数,用户可与当日合作开发的井数核对。

2.生成作业区月累年累

“合作开发日报生成窗口”的作用是生成到当日为止,各个作业区的月产油、月产气、月产水及年产油、年产气、年产水数据。

以下是部分代码截图:

3.生成月报

“月报生成窗口”提示成功生成某个月份数据的条数,本窗口的作用是生成合作开发的月报数据,以单井为单位,计算月产油、月产气、月产水等数据。

以下是部分代码截图:

(四)报表查询打印

1.日报打印

在“日报打印窗口”中,可查询当日合作开发生产井的信息,包括单位、区块、井号、油品、层位、射孔井段顶深、射孔井段底深、厚度、层数、生产日期、冲程、冲次、泵径、日产油、日产气、日产水等;还自动计算出以作业区为单位的合计日产油、日产气、日产水;导出数据功能可以将数据导出到Excel等外部文件,以便对数据进一步操作。

“打印窗口”是通过表的关联调出数据库中已存在的数据,下图四个表中只有第三个表中的数据是合作开发日报中存储的数据,只有6个字段,其余的数据都是已经存储在数据库中的。

2.日报作业区合计打印

“作业区打印窗口”中,显示到当日为止,各个作业区的月产、年产的数据,并自动计算出全厂的合计数据。

3.月报打印

在本窗口中,显示以单井为单位的动液面、泵深、月产油、月产气、月产水、累产、注汽等数据。

五、综述

此报表系统的成功编写与应用,改变了以往手工计算报表的方式,通过读取预先存储的数据到数据库中的数据,可自动生成日报、月报等报表,大大减少了在相关人员在数据处理方面很多的重复工作量。

此软件简单且操作性强,只需要对井号进行简单的维护,日报、月报等报表自动生成。

对数据库中已经存储的数据(如单井日产油、日产气、日产水、冲程、冲次等数据)不再重复存储,节省数据库的存储空间。数据库的运行速度与数据库中存储的数据量成反比,节省存储空间,同时也提升了数据库的运行速度。

上一篇:报表制作范文 下一篇:加工中心范文