分布式煤炭质量管理信息系统的设计与实现

时间:2022-08-28 12:00:52

分布式煤炭质量管理信息系统的设计与实现

摘要:针对煤炭企业质量检验管理流程的分析研究,采用C#.NET、Delphi及SQL Server数据库技术,结合C/S与B/S体系构造煤炭质量管理信息系统,系统整合质检业务、统计分析、查询决策,已正式投入企业生产运营,提高了企业的生产效率及决策支持能力。

关键词:煤炭企业;质量检验;管理信息系统

中图分类号:TP311.1 文献标识码:A 文章编号:1009-3044(2009)05-1106-02

The Design and Implementation of the Distributed Quality Management Information System of Coal

LIN Pei-xian,LUO Jian,CHENG Lin-mei

(Department of Automation,Xiamen University,Xiamen 361005,China)

Abstract: With the analysis of the quality testing flow for the management of coal enterprises,using C#.NET,Delphi and SQL Server database technology,structure quality management information systems of coal combined with C/S and B/S,the system integrate with quality business,statistical analysis,query the decision-making,has officially launched production operations,improve enterprise productivity and decision-making support.

Key words: Coal enterprise;quality testing;management information system

煤炭质量检验是煤炭行业对煤炭进行质量管理的主要手段,在煤炭企业的生产运营过程中占有非常重要的地位,通过对相关检测项目的化验分析,得出不同矿井、煤层不同煤种的质量情况,根据市场需求变化进行合理配煤、售煤,提高企业的决策支持能力。然而煤炭行业的信息化程度普遍较低,特别是一些地方性煤炭企业,质量管理过程,尤其是质量检验信息采集传递、处理分析等还是采用纸质记录、人工传递、手工汇总等传统的管理方式,企业缺乏系统性的质量管理平台。因此,建立一个集成、高效的网络化协同质量管理信息系统,对促进企业信息化发展,提高核心竞争力具有十分重要的意义。

1 系统分析和设计

1.1 系统分析

本系统是基于福建境内一家大型煤炭企业开发设计,公司质量检验管理流程为:各发运站采样人员每日对发往本发运站的各单位的煤进行抽取样本,然后再交由制样人员进行制样,化验人员通过样本对相关成份进行化验,得出各单位煤种的化验报告单,再将所有单位的化验报告单交给统计部进行分析、统计、汇总。最后,统计部门再以纸质报表的形式每日将本发运站质量信息传递予公司管理层。整个流程主要存在以下弊端:

1) 采样、制样、化验3个流程之间没有进行严格的权限控制,存在舞弊行为。

2) 统计部门需在质检部门报告单的基础上再作分析统计,存在重复性劳动,整个过程均为纸质记录、人工传递,人为失误较多。

3) 质量信息主要依靠各发运站统计部门每日以纸质报表形式传递,实时性差,管理层无法及时得到相关质量信息情况,决策速度慢。

1.2 系统设计

目前经典的分布式设计模式为客户端/服务器端(C/S)和浏览器/服务器(B/S)模式,皆具有各自优缺点。C/S结构交互性强,执行速度快,更利于处理大量数据,且由于C/S是配对的点对点机构模式,安全性可以得到较好的保障。B/S结构简化了客户端,用户操作更为简便,更适用于信息且易于扩展[1]。综合分析,系统采用C/S和B/S混合模式,充分发挥其各自优势。首先采用C/S模式,在各发运站安装客户端软件进行质检业务;其次使用B/S模式, 通过权限控制,使公司相关人员通过浏览器实时查看质检业务信息,对相关数据进行实时分析、统计,提高决策、反馈速度。

考虑到煤炭企业网络实际情况,即在网络中断情况下也可以进行质检业务,各发运站均保留本地数据库,在网络畅通的情况下,将处理的业务数据分别保存到本地数据库和中央数据库,当网络出现故障时,可以先将业务数据保存于本地数据库,在网络畅通时立刻通过后台程序将本地数据传输到中央数据库。

1.3 系统功能模块

根据上述分析,质量检验管理信息系统整体可划分为如下功能模块,如图1所示。

1) 发运站质量检验:开展质检业务,采样、制样、化验流程按照3级编码转换进行,对基础业务数据变动进行全程跟踪,防止作弊行为。

2) 总公司抽样检验:公司对各发运站质检业务定期进行抽样检验。

3) 基础数据管理:包括公司矿井单位、煤种信息管理,自定义公式库管理,煤种检测项目维护,数据传输备份管理等。

4) 报表管理:根据业务需求,灵活方便的实时绘制各类明细、统计报表,管理与打印。

5) 业务数据查询:全方位查询各类业务数据,及数据变动情况。

6) 决策支持分析:基于中央数据库,进行数据挖掘,支持决策判断。

7) 用户权限管理:根据公司业务流程,设定相应不同权限组别,严格控制系统用户权限。

2 关键实现技术

2.1 数据库访问及事务处理

系统主要采用ADO(ActiveX Data Objects)完成对数据库的访问。ADO是Microsoft提出的访问数据库的最新方法,是一组优化的访问数据库专用对象集,将对关系数据库的操作封装在几个类中,用户只要生成这些类对象,就能够采用标准的SQL语言完成创建、插入、删除、修改等工作[2]。

由于各业务之间存在着复杂的数据依赖关系,当某一业务数据发生改变时,其它业务数据必须作出相应的变化,同时,考虑网络环境,在网络出现故障情况下必须保证数据的一致性、安全性和可恢复性,系统在充分利用SQL Server数据类型、规则、限制的基础上,对一些复杂的逻辑单元进一步引入了数据库事务处理机制,在故障情况下进行事务回滚,保持事务的原子性(Atomicity)。

2.2 自定义公式库

随着企业业务的不断发展及需求不断变化,系统需充分考虑这些可预测性的变化进行灵活设计。如根据公司市场部业务变化要求,对不同矿井产煤检测项目超标采取不同扣重方式。对此,系统引用自定义公式模块,根据业务需求录入自定义公式,系统先对自定义公式进行解析验证,再还原引用公式进行计算。

自定义公式库的实现步骤分为三个部分:参数的转换、公式表达式的解析、公式的校验。

function change(s1,s2...sn,fstr: string): string;

//其中s1代表第一个参数的实际值,sn代表第n个参数的实际值,fstr代表公式表达式字符串

var

p: Integer;//定义变量p

begin

p:=Pos('x', fstr);//此处假定参数一为x,把公式表达式中找到的第一个参数x的位置赋给p

while p0 do

begin

//公式字符串中第一个参数x位置前和后面的字符串保持不动,将参数x的实际值s1替换x

fstr:=Copy(fstr,1,p-1)+'('+s1+')'+Copy(fstr,p+1,Length(fstr)-p);

//依次在公式中找参数x,如果有,则把它在公式字符串中的位置赋给p

p:=Pos('x', fstr);

end;

//依照找寻参数x的方法,将字符串中的第二个参数到第n个参数均用它们的实际值s2到sn替换

... ...

... ...

Result:=s1 ;//返回替换后的公式字符串

end;

用户根据实际需求自定义公式表达式,由于此时的公式只是字符串,所以很有可能存在非法的公式,例如缺少运算符号或者缺少必要的参数等。所以公式的校验保证用户录入的自定义公式表达式合法有效,方便其他程序的调用。公式的校验基本思路:查询公式字符串内括号的匹配、运算符有无多余、除数为常数的不能为0等。

2.3 报表的生成与管理

在企业质量管理过程中,报表是质量信息的重要载体之一,因此,如何合理地实现报表的生成、浏览和管理,使其符合用户的业务需求和操作习惯,是质量管理信息系统的重要实现内容。质量管理信息系统根据企业业务需求,分别在C/S及B/S架构下独立开发出适合各自业务模型的报表系统。在质检业务数据的基础上,用户可在C/S客户端软件上,通过灵活自定义字段,绘制满足各自不同需求的业务统计报表;在B/S架构下,系统采用水晶报表工具进行报表开发设计,用户可通过浏览器选择不同组合条件,实时产生明细、统计报表,并绘制不同统计饼图,方便统计分析。

系统生成的报表均可快速导入Excel,统计分析饼图也可直接快速生成PDF文件格式,方便管理打印。

3 结束语

质量检验管理系统,结合了C/S、B/S架构的优点,体现了C/S与B/S架构组合使用的优越性。既满足了基层质量检验业务的需求,又实现了各级管理人员实时查询与决策的要求。目前该系统已正式投入企业运营,并收到了预期的效果。

参考文献:

[1] 徐晓霞,贝雨馨. B/S模式与C/S模式之比较[J].延边大学学报:自然科学版.2003(2):126-129.

[2] 牟琦,龚尚福.煤炭企业生产计划管理信息系统的设计与实现[J].工矿自动化.2006(2):50-53.

上一篇:如何提高基层气象信息网络的安全 下一篇:对C语言中循环结构的教学方法研究