飞机标准件库存管理系统的数据库设计与实现
2020-07-06邹存鑫刘向尧段青君
邹存鑫,刘向尧,段青君
(贵州理工学院航空航天工程学院,贵州 贵阳 550003)
0 引言
目前,计算机辅助设计以及机械制造等领域已广泛应用数据库技术。在工业上,过程数据的高效存取方面,数据库技术得到了广泛的应用。例如,波音737是波音公司生产的中程和短程双引擎喷气飞机。到目前为止,波音公司生产的737型号飞机已经开发设计了十多个系列[1],由于同型号飞机型号众多,飞机标准件种类繁多,飞机标准件中的数据量很大。为了实现数据的高效管理,需要采用数据库技术。数据库设计的优劣对于整个系统的效率和成果有着直接的影响。数据库所占据的存储空间的大小取决于数据库是否具有良好的数据库结构,同时一个良好的数据库结构有利于提高数据的完整性和一致性,并提升数据库系统响应运行速度。
在标准件库管理中,数据库技术的应用,不仅可以代替大量繁琐的计算和整理工作,而且可以引入高效的管理方法,通过报表之类信息的展示为管理者提供决策依据,提高经济效益。
库存管理涉及到的企业管理功能有两种,一个是基本的外部担保,以满足生产计划,设备维护要求。另一个是不断优化内部库存结构,提高飞机标准件库存的合理性和经济性[2-4]。
针对这种情况,利用数据库技术设计一个飞机标准件库存管理系统,有利于提高效率,降低工作量,有利于实现飞机标准件库的可操作性及安全性。具有一定的工程意义。
1 飞机标准件库存管理系统
1.1 主要功能介绍
利用CATIA模型文件作为既定组成部分,形成属性参数库,并利用Delphi作为界面程序操纵后台SQL Server中的数据。动态搭建数据库与静态搭建数据库方法相比,动态方法减少了数据冗余和工作量。目前,建立飞机标准件库的关注点集中在以下几个方面:
(1)跨平台:标准件属性参数数据,希望在一个数据库建立的数据能够无缝地使用在其它数据库中;
(2)完整的信息储备:飞机标准件库储备了完整的标准件的几何信息以及非几何信息;
(3)便捷添加:操作者可以根据具体的使用情况,不需修改和重新编译加载程序源代码就可以添加零件参数信息到程序中;
(4)实用性:一般的标准件都可以通过界面创建并存储在程序中。
标准件库管理信息系统的总体任务[5]是:实现标准件库信息管理的系统化、规范化和自动化;系统设计的思路是:尽量采用现有的软硬件环境及先进的管理系统开发方案,提高系统开发水平和应用效果;符合标准件各项标准的规定,满足标准件库管理人员对标准件库信息管理的需要,并达到操作过程的简单实用、安全可靠等要求;采用模块化程序设计方法,便于系统功能的各种组合和修改;具备数据库维护功能,及时根据标准件管理者的需求,进行数据的添加、删除、查询、备份等操作。
此外,基于系统安全方面的考虑,飞机标准件库存管理系统的数据库应该在登录窗口中识别用户,并添加权限控制。飞机标准件库程序的主要功能示意图如图1所示。
图1 飞机标准件库程序主要功能示意图
1.2 所处位置
飞机标准件库管理系统在整个生产流程中的位置是车间级生产管理中的半成品与齐套管理部分,具体应用流程如图2所示。
图2 标准件库管理系统应用流程图
1.3 应用对象分析
大约有3 000多种航空标准件大多被列入我国航空工业规范。据不完全统计,一架飞机在生产过程中使用通用标准件数量占全机零部件数量的五分之三以上。但是,飞机标准件的大量人工录入过程存在许多弊端,如物资积压、资金周转缓慢、原始文件多、信息利用率低、数据处理单一、人工处理容易出错、管理方法落后等,进一步提高航空制造企业标准件库管理工作的质量和水平,会给航空制造企业标准件库管理工作带来很大的便利,提高生产效率。
2 数据库设计
2.1 数据库概念
从概念上讲,数据库就像高度专业化的电子橱柜,数据存储在电子柜的抽屉里。更准确的定义是:数据库是指长期储存在计算机中的数据集合,具有组织性和共享性的特点。数据库的特点是:内部联系密切,冗余度小,结构性强,安全可靠,数据共享[6]。
2.2 基本数据模型
在具体的数据库的设计与实现过程中,主要用到了面向对象的数据模型。随着科技的发展,在工业上具体的需求关系也不断地复杂化,支持面向对象数据模型和传统数据库特性的数据库应运而生。面向对象的概念包括对象/对象识别、属性/方法、封装/信息传递、类/类型、类层次/继承等。这组概念形成了新一代数据库模型的基础,包含这些概念的数据模型为相应的核心模型,通过在该核心模型的基础上增加与具体的应用有关的语义完整性约束和语义联系,定义出了面向对象的数据模型。
2.3 基于C/S模式的体系结构
随着计算机网络技术及数据库技术的飞速发展,计算机的应用结构主要有三种应用结构,一是终端/主机结构(Termina/Mainframe),二是文件服务器结构(File/Server)、三是客户机/服务器结构(Client/Server,简称C/S)及浏览器/服务器结构(Browser/Server,简称B/S),但大多数情况下,随着需求关系的不断复杂化,使用者要求已不能被前两种结构满足,目前C/S结构和B/S结构作为主流结构通常用于网络数据库系统平台开发结构。
C/S结构具有合理划分应用逻辑,充分发挥客户机和服务器的性能的特点。同时可以在客户端和服务器端分别执行应用程序,且开发和布置难度低于B/S结构。
2.4 用DFD图表示表与表之间的联系
数据流图(DFD),是将数据流和处理的过程通过图像的方式表达出来。在具体的需求分析中,数据流图可以作为需求分析的方法之一。将系统转化为由数据流连接的各种功能的组合。可以方便地描述与数据流的流相关联的各种功能。
用户需要实现的功能可以表示在数据处理上;它通常反映了需求关系,但是不会提供解决问题的方法或途径。通常情况下用户存储的数据或数据处理的结果,以及系统函数和函数之间传输的信息也通过数据流来表示。操作者存储在磁盘、磁带、内存或任何其他介质上的数据作为数据存储关系来表示。基于数据库技术的库存管理系统的数据流图如图3所示。
数据来源于管理员的录入。处理数据用椭圆表示,数据处理是对数据加工的单元,把输入数据转换为输出数据,其描述了用于实现功能的一部分的系统的数据流。数据流用箭头表示,同时作为函数之间的信息路径。数据流作为一组已知的数据包,它具有反应处理对象不反应控制对象的特点。开放框代表数据存储,数据存储是住宿地点或保存数据结构,而且在源和目的数据流中的一个。输出数据流表示可以从数据存储或数据流处理中提取的信息。
图3 飞机标准件库管理系统数据流图
2.5 主要表的结构
鉴于数据表的冗余设计,十大类标准零件的主要特点有些是重叠的,有七个主要类别表。此外,产品类别,制造商和用户部门提供三个系统维护表。在库存管理过程中,主要使用三个表:入库表、出库表和库存表。数据库中主要表之间的逻辑关系如图4所示。
根据标准件在飞机设计中的位置和标准件库在工程制造中的应用,标准件库涉及的零部件包括包括轴承、螺栓、螺母、螺钉、螺柱、垫圈、固定环、铆钉、销和钥匙。
3 数据库的实现
3.1 基于Delphi语言的数据库实现
Delphi语言具有许多优点,它在数据库中的应用具有突出的便捷性:用于各种数据库结构,从客户机/服务器结构到多层数据结构,高效率的数据库管理系统和新一代更先进的数据库引擎,最新的数据分析工具,并提供大量的企业组件[7]。
要求的各项功能,动态界面的设计与数据库的存取使用Delphi语言编程完成。由于Delphi数据库应用程序不会直接访问数据源,通常情况下利用Microsoft的ActiveX Data Object(ADO),一种数据库引擎,来直接处理数据库文件。
图4 数据库中主要表的结构及关系图
由于飞机标准零件管理信息系统的最终用户可能是一个不精通计算机技术的零件库管理员,根据应用需要,限定每个使用者只在功能子系统内操作,因此基本操作控制范围限定于每个子系统的用户接口,即一个完善统一的的用户界面,将应用于每个子系统,便于整个子系统内的执行的各种操作受控于系统的使用者。
3.2 标准件入库信息窗体的实现
SQL Server作为开发的底层数据库,用Delphi 语言编程完成标准件入库信息窗体设计。垫片类标准件入库信息录入如图5所示,这种窗体结构形式可以采用便于操作的树状结构。树状结构的实现是通过调用数据库中商品数据表的字段来实现的。
3.3 使用SQL语句查询
在数据库中,对数据的操作一般有以下两个情况,一是单表操作,二是多表之间及在数据库之间操作。基于SQL语句,操作者可以根据具体的使用情况实现多表之间及跨数据库的查询,同时多个数据表的功能可以在TDBGrid中显示。整个标准件库查询窗体是树状结构,查询表单是标准库中的树结构,可以直接展开树节点来查询标准之间的类别信息。SQL语句主要用于增加、删除、修改和查询数据。
图5 垫片类标准件入库信息录入图
3.4 C/S结构中锁数据表
C/S结构作为基于数据库飞机标准数据库管理系统的基本框架,数据库的锁定具有重要意义,其可在多个用户同时访问数据库时,降低错误率。SQL多粒度锁定可以称之为Server数据库具有的基本特性。飞机标准件库管理中存在大量的数据。每个大类的标准零件都有一个表,例如螺栓表,它需要使用表级锁。在实际中按照Transact-SQL声明中使用锁提示。
4 发展方向
飞机标准件库存管理系统下一步的研究发展方向主要有两个:一是多个系统集成,将现有的基于数据库的飞机标准件管理系统与在实际生产过程中用到的其他系统进行有效互联,主要研究飞机标准件各参数的表示和图形界面;二是将原型系统扩展为一个大型的库存管理系统,如集库、半成品库等,主要研究通用零件编码系统与不同数据库的区别。
此外,要对区块链技术在飞机标准件库存管理中的创新应用进行密切关注。
5 结语
根据实际生产的需求分析,介绍了基于飞机标准件库存管理系统的数据库功能、数据库知识。数据表之间的逻辑关系采用了DFD进行描述。数据库的实现采用了Delphi语言,采用SQL语句实现了多个数据表的功能以及多表及跨数据库的查询。