钢结构行业生产出入库管理系统开发
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
钢结构行业生产出入库管理系统开发
摘要
本设计是基于钢结构行业的生产出入库管理系统。
钢结构行业是离散型制造企业,存在了物料主数据没有标准件,都是按订单进行生产。
生产管理存在着统计困难、容易出错、信息反馈不及时、现有市场上的生产系统都难以对其信息信息化管理等困难。
本系统设计主要为解决上述困难,提高企业的信息化水平而开发。
主要功能包括钢结构行业从项目计划到成品构件出库过程中的成品构件管理,并借助与条形码和采集器等自动化识别设备加快和提高出入库的效率,并对生成的进度情况进行实时查询。
关键词:钢结构行业离散型制造条形码采集器
目录
中文摘要 (1)
目录................................................................ ?? 第一章绪论....................................................... ??
1.1研究动机与目的............................................ ??
1.2研究背景.................................................. ??
1.3研究方法与系统描述........................................ ??
1.4设计內容概述.............................................. ?? 第二章需求分析................................................... ??
2.1××× ................................................... ??
2.1.1 ×××.............................................. ?? 第三章概要设计................................................... ??
3.1××× ................................................... ??
3.1.1 ×××.............................................. ?? 第四章详细设计................................................... ??
……………
第五章测试用例................................................... ??
……………
第×章结论....................................................... ??
参考文献............................................................ ?? 致谢................................................................ ??
第一章绪论
1.1 研究动机与目的
考虑到钢结构行业是离散型制造行业,存在按项目订单进行生成,没有标准件以及生产管理较为松散,目前主流的物料管理系统都很难对这行业进行信息化管理,迫切需要开发一套适合于本行业的生产出入库管理系统对生产物料进行管理。
1.2 研究背景
考虑到钢结构行业生产管理松散和成品识别复杂,需要开发一套信息管理系统对生产进行信息化管理。
1.3 研究方法与系统描述
考虑到行业的特点及相关人员对信息系统的认识程度采用原型模型法进行开发。
系统基于C/S结构,采用Borand C++ builder 6.0和Microsoft SQL Server 2000进行开发,并借助于条形码、采集器等设备辅助软件操作。
1.4 设计內容概述
本设计是针对钢结构行业的生产出入库管理的信息系统,主要按成品构件的类型完成相关的生产工序保工录入操作,借助于条形码和采集器等设备完成出入库的管理,以及对生产进度情况进行实时查询统计和完成工程项目的管理操作。
第二章需求分析
2.1 现行业务描述
2.1.1 组织结构
钢结构行业制造按生产构件种类不同进行公司划分,构件生产按构件类型不同走不同的工艺路线进行分别报工,成品仓库完成成品构件入库出库操作。
2.1.2 业务流程分析
基于订单性生产,按项目进行管理。
生产成品构件按构件类型划分为不同的工艺路线进行生产及报工,统一有成品仓库完成出入库管理。
2.2 现行系统存在的主要问题
现行生产管理主要按手工方式进行报工及相关信息汇总统计,存在信息反馈不及时,容易出错等问题。
2.3 解决方案
基于行业特点,开发相应的生产管理信息系统,完成对成品构件的生产及出入库管理信息化管理,并借助于条形码和采集器等设备提高效率,降低出错率,提高信息反馈的及时性。
2.4 可行性分析与抉择
2.4.1 技术可行性
借助于Boland C++ builder先进的VCL框架及Microsoft SQL Server分布式数据库系统完成可以开发基于条形码管理的生产出入库系统
2.4.2 经济可行性
依靠公司自己信息管理部门的技术开发人员进行开发,只需再增加相应的条形码,采集器和条码打印机等设备。
2.4.3 法律可行性
依靠企业信息话部门相关人员进行信息系统自主开发。
第三章概要设计
3.1 总体设计
3.1.1 运行环境
服务器端运行在Windows 20003 Server上,客户端运行在Windows2000以上平台。
3.1.2 基本设计结构及功能模块
本系统总体分为六大部份:登入子系统、项目信息子系统、车间管理子系统、仓库管理子系统、报表统计子系统、系统设置子系统。
登入子系统负责帐套的选择用户登入及权限的分配操作,项目子系统主要负责项目信息的维护、构件类型主数据的维护等操作,车间管理子系统主要包括拼装、转移、油漆等工序的生产报工操作,仓库管理子系统负责借助于条码及手动等完成构件的出入库操作,报表统计子系统包括按项目、类型、时间等对生产订单的完成情况进行跟踪查询和导出操作,系统设置子系统主要负责系统用户的建立修改等操作以及权限等的分配操作。
第四章详细设计
4.1 系统数据库设计
系统采用Microsoft SQL 2000 数据库系统,采用SQL Server触发器和存储过程等辅助完成业务操作。
共有数据库2个,分别为BARCODESITE(帐套数据库),SCXX(生产信息数据库)。
下面详述其结构、功能及关系。
4.1.1 BARCODESITE(帐套数据库)
本数据库的功能主要保存业务帐套数据库信息,有1张表组成。
表功能描述如下:
1)SCDBPATH(帐套信息)表
用以保存业务数据库帐套信息。
各字段信息描述如下表:
表1 帐套信息表
字段名称类型功能描述
1.id int 内部编号
varchar+80 业务帐套数据库显示名
3.path varchar+50 业务帐套数据库名
4. htbh Bit 是否按合同编号进行操作
5. version int 版本信息
4.1.2 SCXX(业务信息数据库)
本数据保存业务操作的数据,有20张表组成。
表功能描述如下:
1) LEIBIE(项目信息表)表
用以保存项目工程及子项目信息。
各字段信息描述如下表:
表1 项目信息表
字段名称类型功能描述
1.no int 项目内部编号
varchar+50 项目名称
3.ownno int 直接上级所属编号
2) GOUJIANDAN(生产订单信息表)表
用以保存生产订单信息。
各字段信息描述如下表:
表2 生产订单信息表
字段名称类型功能描述
1.no int 订单内部编号
2.owner int 直接所属项目编号
3.firowner int 所属总项目项目编号
4.goujianhao varchar+50 构件编号
5.guige varchar+80 规格信息
6.shuliang int 数量
7.danwei varchar+4 单位
8.zhongzhong float 总重量
9.danzhong float 单重
10.tuhao varchar+50 图号
11.leibie varchar+10 类型
12.htbh varchar+50 合同编号
3) GJLB(构件分类主数据)表
用以保存构件分类信息主数据信息。
各字段信息描述如下表:
表3 构件分类主数据表
字段名称类型功能描述
1.id int 分类信息内部编号
2.inputname varchar+10 分类信息名称
3.disname varchar+10 分类信息显示名称
4.txm bit 是否进行条形码管理
5.sc bit 是否进行生产过程管理
4) PZTABLE(拼装工序单主表)表
用以保存拼装工序完成的任务单主信息。
各字段信息描述如下表:
表4拼装工序单主表
字段名称类型功能描述
1.id int 单据内部编号
2.pzno varchar+100 单据编号
3.rq datetime 单据生成日期
4.drr varchar+50 录入人
5.bz varchar+300 备注信息
6.projno int 单据所属项目编号
5) PZDAN(拼装工序单详细信息)表
用以保存相应单据所拥有的构件信息。
各字段信息描述如下表:
表5拼装工序单详细信息表
字段名称类型功能描述
1.id int 单据内部编号
2.txmid int 构件内部编号
3.pzshu int 数量
4.ownerno int 拼装单据内部编号
6) PZKC(未拼装构件信息)表
用来保存等待拼装工序的构件信息表。
各字段信息描述如下表:
表6未拼装构件信息表
字段名称类型功能描述
1.txmid int 构件内部编号
3.sl int 数量
7) ZYTABLE(转移工序单主表)表
用以保存转移工序完成的任务单主信息。
各字段信息描述如下表:
表7转移工序单主表
字段名称类型功能描述
1.id int 单据内部编号
2.zyno varchar+100 单据编号
3.rq datetime 单据生成日期
4.drr varchar+50 录入人
5.bz varchar+300 备注信息
6.projno int 单据所属项目编号
8) ZYDAN(转移工序单详细信息)表
用以保存相应单据所拥有的构件信息。
各字段信息描述如下表:
表8转移工序单详细信息表
字段名称类型功能描述
1.id int 单据内部编号
2.txmid int 构件内部编号
3.zyshu int 数量
4.ownerno int 转移单据内部编号
9) ZYKC(未转移构件信息)表
用来保存等待转移工序的构件信息表。
各字段信息描述如下表:
表9未转移构件信息表
字段名称类型功能描述
1.txmid int 构件内部编号
3.sl int 数量
10) YQTABLE(油漆工序单主表)表
用以保存油漆工序完成的任务单主信息。
各字段信息描述如下表:
表10转移工序单主表
字段名称类型功能描述
1.id int 单据内部编号
2.yqno varchar+100 单据编号
3.rq datetime 单据生成日期
4.drr varchar+50 录入人
5.bz varchar+300 备注信息
6.projno int 单据所属项目编号
11) YQDAN(油漆工序单详细信息)表
用以保存相应单据所拥有的构件信息。
各字段信息描述如下表:
表11转移工序单详细信息表
字段名称类型功能描述
1.id int 单据内部编号
2.txmid int 构件内部编号
3.yqshu int 数量
4.ownerno int 转移单据内部编号
12) YQKC(未油漆构件信息)表
用来保存等待油漆工序的构件信息表。
各字段信息描述如下表:
表12未转移构件信息表
字段名称类型功能描述
1.txmid int 构件内部编号
3.sl int 数量
13) TXMTABLE(未入库构件信息)表
用来保存等待入库工序的构件信息表。
各字段信息描述如下表:
表13未入库构件信息表
字段名称类型功能描述
1.txmid int 构件内部编号
3.shuliang int 数量
14) RUKUTABLE(入库工序单主表)表
用以保存入库工序完成的任务单主信息。
各字段信息描述如下表:
表14入库工序单主表
字段名称类型功能描述
1.no bigint 单据内部编号
2.rukuno varchar+100 单据编号
3.rukudate datetime 单据生成日期
4.rukuren varchar+50 录入人
5.beizhu varchar+300 备注信息
6.projno int 单据所属项目编号
15) RUKUDAN(入库工序单详细信息)表
用以保存相应单据所拥有的构件信息。
各字段信息描述如下表:
表15入库工序单详细信息表
字段名称类型功能描述
1.id int 单据内部编号
2.txmid int 构件内部编号
3.rkshu int 数量
4.ownerno int 入库单据内部编号
5.gongduan v archar+50 所属工段信息
16) CHUKUTABLE(出库工序单主表)表
用以保存出库工序完成的任务单主信息。
各字段信息描述如下表:
表16出库工序单主表
字段名称类型功能描述
1.no bigint 单据内部编号
2.chukuno varchar+100 单据编号
3.chukudate datetime 单据生成日期
4.chukuren Varchar+50 录入人
5.beizhu Varchar+300 备注信息
6.projno int 单据所属项目编号
7.htbh Varchar+50 合同编号
17) CHUKUDAN(出库工序单详细信息)表
用以保存相应单据所拥有的构件信息。
各字段信息描述如下表:
表17出库工序单详细信息表
字段名称类型功能描述
1.id int 单据内部编号
2.txmid int 构件内部编号
3.ckshu int 数量
4.ownerno int 转移单据内部编号
18) KC(未出库构件信息)表
用来保存等待出库工序的构件信息表。
各字段信息描述如下表:
表18未入库构件信息表
字段名称类型功能描述
1.txmid int 构件内部编号
3.sl int 数量
19) PROJECTINFO(项目完成信息)表
用来保存项目完成情况信息。
各字段信息描述如下表:
表19项目完成信息表
字段名称类型功能描述
1.projno int 项目内部编号
3.inputtime datetime 导入时间
4.sl bigint 总数量
5.zl float 总重量
6.rks int 已入库总数
7.rkzl float 已入库总重量
8.cks int 已出库总数
9.ckzl float 已出库总重量
10.pzs int 已拼装总数
11.pzzl float 已拼装总重量
12.zys int 已转移总数
13.zyzl float 已转移总重量
14.yqs int 已油漆总数
15.yqzl float 已油漆总重量
16.status bit 项目完成情况
20) VALITB(用户权限信息)表
保存软件使用用户信息及相应权限分配。
各字段信息描述如下:
表19用户权限信息表
字段名称类型功能描述
1.id int 内部编号
3.yonghumin Varchar+50 显示用户名
Varchar+50 登入用户名
5.pw Varchar+50 密码信息
6.yn1 int 权限信息字段
7.yn2 int 权限信息字段
8.yn3 int 权限信息字段
9.yn4 int 权限信息字段
10.yn5 int 权限信息字段
11.yn6 int 权限信息字段
12.yn7 int 权限信息字段
13.yn8 int 权限信息字段
14.yn9 int 权限信息字段
15.yn10 int 权限信息字段
16.yn11 int 权限信息字段
17.yn12 int 权限信息字段
18.yn13 int 权限信息字段
19.yn14 int 权限信息字段
20.yn15 int 权限信息字段
21.yn16 int 权限信息字段
22.yn17 int 权限信息字段
23.yn18 int 权限信息字段
24.yn19 int 权限信息字段
25.yn20 int 权限信息字段
26.yn21 int 权限信息字段
27.yn22 int 权限信息字段
28.yn23 int 权限信息字段
29.yn24 int 权限信息字段
30.yn25 int 权限信息字段
31.yn26 int 权限信息字段
32.yn27 int 权限信息字段
33.yn28 int 权限信息字段
34.yn29 int 权限信息字段
35.yn30 int 权限信息字段
36.yn31 int 权限信息字段
37.yn32 int 权限信息字段
38.yn33 int 权限信息字段
39.yn34 int 权限信息字段
40.yn35 int 权限信息字段
41.yn36 int 权限信息字段
42.yn37 int 权限信息字段
43.yn38 int 权限信息字段
44.yn39 int 权限信息字段
45.yn40 int 权限信息字段
46.yn41 int 权限信息字段
47.yn42 int 权限信息字段
48.yn43 int 权限信息字段
49.yn44 int 权限信息字段
50.yn45 int 权限信息字段
51.yn46 int 权限信息字段
52.yn47 int 权限信息字段
4.2 系统功能模块设计
4.2.1 登入模块
完成系统登入操作,包括帐套选择、用户名及密码的验证工作。
如图所示为登入模块的界面。
该模块完成的功能有:
1)确定:按选择的帐套、用户名密码等进行验证。
2)取消:退出应用程序。
4.2.2 基本信息模块
该模块主要完成项目信息的维护操作,生产订单的导入和维护操作和构件类型主数据的设置操作。
4.2.2.1 工程设置信息
该模块主要完成项目信息的维护操作。
如图所示为工程设置模块的界面。
该模块完成的功能有:
1)增加同级:增加和选中节点处于相同层次的节点。
2)增加子级:增加选中节点的下级节点。
3)修改:修改项目名称。
4)删除:删除相应的节点。
4.2.2.2 构件导入
该模块主要完成生产订单的导入操作。
在导入过程中包括对待导入EXCEL文件格式完成性的检查,包括构件重复性和类型正确性。
如图所示为构件导入模块的界面。
该模块完成的功能有:
1)导入:导入EXCEL的订单文件,在这主要完成对待导入文件的格式的完成性
检查操作,并提醒用户错误信息。
2)保存:把完成性检查后无错误的文件导入数据库。
3)取消:删除已经导入的订单信息
4.2.2.3 构件维护
该模块完成对已导入的构件的维护操作。
包括添加,删除,修改等。
如图所示为构件维护模块的界面。
该模块完成的功能有:
1)添加:手工添加订单信息。
2)编辑:对已导入的订单信息的修改,包括数量,规格等信息。
3)保存:保存修改后的信息。
4)删除:删除订单信息
4.2.2.4 参数设置
该模块完成构件类型信息的维护操作,包括有无条码和有无生产过程等设置。
工段设置主要包括工段信息的维护操作。
如图所示为参数设置模块的界面。
该模块完成的功能有:
1)工段信息的维护操作包括添加、删除、修改等操作。
2)类型设置:设置构件的类型信息包括有无生产过程和条码等的维护操作。
4.2.3 车间管理模块
该模块主要包括生产过程的管理,包括拼装、转移、油漆等工序的管理。
4.2.3.1 拼装生产单
该模块主要完成拼装过程中完成任务的报工操作。
如图所示为拼装生产单的界面。
该模块完成的功能有:
1)添加:新建一张生产单。
2)编辑:对已建立订单进行编辑。
3)保存:保存生产的生产单。
4)删除:删除生产单。
5)导出:把生产单导出EXCEL文件或者打印。
4.2.3.2 转移生产单
该模块主要完成转移过程中完成任务的报工操作。
如图所示为转移
生产单的界面。
该模块完成的功能有:
1)添加:新建一张生产单。
2)编辑:对已建立订单进行编辑。
3)保存:保存生产的生产单。
4)删除:删除生产单。
5)导出:把生产单导出EXCEL文件或者打印。
4.2.3.2 油漆生产单
该模块主要完成油漆过程中完成任务的报工操作。
如图所示为油漆
生产单的界面。
该模块完成的功能有:
1)添加:新建一张生产单。
2)编辑:对已建立订单进行编辑。
3)保存:保存生产的生产单。
4)删除:删除生产单。
5)导出:把生产单导出EXCEL文件或者打印。
4.2.4 仓库管理模块
该模块主要完成生产订单的入库出库等操作,包括借助于条码进行导入生产和手动建立相应订单。
4.2.4.1 入库数据导入
该模块主要借助于采集器收集的数据导入系统生产入库单,包括对
库存数据等的检查操作。
如图所示为入库数据导入的界面。
该模块完成的功能有:
1)读码程序:调用采集器数据读取程序。
2)数据导入:导入读取的数据。
读取数据并导入系统,包括对有无条码及数量
等检查工作。
3)生成入库单:把导入的数据生成入库单。
4)取消:取消已导入的数据。
5)同工程合同编号不能同时入库:根据选择,如果选择分开,同时导入的订单
如果属于不同合同编号会生成不同的入库单。
如果不分开则生成同一张入库单。
4.2.4.2 入库单维护
该模块主要用于手动生成入库单以及对入库单的维护操作。
如图所
示为入库单维护的界面。
该模块完成的功能有:
1)添加:新建一张入库单。
2)编辑:对已建立订单进行编辑。
3)保存:保存生成的入库单。
4)删除:删除入库单。
5)导出:把入库单导出EXCEL文件或者打印。
4.2.4.3 出库数据导入
该模块主要借助于采集器收集的数据导入系统生成出库单,包括对库存数据等的检查操作。
如图所示为出库数据导入的界面。
该模块完成的功能有:
1) 读码程序:调用采集器数据读取程序。
2) 数据导入:导入读取的数据。
读取数据并导入系统,包括对有无条码及数量等检查工作。
3) 生成出库单:把导入的数据生成出库单。
4) 取消:取消已导入的数据。
同工程合同编号不能同时出库:根据选择,如果选择分开,同时导入的订单如果属于不同合同编号会生成不同的出库单。
如果不分开则生成同一张出库单。
4.2.4.4 出库单维护
该模块主要用于手动生成出库单以及对出库单的维护操作。
如图所示为出库单维护的界面。
该模块完成的功能有:
1)添加:新建一张出库单。
2)编辑:对已建立订单进行编辑。
3)保存:保存生成的出库单。
4)删除:删除出库单。
5)导出:把出库单导出EXCEL文件或者打印。
4.2.5 报表统计模块
该模块主要进行订单信息等的查询操作、条码标签打印以及结束完成项目的维护操作。
4.2.
5.1 条码打印
该模块主要进行订单信息的条码打印操作。
如图所示为条码打印的界面。
该模块完成的功能有:
1) 添加:添加选择的条件。
2) 清除:删除选择的条件。
3) 导入数据:导入查询的订单数据。
4)打印:对查询的结果进行打印操作。
4.2.
5.2 构件查询
该模块主要对按项目构件对完成情况进行查询。
如图所示为构件查询的界面。
该模块完成的功能有:
1)已出库:已经完成出库的构件。
2)已入库:已经完成入库的构件。
3)未制作:未入库的构件。
4)查询:按选择的条件进行查询。
4.2.
5.2 存货查询
主要对未入库、未出库、未转移、未油漆、未拼装构件的信息查
询。
如图所示为存货查询的界面。
该模块完成的功能有:
1)导出:对查询的结果导出成EXCEL文件。
4.2.
5.3 详单查询
该模块主要完成按日期等选择的条件查询订单的详细信息。
如图
所示为详单查询的界面。
该模块完成的功能有:
1)查询:按日期、项目等信息进行查询。
2)导出:导出查询的结果为EXCEL文件。
4.2.
5.4 月度查询
该模块按月对项目的各工序完成情况进行统计。
如图所示为月度查询的界面。
该模块完成的功能有:
1)查询:按时间查询项目的总进度情况。
4.2.6 系统设置模块
该模块主要完成建立用户、修改和删除用户以及用户权限的设置。
4.2.6.1 用户管理
该模块主要完成建立用户、修改和删除用户以及用户权限的设置。
如图所示为用户管理的界面。
该模块完成的功能有:
1)添加:添加用户。
2)修改:修改已建立用户的登入、显示用户名、密码和权限。
3)保存:保存修改后的信息。
4)删除:删除用户。
5)取消:取消所做的修改操作。
第五章测试用例
系统主要采用了白盒测试和黑色测试两种测试方法。
白盒测试主要用以测试软件编程以及单元模块完成时进行测试,采用语句覆盖、判定覆盖、条件、判定条件等测试方法进行测试。
在软件完成上线前有公司业务用户进行黑盒测试。
黑盒测试主要采用了错误推测方法、边界值分析方法等方法进行测试,下面列举采用错误推测法对生产订单导入程序格式完成进行测试。
5.1 黑盒测试用例举例
5.1.1 生产订单导入程序格式完整性检测
本测试用列主要检查程序对待导入文件格式完整性的容错功能,包括同个工程同类构件规格,图号,单重等信息的相同性,工程名称的识别性,和已
导入构件的完整性检查等。
下面将测试过程描述如下:
1)同个EXCEL订单文件相同构件的信息的相同性,设计测试用例为相同构件,
但图号信息不同。
如图为待导入EXCEL订单文件,构件名F0001GHT0008除图号不同另外信息都相同。
2)下图为导出程序时候,程序提示的出错信息。
5.1.2 条形码格式导入过程格式完整性测试
本测试用例是检查程序对待导入条码数据文件,对有无相应条码信息的处理。
下面将测试过程描述如下:
1)下图为待导入条码格式文件,第一个是有相应的订单信息,第二个没有相
应的订单信息。
2)下图为导入程序时的提示信息。
第六章结论
基于钢结构行业的生产出入库管理由于基于本行业定制开发,借助于条形码和采集器等自动设备辅助能够减少生产过程环境中的错误和调高相应效率,适合于离散型钢结构行业进行生产信息管理。
提高企业信息化管理水平。
能够满足企业需求。
但是由于开发时间短暂,还有很多功能需要完善,如对于EXCEL多页生产订单信息的导入和采集器之间数据采集的方便性上面还有待改进。
参考文献
[1] 康向东,汪浩,黄金才等.C++Builder 5 程序设计大全,机械工业出版社,2002.
[2] 陈战林.C++ Builder组件大全,电子工业出版社,2002
[3] 邹建.深入浅出--SQL Server 2005开发、管理与应用实例,人民邮电出版社,2008.
[4] 莱恩工作室.Microsoft SQL Server 2000技术内幕,北京大学出版社,2002.。