某中小型物流企业管理信息系统开发实例

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

某中小型物流企业管理信息系统开发实例
沿海省份某中小型物流企业,拥有五个大小不同的仓库,并组建有自己的运输车队,拥有各种运输车辆共19台,企业员工人数达90多人,主要从事为周边多家生产型企业提供原材料、产成品的仓储管理以及运输服务,同时也承接一些零散客户的货物保存与运输业务。

由于业务发展的需要,客户对所提供的服务的要求不断提高,企业急需一套较完善的MIS系统,用以支持日常各种管理业务的快速处理,支持客户对其货物的快速查询、各种费用的快速查询、缴纳及客户意见反馈等工作。

一、组织机构及功能分析
(一)组织机构图
该物流企业组织机构较简单,总经理下设公司办,公司办作为常设管理结构,组织、协调、管理仓储、运输、财务、客户等下级部门。

如下图:
1、MIS系统及各部门业务初始化设置;
2、完善的货物入库、库存、出库管理功能;
3、完善的车辆管理、驾驶员管理、运输业务处理功能;
4、快捷、准确的各种费用统计计算功能;
5、全面的客户资料管理、分类、查询功能,并提供客户自主上网查询功能;
6、分级别、有条件的各种统计信息查询功能;
二、各部门主要业务及数据流程分析
(一)仓库管理
包含三个方面的主要业务,分述如下:
1、入库
送货人员将货物及“送货单”送达仓库站台,仓库入库组收货员按“送货单”
验收货物并组织卸货,为每件货物填写唯一的“码单”。

保管员将货主送达的“货物明细单”与“送货单”、“码单”相核对,如不符,返货主“货物异常报告”,如相符,分配库位,录入成“入库单”。

仓库主管审核后,记“库存账”,生成“入库收费单”,数据不再允许改动。

相应DFD:
2、出库
货主在出库时提供“提货样单”,提货人持“提货单”至出库组,要求提货。

发货员核实“提货单”,填写“出库单”,然后向提货人出具“出库收费单”,同时生成“派车单”,并派保管员准备发货。

保管员持“派车单”组织货物装运,记录实出货物信息,填写“码单出库信息表”。

仓库主管审核记账后,生成“库存收费单”。

并且冲抵库存帐、在“码单”表中记录出库信息,存档。

用户缴费后,保管员开具出门证给用户。

相应DFD:
3、库存
盘点流程:
仓库主管根据需要盘点的货物生成“盘点帐存表”,表中有生成盘点表的商品编码、商品名称、所属部门、库位、经营方式、库存数量及盘点日期等相关信息;
打印“盘点单”,包括的项目有:商品库位、所属部门、类别、商品编码、商品名称、经营方式、实盘数量及盘点日期,这里不输出商品的帐存数量;
保管员手持“盘点单”,进行实地盘点,将数量填入“盘点单”中实盘数量处;
保管员在微机中调出对应的“盘点帐存表”,将实盘的数量录入进去,经主管检查录入数据的准确性后,审核生效;
生成盘点盈亏表。

针对商品有盘盈和盘亏的商品进行记账。

凡是有盈亏的商品列出商品编码、名称、实盘数量、帐存数量、成本单价、盈亏金额
相应DFD:
(二)运输管理
运输管理部门下设车队办公室、运输调度室、维修班共三个机构,主要承担企业日常的车辆配置、维护、驾驶员招聘、货物运输调度等管理业务。

1、车队办与维修班:
按企业要求制定“车辆购置计划”、并招标采购;
把采购回的车辆信息录入“车辆档案”并分配到具体车队;(车牌号、车类、车
型、购置金额、购置日期、里程数、限运重量、限运体积、行驶证号、年审日
期、所属车队、报勤)
按企业要求制定“驾驶员招聘计划”、并实施招聘;
把招聘的驾驶员信息录入“驾驶员档案”并分配到具体车队;(员工号、姓名、
驾驶证、驾驶类型、所属车队、报勤)
审核各车队送来的车辆及驾驶人员的考勤信息,并录入至“考勤表”;
审核各车队送来的车辆报修单并录入至“车辆报修表”;
2、运输调度
审核各客户交来的运输用车要求(派车单),不能承担的退回;
查询运输资源中空闲车辆及驾驶员信息,并制定相应派车任务单(派车单号、
派车时间、车牌号、任务1、提货单号1、装货地(仓库)1、卸货地1、收货
人签字1;任务2、提货单2.。

);
打印派车任务单,分别给客户、车队及驾驶员;
相应DFD:
(三)费用计算
企业的财务管理部门与仓储、运输等业务部门在经济上,有紧密的联系。

主要承担仓储、运输等部门的日常业务过程中所发生的往来费用的计算、审核、执行等工作。

简单描述如下:
基础数据管理:
负责费用核算过程中所需基础数据的录入、修改、删除等管理工作。

具体有:
1、费用项目设置:按企业要求制定各部门的所有收费项目,如仓储费、运输费、
装卸费、处理费、加班费、报关费等;
2、费用类型设置:按实际具体情况,确定各部门的各种收费类型,如:按重量收
费、按体积收费、按时间收费、按距离收费、按重量时间收费、按重量距离收
费等;
3、计费单位设置:确定各种收费类型的计费单位,如:吨、公斤、立方、升、公
里、月、日(天)等;
仓储部门费用管理:
根据仓储管理信息系统中已有的货物入库单和出库单,选择收费的各项方法、计算出应该收取的各项仓储管理费用,并经审核后,打印出一式几份的费用清单,分别交仓库、货主和提货人,催交费用。

交费完成后,打印出收款收据,并保存在信息系统中。

运输部门费用管理:
根据运输管理信息系统中已有的派车(任务)单,选择收费的各种方法、计算出各客户应支付的运输费用(总费用分摊),经审核后,打印出一式几份,分别交车队、客户,催交费用。

交费完成后,打印出收款收据,并保存在信息系统中。

应收、应付账单管理:
各客户的应收、应付账单,由客户已有的收费单及收款收据汇集而成。

具体操作如下:输入欲查询的客户名称和时间段(默认为本月),系统从数据库中找出相应的收费单、收款收款记录,列表显示。

相应DFD:
(四)客户管理
1、从前面仓储系统或运输系统中的客户基本信息表中,找到相应客户,对其已有的仓储管理费用(入库收费单、库存收费单、出库收费单)和运输管理费用(运输收费单)进行汇总统计,得到的总费用,录入到客户信誉档案;然后将该客户已有的收款收据(仓储收款收据、运输收款收据)汇总统计后,录入到客户信誉档案(客户号、客户名称、客户类别、初次交易时间、交易总金额、收款金额、欠款金额、信誉等级、折扣率);最后按一定的方法(自拟),给客户评定类别(大客户、普通客户、散客户)、信誉等级、折扣率。

2、根据客户信誉档案,统计出排名前十、或前二十位客户,分析其所在行业、所在地域、企业规模。

3、客户利用本系统或互联网,输入自己的姓名、口令登录到客户关系信息系统,输入查询条件,分别从不同的数据表中,查询出自己的货物信息、应交费用信息、已交费
用信息及信誉等级和折扣率。

4、客户登录后,可将自己的意见、留言录入到客户留言表中,系统根据不同的留言发送到不同的部门,各部门将处理后的结果录入到相应客户留言栏中。

相应的DFD:
(五)统计查询
1、仓储库存查询:进入本模块后,选择相应的仓库,选择相应时间,系统找到该仓库的库存台帐(货物存储档案),调出各货位当时的货物信息(码单),形成当时库存列表,显示出来,并提供打印输出功能;在显示库存列表中,应能进一步查询货物码单的详细情况。

2、入库出库查询:进入本模块后,选择相应的仓库,选择相应时间段,系统找到该仓库该时间段的入(出)库单表,形成入(出)库单列表,显示出来,并提供打印输出功能;在显示入(出)库单列表中,应能进一步查询该单的详细情况。

3、运输派车查询:进入本模块后,选择相应查询要求(如:车牌号、驾驶员、时间、提货单号、派车单号、客户号等),系统找到运输信息系统中的派车(任务)单表,调出满足条件的派车单,形成派车单列表,显示出来,并提供打印输出功能;在显示派车单列表中,应能进一步查询派车单的详细情况。

4、运输统计查询:进入本模块后,选择相应车队、相应时间段,系统找到运输信息系统中的派车(任务)单表,调出满足条件的派车单,按车牌号或驾驶员进行分类汇总统计,形成每车或每人的运输工作量汇总列表,显示出来,并提供打印输出功能;在显示工作量汇总列表中,应能进一步查询每车或每人的派车单的详细情况。

5、仓储收入查询:进入本模块后,选择相应的仓库,选择相应时间段,系统找到仓储管理系统中的仓储费用清单表(应收)和仓储收款收据表(实收),调出该仓库该时间段的数据信息,形成仓库收入列表,显示出来,并提供打印输出功能;在显示仓库收入列表中,应能进一步查询每笔应收、实收的详细情况。

6、运输收入查询:进入本模块后,选择相应的车队,选择相应时间段,系统找到运输管理系统中的运输费用清单表(应收)和运输收款收据表(实收),调出该车队该时间段的数据信息,形成车队收入列表,显示出来,并提供打印输出功能;在显示车队收入列表中,应能进一步查询每笔应收、实收的详细情况。

相应DFD:略
三、MIS系统设计
其中:
仓库资料管理:可分为仓库信息、库区信息、库位信息、货物信息、客户信息等管理模块;
入库管理:可分为码单管理、异常报告管理、入库单管理、记库存帐等模块;
出库管理:可分为出库单管理、码单出库管理、出库收费管理、记库存帐等模块;
库存管理:可分为生成盘点帐存表、打印盘点表、盘点数据录入、盘点盈亏管理等模块。

车队资料管理:车队信息、车类信息、车型信息;
车辆管理:购车计划、车辆档案、车辆考勤、车辆报修;
驾驶员管理:招聘计划、驾驶员档案、驾驶员考勤;
运输管理:派车单管理
其余略
(二)运行环境设计
本系统在企业内部网络上开发运行,采用C/S开发应用模式。

在企业公司办有一台高性能的网络服务器,安装有网络操作系统WINDOWS 2000 SERVER,网络数据库管理系统 MS SQL SERVER 2000,用于集中存放企业管理数据,为其他计算机提供数据存取服务。

网络中各部门计算机,安装有WINDOWS 2000 PRO以上版本的操作系统,都可作为客户机,连接到服务器上,实现数据资源共享。

开发的MIS软件也安装在客户机上。

在教学、实验过程中,有网络条件的实验室,可参考以上配置,再加装开发工具:DELPHI 7以上版本,也可以在单机上用前后台的方式模拟C/S结构,前台用DELPHI作开发,后台用MS SQL 2000个人版,进行实验。

(三)代码设计
本系统常用的代码有:
1、送货单号:10位以内字符,由送货方开出,数据宽度一般不统一;
2、码单号:10位字符,由6位年月日+4位序列号组成,如:0806210003;
3、入库单号、入库收费单号:同上;
4、出库单号、出库收费单号、库存收费单号:同上;
5、客户号:5位字符,其中2位代表客户类别,后3位为序列号;
6、库区位置编号:8位字符,2位代表仓库,3位代表库区,3位代表库位;
7、货物编号:10位字符,3位代表大类,3位代表小类,4位序列号;
8、职工编号:5位字符,2位代表部门,3位序列号;
9、异常报告编号:8位字符,6位年月日+2位序列号;
(四)数据库及表设计(仓储管理部分):
该物流企业所有部门共用一个数据库,名为WLMIS,其中仓储管理部分的主要数据表如下:
1、码单:每包装货物一份码单,该表保存所有码单信息;
2、异常报告:该表保存所有入库异常信息;
3、入库单:客户每送一批货物入库,开具一份入库单,该表保存所有入库信息;
4、入库收费单:每份入库单对应一张入库收费单,主要由货物入库装卸费、检验费组
成;
5、库存帐:按库存位置记载的当前库存货物摆放情况;
6、出库单:每批货物出库开具一张出库单,该表保存所有出库信息;
7、码单出库表:对应一张出库单,挑选多张码单货物出库,该表保存所有码单出库信
息;
8、库存收费单:货物出库时填写,计算保存时间、费率、金额;
9、出库收费单:主要是出库装卸费;
10、派车单:(同后续运输管理部分):对运输部门下达的派车调令,每张单可对应
多个出库单;
11、盘点帐存单(盘点单同):由库存账按盘点要求生成,一般是月底分仓库打印;
12、盘点盈亏表:由实际盘点数(填好的盘点单)与盘点账存单核对而成;
13、客户:该表保存所有客户信息;
14、货物:该表保存所有货物信息;
15、仓库:该表保存所有仓库信息;
16、库区:该表保存所有库区信息;
17、库位:该表保存所有库位信息;
18、部门:该表保存所有部门信息;
19、职工:该表保存所有职工信息及在本系统的操作权限、进入口令;
数据表的具体结构,请参看系统实施部分实验一
四、MIS系统实施
实验一、MS SQL SERVER 2000 数据库、表及ODBC设置
一、实验目的:
通过实验,熟悉网络数据库MS SQL SERVER 的基本操作,尤其是运用“企业管理器”建数据库、表的基本技能;熟悉WINDOWS下,ODBC数据库连接的设置过程。

二、实验内容:
1、在SQL SERVER中,新建数据库用户,并授予管理员DBA权限;
2、建物流企业数据库,如:WLMIS;
3、在数据库中创建仓储管理部分所有数据表,如:客户、码单等;
4、在WINDOWS的控制面板中,新建数据库接口----ODBC连接;
三、实验主要步骤:
1、在windows中,运行“企业管理器”,如图:
2、在“数据库”中,新建名为WLMIS的数据库,在“安全性-登录”目录下,新建名为“ADMIN”的登录,设置密码为“ADMIN”,默认登录数据库为WLMIS,默认语言为
简体中文,并设置数据库访问权限,如图;
3、进入WLMIS数据库,点击“表”,再点开右键快捷菜单,依次新建数据表:
4、新建WINDOWS下的ODBC连接;“控制面板”-“管理工具”-“”如下图:
添加名为HNXT的SQL SERVER系统DSN,数据源及服务器的名字均为HNXT,
上面页面尤为重要,不要选错,密码为前设置的“ADMIN”,默认数据库为WLMIS,设置完成后,经测试连接成功即可。

四、实验结果:略
实验二、创建项目、创建“登录”、“系统设置”管理界面
一、实验目的:
通过实验,掌握DELPHI开发MIS项目的基本方法,熟悉DELPHI 7的C/S模式下,数据库开发工具的使用,熟悉DELPHI编程语言的基本规则。

二、实验内容:
1、DELPHI桌面介绍;
2、简单“登录”界面的创建;
3、数据源组件DBE、DATA ACCESS、DATA CONTROLS简介;
4、“部门管理”、“职工管理”窗体的创建;
三、实验主要步骤:
1、DELPHI桌面:
共有:主功能菜单、工具按钮、控件集合、对象列表窗、对象属性编辑窗、可视化编辑窗体、相对应的PAS源程序语句编辑区。

2、创建新开发项目—Project1.dpr,保存在自己的文件夹中。

如:D:\WLMIS。

新项目仅有一个单元UNIT1,由一个窗体FORM1和它的源程序文件UNIT1.PAS组成。

下面开始设计第一个界面,简单的“登录”窗体界面。

⑴、界面示意图:
⑵、窗体所含各组件及主要属性表:
⑶、相应程序UNIT1.PAS:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms,
Dialogs, Grids, DBGrids, DB, DBTables, ExtCtrls, DBCtrls, StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Label3: TLabel;
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
const
iusename='ADMIN' ;
ipassword='123456';
procedure TForm1.Button1Click(Sender: TObject); //“进入”按键程序begin
if (edit1.text=iusename)and(edit2.text=ipassword) then
begin
messagedlg('欢迎使用物流MIS系统!',mtinformation,[mbok],0);
form2.showmodal;
form1.Close;
end
else
messagedlg('错误!请重新输入。

',mtinformation,[mbok],0);
edit1.text:='';
edit2.text:='';
end;
procedure TForm1.Button2Click(Sender: TObject); //“退出”按键程序
begin
close;
end;
end.
3、数据源组件DBE、DATA ACCESS、DATA CONTROLS简介;
⑴、DBE数据源(数据引擎)组件:常用的有database:
DataBase 组件一般用于程序与数据库的永久连接、数据库服务器需要用户登录、指定别名等一些情况下,一般情况下可不必用此组件。

由于我们在本程序中需要打开网络数据库,所以在程序启动后就把数据库打开时需要的用户名和密码都设定好,这
样在别的窗口中就无须再考虑这个问题了。

⑵、DATA ACCESS数据访问组件:常用的有TABLE:
Table组件是最常用的组件,绝大部分数据库程序都要用到它,一般在设计阶段放进窗体,但此组件在运行时是不可见的。

用于从数据源DATABASE中取数据,组成数据表,供前台数据控制组件使用。

⑶、DATA CONTROLS数据控制组件:常用的有DBGRID、DBNAVIGATOR等:
主要是以各种形式向前台用户提供数据界面支持,是软件的重要组成部分。

三种部件之间的内部关系
4、“系统设置”管理界面的实施:
⑴、“部门设置”:
窗体所含各主要组件及属性表:
其中:双击“DATEBASE1”控件,出现下图:
设置好NAME,ALIAS MAME 为前面ODBC的名称HNXT,设置USERNAME=ADMIN;PASSWORD=ADMIN;去掉LOGIN PROMPT 前面的选项,使程序连接后台数据库时自动登录,不需要输入用户名和口令;
UNIT3.PAS程序代码:
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Mask, DBCtrls, Grids, DBGrids, DB, DBTables, ExtCtrls;
type
TBMGL = class(TForm)
Table1: TTable;
Database1: TDatabase;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBNavigator1: TDBNavigator;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
private
{ Private declarations }
public
{ Public declarations }
end;
var
BMGL: TBMGL;
implementation
{$R *.dfm}
end.
⑵、“职工管理”:
依照“部门管理”窗体建立,去掉DATABASE1组件,将TABLE1的TABLENAME设置为DBO.职工,并按ZG中各字段建立相应DBEDIT控件;
UNIT4.PAS程序代码:
unit Unit4;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, DBCtrls, StdCtrls, Mask, Grids, DBGrids, DB, DBTables; type
TZGGL = class(TForm)
Table2: TTable;
DataSource2: TDataSource;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
DBEdit8: TDBEdit; DBEdit9: TDBEdit; DBEdit10: TDBEdit; DBEdit11: TDBEdit; DBEdit12: TDBEdit; Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel; Label11: TLabel; Label12: TLabel; Label13: TLabel;
Label14: TLabel;
DBNavigator1: TDBNavigator;
private
{ Private declarations }
public
{ Public declarations }
end;
var
ZGGL: TZGGL;
implementation
{$R *.dfm}
end.
四、实验结果:略
实验三、“仓库管理”中“基本信息”、“码单管理”模块的实施
一、实验目的:
结合仓储系统分析,运用逐渐熟悉的DELPHI开发工具,进入到较复杂的管理业务信息化工作中。

本实验“基本信息”模块的实施,与实验二中“职工管理”相似,不
再重述,只要注意数据集控件TABLE n的TABLENAME的变动;“码单管理”是本实验的重点。

二、实验内容:
1、“仓库管理”模块:
⑴、界面:
⑵、UNIT5.PAS程序代码:
unit Unit5;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, DBTables, ExtCtrls, DBCtrls, StdCtrls, Mask;
type
TCKGL = class(TForm)
Table3: TTable;
DataSource3: TDataSource;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
DBEdit1: TDBEdit;
Label4: TLabel;
DBEdit2: TDBEdit;
Label5: TLabel;
DBEdit3: TDBEdit;
Label6: TLabel;
DBEdit4: TDBEdit;
Label7: TLabel;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
Label9: TLabel;
DBNavigator1: TDBNavigator; private
{ Private declarations }
public
{ Public declarations }
end;
var
CKGL: TCKGL;
implementation
{$R *.dfm}
end.
2、“库区管理”模块:
⑴、界面:
⑵、UNIT6.PAS:
unit Unit6;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, DBTables, ExtCtrls, DBCtrls, StdCtrls, Mask; type
TKQGL = class(TForm)
Table4: TTable;
DataSource4: TDataSource;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
DBEdit1: TDBEdit;
Label4: TLabel;
DBEdit2: TDBEdit;
Label5: TLabel;
DBEdit3: TDBEdit;
Label6: TLabel;
DBEdit4: TDBEdit;
Label7: TLabel;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
Label9: TLabel;
DBNavigator1: TDBNavigator; private
{ Private declarations }
public
{ Public declarations }
end;
var
KQGL: TKQGL;
implementation
{$R *.dfm}
end.
3、“库位管理”模块:
⑴、界面:
⑵、UNIT7.PAS:
unit Unit7;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, DBTables, ExtCtrls, DBCtrls, StdCtrls, Mask;
type
TKWGL = class(TForm)
Table5: TTable;
DataSource4: TDataSource;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
DBEdit1: TDBEdit;
Label4: TLabel;
DBEdit2: TDBEdit;
Label5: TLabel;
DBEdit3: TDBEdit;
Label6: TLabel;
DBEdit4: TDBEdit;
DBEdit6: TDBEdit;
Label9: TLabel;
DBNavigator1: TDBNavigator; private
{ Private declarations }
public
{ Public declarations }
end;
var
KWGL: TKWGL;
implementation
{$R *.dfm}
end.
4、“客户管理”模块:
⑴、界面:
⑵、UNIT8.PAS:
unit Unit8;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, DBCtrls, StdCtrls, Mask, Grids, DBGrids, DB, DBTables;
type
TKHGL = class(TForm)
Table6: TTable;
DataSource2: TDataSource;
DBGrid1: TDBGrid;
Label2: TLabel;
DBEdit1: TDBEdit; DBEdit2: TDBEdit; DBEdit3: TDBEdit; DBEdit4: TDBEdit; DBEdit5: TDBEdit; DBEdit6: TDBEdit; DBEdit7: TDBEdit; DBEdit8: TDBEdit; DBEdit9: TDBEdit; DBEdit10: TDBEdit; Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
DBNavigator1: TDBNavigator; private
{ Private declarations }
public
{ Public declarations }
end;
var
KHGL: TKHGL;
implementation
{$R *.dfm}
end.
5、“货物管理”模块:
⑴、界面:
⑵、UNIT9.PAS:
unit Unit9;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, DBCtrls, StdCtrls, Mask, Grids, DBGrids, DB, DBTables;
type
THWGL = class(TForm)
Table7: TTable;
DataSource2: TDataSource;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
DBEdit1: TDBEdit; DBEdit2: TDBEdit; DBEdit3: TDBEdit; DBEdit4: TDBEdit; DBEdit5: TDBEdit; DBEdit6: TDBEdit; DBEdit7: TDBEdit; DBEdit8: TDBEdit; DBEdit10: TDBEdit; Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
DBNavigator1: TDBNavigator; Label13: TLabel;
private
{ Private declarations }
public
{ Public declarations }
end;
var
HWGL: THWGL;
implementation
{$R *.dfm}
end.
6、“码单管理”模块:
⑴、界面设计:
码单管理是仓储管理中很重要的一项工作,数据项多,来源较广,处理较复杂。

本实验作了适当的简化。

界面数据来源使用四对table与datasouce控件组,窗体大致分左右两区,左区用于浏览显示所有码单,右区用于功能操作,包括查询、新增、编辑,用三个页框区分不同功能。

如下图:
其中,主要组件及属性设置如下:
⑵、UNIT10.PAS程序代码:
在程序设计过程中,考虑到高职高专的学习特点,尽量使用最简单、少量的DELPHI 内部的函数、命令实现其功能,少用或没采用SQL语句,相关属性设置有疑问的,请查看随书软件。

unit Unit10;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, ComCtrls, DB, DBTables, DBCtrls, Mask, ExtCtrls;
type
TMDGL = class(TForm)
Table8: TTable;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
DataSource2: TDataSource;
Table1: TTable;
Table2: TTable;
DataSource3: TDataSource;
Table3: TTable;
DataSource4: TDataSource;
PageControl1: TPageControl;
TabSheet1: TTabSheet; TabSheet2: TTabSheet; Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel; Label18: TLabel; Label19: TLabel; Label20: TLabel; Label21: TLabel; Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Edit7: TEdit;
Edit8: TEdit;
Edit9: TEdit;
Edit10: TEdit; Edit11: TEdit;
Edit12: TEdit;
Button1: TButton;
Button4: TButton;
Button5: TButton;
TabSheet3: TTabSheet; Label22: TLabel;
Label23: TLabel;
Label24: TLabel;
Label25: TLabel;
Label26: TLabel;
Label27: TLabel;
Label28: TLabel;
Label29: TLabel;
Label30: TLabel;
Label31: TLabel;
Label32: TLabel;
Label33: TLabel; Label34: TLabel; Label35: TLabel; Label36: TLabel; Label37: TLabel; Label38: TLabel; Label39: TLabel; Label40: TLabel; DBEdit5: TDBEdit; DBEdit6: TDBEdit; DBEdit7: TDBEdit; DBEdit8: TDBEdit; DBEdit9: TDBEdit; DBEdit10: TDBEdit; DBEdit11: TDBEdit; DBEdit12: TDBEdit;
DBEdit13: TDBEdit;
DBEdit14: TDBEdit;
DBEdit15: TDBEdit;
DBEdit16: TDBEdit;
DBEdit17: TDBEdit;
DBEdit18: TDBEdit;
DBEdit19: TDBEdit;
DBEdit20: TDBEdit;
DBEdit21: TDBEdit;
DBEdit22: TDBEdit;
DBEdit23: TDBEdit;
DBNavigator1: TDBNavigator; ComboBox1: TComboBox;
ComboBox2: TComboBox;
ComboBox3: TComboBox;
Edit13: TEdit;
Edit14: TEdit;
Edit15: TEdit;
Edit16: TEdit;
Label41: TLabel;
ComboBox4: TComboBox;
Label42: TLabel;
Edit17: TEdit;
Panel1: TPanel;
Panel3: TPanel;
procedure Button5Click(Sender: TObject); procedure TabSheet2Show(Sender: TObject); procedure ComboBox1Exit(Sender: TObject); procedure ComboBox2Exit(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure TabSheet1Show(Sender: TObject);。

相关文档
最新文档