某中小型物流企业管理信息系统开发实例_第1页
某中小型物流企业管理信息系统开发实例_第2页
某中小型物流企业管理信息系统开发实例_第3页
某中小型物流企业管理信息系统开发实例_第4页
某中小型物流企业管理信息系统开发实例_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、某中小型物流企业管理信息系统开发实例沿海省份某中小型物流企业,拥有五个大小不同的仓库,并组建有自己的运输车队,拥有各种运输车辆共19台,企业员工人数达90多人,主要从事为周边多家生产型企业提供原材料、产成品的仓储管理以及运输服务,同时也承接一些零散客户的货物保存与运输业务。由于业务发展的需要,客户对所提供的服务的要求不断提高,企业急需一套较完善的MIS 系统,用以支持日常各种管理业务的快速处理,支持客户对其货物的快速查询、各种费用的快速查询、缴纳及客户意见反馈等工作。一、组织机构及功能分析(一)组织机构图该物流企业组织机构较简单,总经理下设公司办,公司办作为常设管理结构,组织、协调、管理仓储、

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

3、货主送达的“货物明细单” 与“送货单”、“码单”相核对,如不符,返货主“货物异常报告”,如相符,分配库位,录入成“入库单”。仓库主管审核后,记“库存账”,生成“入库收费单”,数据不再允许改动。相应DFD :2、 出库货主在出库时提供“提货样单”,提货人持“提货单”至出库组,要求提货。发货员核实“提货单”,填写“出库单”,然后向提货人出具“出库收费单”,同时生成“派车单”,并派保管员准备发货。保管员持“派车单”组织货物装运,记录实出货物信息,填写“码单出库信息表” 。仓库主管审核记账后,生成“库存收费单”。并且冲抵库存帐、在“码单”表中记录出库信息,存档。用户缴费后,保管员开具出门证给用户。相应

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

5、额相应DFD :(二)运输管理运输管理部门下设车队办公室、运输调度室、维修班共三个机构,主要承担企业日常的车辆配置、维护、驾驶员招聘、货物运输调度等管理业务。1、 车队办与维修班:按企业要求制定“车辆购置计划”、并招标采购;把采购回的车辆信息录入“车辆档案”并分配到具体车队;(车牌号、车类、车型、购置金额、购置日期、里程数、限运重量、限运体积、行驶证号、年审日期、所属车队、报勤)按企业要求制定“驾驶员招聘计划”、并实施招聘;把招聘的驾驶员信息录入“驾驶员档案”并分配到具体车队;(员工号、姓名、驾驶证、驾驶类型、所属车队、报勤)审核各车队送来的车辆及驾驶人员的考勤信息,并录入至“考勤表”;审核各

6、车队送来的车辆报修单并录入至“车辆报修表”;相应DFD :2、 运输调度审核各客户交来的运输用车要求(派车单),不能承担的退回;查询运输资源中空闲车辆及驾驶员信息,并制定相应派车任务单(派车单号、派车时间、车牌号、任务1、提货单号1、装货地(仓库)1、卸货地1、收货人签字1;任务2、提货单2. 。);打印派车任务单,分别给客户、车队及驾驶员;相应DFD :(三)费用计算企业的财务管理部门与仓储、运输等业务部门在经济上,有紧密的联系。主要承担仓储、运输等部门的日常业务过程中所发生的往来费用的计算、审核、执行等工作。简单描述如下:基础数据管理:负责费用核算过程中所需基础数据的录入、修改、删除等管理

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

8、统中。运输部门费用管理:根据运输管理信息系统中已有的派车(任务)单,选择收费的各种方法、计算出各客户应支付的运输费用(总费用分摊),经审核后,打印出一式几份,分别交车队、客户,催交费用。交费完成后,打印出收款收据,并保存在信息系统中。应收、应付账单管理:各客户的应收、应付账单,由客户已有的收费单及收款收据汇集而成。具体操作如下:输入欲查询的客户名称和时间段(默认为本月),系统从数据库中找出相应的收费单、收款收款记录,列表显示。相应DFD :(四)客户管理1、从前面仓储系统或运输系统中的客户基本信息表中,找到相应客户,对其已有的仓储管理费用(入库收费单、库存收费单、出库收费单)和运输管理费用(运

9、输收费单)进行汇总统计,得到的总费用,录入到客户信誉档案;然后将该客户已有的收款收据(仓储收款收据、运输收款收据)汇总统计后,录入到客户信誉档案(客户号、客户名称、客户类别、初次交易时间、交易总金额、收款金额、欠款金额、信誉等级、折扣率);最后按一定的方法(自拟),给客户评定类别(大客户、普通客户、散客户)、信誉等级、折扣率。2、根据客户信誉档案,统计出排名前十、或前二十位客户,分析其所在行业、所在地域、企业规模。3、客户利用本系统或互联网,输入自己的姓名、口令登录到客户关系信息系统,输入查询条件,分别从不同的数据表中,查询出自己的货物信息、应交费用信息、已交费用信息及信誉等级和折扣率。4、客

10、户登录后,可将自己的意见、留言录入到客户留言表中,系统根据不同的留言发送到不同的部门,各部门将处理后的结果录入到相应客户留言栏中。相应的DFD :(五)统计查询1、仓储库存查询:进入本模块后,选择相应的仓库,选择相应时间,系统找到该仓库的库存台帐(货物存储档案),调出各货位当时的货物信息(码单),形成当时库存列表,显示出来,并提供打印输出功能;在显示库存列表中,应能进一步查询货物码单的详细情况。2、入库出库查询:进入本模块后,选择相应的仓库,选择相应时间段,系统找到该仓库该时间段的入(出)库单表,形成入(出)库单列表,显示出来,并提供打印输出功能;在显示入(出)库单列表中,应能进一步查询该单的

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

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

13、信息、库位信息、货物信息、客户信息等管理模块; 入库管理:可分为码单管理、异常报告管理、入库单管理、记库存帐等模块;出库管理:可分为出库单管理、码单出库管理、出库收费管理、记库存帐等模块;库存管理:可分为生成盘点帐存表、打印盘点表、盘点数据录入、盘点盈亏管理等模块。车队资料管理:车队信息、车类信息、车型信息;车辆管理:购车计划、车辆档案、车辆考勤、车辆报修;驾驶员管理:招聘计划、驾驶员档案、驾驶员考勤;运输管理:派车单管理其余略(二)运行环境设计本系统在企业内部网络上开发运行,采用C/S开发应用模式。在企业公司办有一台高性能的网络服务器,安装有网络操作系统WINDOWS 2000 SERVER

14、,网络数据库管理系统 MS SQL SERVER 2000,用于集中存放企业管理数据,为其他计算机提供数据存取服务。网络中各部门计算机,安装有WINDOWS 2000 PRO以上版本的操作系统,都可作为客户机,连接到服务器上,实现数据资源共享。开发的MIS 软件也安装在客户机上。在教学、实验过程中,有网络条件的实验室,可参考以上配置,再加装开发工具:DELPHI 7以上版本,也可以在单机上用前后台的方式模拟C/S结构,前台用DELPHI 作开发,后台用MS SQL 2000个人版,进行实验。(三)代码设计本系统常用的代码有:1、送货单号:10位以内字符,由送货方开出,数据宽度一般不统一;2、码

15、单号: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、 码单:每包装货物

16、一份码单,该表保存所有码单信息;2、 异常报告:该表保存所有入库异常信息;3、 入库单:客户每送一批货物入库,开具一份入库单,该表保存所有入库信息;4、 入库收费单:每份入库单对应一张入库收费单,主要由货物入库装卸费、检验费组成;5、 库存帐:按库存位置记载的当前库存货物摆放情况;6、 出库单:每批货物出库开具一张出库单,该表保存所有出库信息;7、 码单出库表:对应一张出库单,挑选多张码单货物出库,该表保存所有码单出库信息;8、 库存收费单:货物出库时填写,计算保存时间、费率、金额;9、 出库收费单:主要是出库装卸费;10、 派车单:(同后续运输管理部分):对运输部门下达的派车调令,每张单可对

17、应多个出库单;11、 盘点帐存单(盘点单同):由库存账按盘点要求生成,一般是月底分仓库打印;12、 盘点盈亏表:由实际盘点数(填好的盘点单)与盘点账存单核对而成;13、 客户:该表保存所有客户信息;14、 货物:该表保存所有货物信息;15、 仓库:该表保存所有仓库信息;16、 库区:该表保存所有库区信息;17、 库位:该表保存所有库位信息;18、 部门:该表保存所有部门信息;19、 职工:该表保存所有职工信息及在本系统的操作权限、进入口令;数据表的具体结构,请参看系统实施部分实验一四、MIS 系统实施实验一、MS SQL SERVER 2000 数据库、表及ODBC 设置一、实验目的:通过实验

18、,熟悉网络数据库MS SQL SERVER 的基本操作,尤其是运用“企业管理器”建数据库、表的基本技能;熟悉WINDOWS 下,ODBC 数据库连接的设置过程。二、实验内容:1、在SQL SERVER中,新建数据库用户,并授予管理员DBA 权限;2、建物流企业数据库,如:WLMIS ;3、在数据库中创建仓储管理部分所有数据表,如:客户、码单等;4、在WINDOWS 的控制面板中,新建数据库接口-ODBC 连接;三、实验主要步骤:1、在windows 中,运行“企业管理器”,如图: 2、在“数据库”中,新建名为WLMIS 的数据库,在“安全性-登录”目录下,新建名为“ADMIN ”的登录,设置密

19、码为“ADMIN ”,默认登录数据库为WLMIS ,默认语言为简体中文,并设置数据库访问权限,如图; 3、进入WLMIS 数据库,点击“表”,再点开右键快捷菜单,依次新建数据表: 4、新建WINDOWS 下的ODBC 连接;“控制面板”-“管理工具”-“”如下图: 添加名为HNXT 的SQL SERVER 系统DSN ,数据源及服务器的名字均为HNXT , 上面页面尤为重要,不要选错,密码为前设置的“ADMIN ”,默认数据库为WLMIS ,设置完成后,经测试连接成功即可。四、实验结果:略实验二、创建项目、创建“登录”、“系统设置”管理界面 一、实验目的:通过实验,掌握DELPHI 开发MIS

20、 项目的基本方法,熟悉DELPHI 7的C/S模式下,数据库开发工具的使用,熟悉DELPHI 编程语言的基本规则。 二、实验内容:1、DELPHI 桌面介绍;2、简单“登录”界面的创建;3、数据源组件DBE 、DATA ACCESS、DATA CONTROLS简介; 4、“部门管理”、“职工管理”窗体的创建; 三、实验主要步骤:1、DELPHI 桌面: 共有:主功能菜单、工具按钮、控件集合、对象列表窗、对象属性编辑窗、可视化编辑窗体、相对应的PAS 源程序语句编辑区。2、创建新开发项目Project1.dpr ,保存在自己的文件夹中。如:D :WLMIS。新项目仅有一个单元UNIT1,由一个窗

21、体FORM1和它的源程序文件UNIT1.PAS 组成。 下面开始设计第一个界面,简单的“登录”窗体界面。 、界面示意图: 、相应程序UNIT1.PAS: unit Unit1;interface usesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, DB, DBTables, ExtCtrls, DBCtrls, StdCtrls; typeTForm1 = class(TForm Label1: TLabel; Label2: TLabel

22、; 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; varForm1: TForm1;implementationuses Unit2;$R *.dfm constiusename='ADMIN

23、9; ; ipassword='123456'procedure TForm1.Button1Click(Sender: TObject; /“进入”按键程序 beginif (edit1.text=iusenameand(edit2.text=ipassword then beginmessagedlg('欢迎使用物流MIS 系统!',mtinformation,mbok,0; form2.showmodal; form1.Close; end elsemessagedlg('错误!请重新输入。',mtinformation,mbok,0; e

24、dit1.text:='' edit2.text:='' end;procedure TForm1.Button2Click(Sender: TObject; /“退出”按键程序 beginclose; end; end.3、数据源组件DBE 、DATA ACCESS、DATA CONTROLS简介; 、DBE 数据源(数据引擎)组件:常用的有database:DataBase 组件一般用于程序与数据库的永久连接、数据库服务器需要用户登录、指定别名等一些情况下,一般情况下可不必用此组件。由于我们在本程序中需要打开网络数据库,所以在程序启动后就把数据库打开时需要的

25、用户名和密码都设定好,这样在别的窗口中就无须再考虑这个问题了。、DATA ACCESS数据访问组件:常用的有TABLE :Table 组件是最常用的组件,绝大部分数据库程序都要用到它,一般在设计阶段放进窗体,但此组件在运行时是不可见的。用于从数据源DATABASE 中取数据,组成数据表,供前台数据控制组件使用。、DATA CONTROLS数据控制组件:常用的有DBGRID 、DBNA VIGATOR 等: 主要是以各种形式向前台用户提供数据界面支持,是软件的重要组成部分。 三种部件之间的内部关系 4、“系统设置”管理界面的实施: 、“部门设置”: 窗体所含各主要组件及属性表: 其中:双击“DA

26、 TEBASE1”控件,出现下图: 设置好NAME ,ALIAS MAME 为前面ODBC 的名称HNXT ,设置USERNAME=ADMIN;PASSWORD=ADMIN;去掉LOGIN PROMPT 前面的选项,使程序连接后台数据库时自动登录,不需要输入用户名和口令;UNIT3.PAS 程序代码:unit Unit3;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls, Mask, DBCtrls, Grids, DBGrids, D

27、B, DBTables, ExtCtrls;typeTBMGL = class(TFormTable1: 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

28、end;varBMGL: TBMGL;implementation$R *.dfmend.、“职工管理”:依照“部门管理”窗体建立,去掉DATABASE1组件,将TABLE1的TABLENAME 设置为DBO. 职工,并按ZG 中各字段建立相应DBEDIT 控件; UNIT4.PAS 程序代码:unit Unit4;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, ExtCtrls, DBCtrls, StdCtrls, Mask, Grids, DBG

29、rids, DB, DBTables;typeTZGGL = class(TFormTable2: 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;

30、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 declarati

31、ons end;varZGGL: TZGGL;implementation$R *.dfmend.四、实验结果:略实验三、“仓库管理”中“基本信息”、“码单管理”模块的实施一、实验目的:结合仓储系统分析,运用逐渐熟悉的DELPHI 开发工具,进入到较复杂的管理业务信息化工作中。本实验“基本信息”模块的实施,与实验二中“职工管理”相似,不再重述,只要注意数据集控件TABLE n 的TABLENAME 的变动; “码单管理”是本实验的重点。二、实验内容:1、“仓库管理”模块:、界面: 、UNIT5.PAS 程序代码:unit Unit5;interfaceusesWindows, Messages

32、, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, Grids, DBGrids, DB, DBTables, ExtCtrls, DBCtrls, StdCtrls, Mask;typeTCKGL = class(TFormTable3: TTable;DataSource3: TDataSource;DBGrid1: TDBGrid;Label1: TLabel;Label2: TLabel;Label3: TLabel;DBEdit1: TDBEdit;Label4: TLabel;DBEdit2: TDBE

33、dit;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;varCKGL: TCKGL;implementation$R *.dfmend.2、“库区管理”模块:、界面: 、UNIT6.PAS:unit Unit6;in

34、terfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, DB, DBTables, ExtCtrls, DBCtrls, StdCtrls, Mask;typeTKQGL = class(TFormTable4: TTable;DataSource4: TDataSource;DBGrid1: TDBGrid;Label1: TLabel;Label2: TLabel;Label3: TLabel;DBEdit1: TDBEdit

35、;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;varKQGL: TKQGL;implementation$R *.dfmend.3、“库位管理”模块:

36、、界面: 、UNIT7.PAS:unit Unit7;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, DB, DBTables, ExtCtrls, DBCtrls, StdCtrls, Mask;typeTKWGL = class(TFormTable5: TTable;DataSource4: TDataSource;DBGrid1: TDBGrid;Label1: TLabel;Label2: TLabel;La

37、bel3: 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;varKWGL: TKWGL;implementation$R *.dfmend.4、“客户管理”模块:、界面

38、: 、UNIT8.PAS:unit Unit8;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, DBCtrls, StdCtrls, Mask, Grids, DBGrids, DB, DBTables;typeTKHGL = class(TFormTable6: TTable;DataSource2: TDataSource;DBGrid1: TDBGrid;Label1: TLabel;Label2: TLabel;DBEdi

39、t1: 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; Label7: TLabel; Label8: TLabel; Label9: TLabel; Label10: TLabel; La

40、bel11: TLabel; Label12: TLabel;DBNavigator1: TDBNavigator; private Private declarations public Public declarations end; varKHGL: TKHGL;implementation$R *.dfm end.5、“货物管理”模块: 、界面: 、UNIT9.PAS: unit Unit9;interface usesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs,

41、ExtCtrls, DBCtrls, StdCtrls, Mask, Grids, DBGrids, DB, DBTables; typeTHWGL = 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: TDB

42、Edit;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 declarat

43、ions end; varHWGL: THWGL;implementation$R *.dfm end.6、 “码单管理”模块: 、界面设计:码单管理是仓储管理中很重要的一项工作,数据项多,来源较广,处理较复杂。本实验作了适当的简化。界面数据来源使用四对table 与datasouce 控件组,窗体大致分左右两区,左区用于浏览显示所有码单,右区用于功能操作,包括查询、新增、编辑,用三个页框区分不同功能。如下图: 其中,主要组件及属性设置如下: 、UNIT10.PAS 程序代码:在程序设计过程中,考虑到高职高专的学习特点,尽量使用最简单、少量的DELPHI 内部的函数、命令实现其功能,少用或没采

44、用SQL 语句,相关属性设置有疑问的,请查看随书软件。 unit Unit10;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls, Grids, DBGrids, ComCtrls, DB, DBTables, DBCtrls, Mask,ExtCtrls;typeTMDGL = class(TFormTable8: TTable;DataSource1: TDataSource;DBGrid1: TDBGrid;Label1: TLa

45、bel;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;La

46、bel9: 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;Edit

47、8: 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;Labe

48、l32: 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;DBE

49、dit14: 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;Edit1

50、5: 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 Button4Clic

51、k(Sender: TObject;procedure Button1Click(Sender: TObject;procedure TabSheet1Show(Sender: TObject;private Private declarations public Public declarations end;varMDGL: TMDGL;implementation$R *.dfmprocedure TMDGL.Button5Click(Sender: TObject;beginEDIT3.Text:=DATETOSTR(DATE;end;procedure TMDGL.TabSheet2

52、Show(Sender: TObject;var i:integer;beginEDIT1.Text:=' ' /控件赋初值;EDIT2.Text:=''EDIT3.Text:=''EDIT4.Text:=''EDIT5.Text:=''EDIT6.Text:=''EDIT7.Text:=''EDIT8.Text:=''EDIT9.Text:=''EDIT10.Text:=''EDIT11.Text:=''EDIT12.

53、Text:=''EDIT13.Text:=''EDIT14.Text:=''EDIT15.Text:=''EDIT16.Text:=''EDIT9.Enabled:=FALSE;EDIT10.Enabled:=FALSE;EDIT13.Enabled:=FALSE;EDIT14.Enabled:=FALSE;EDIT15.Enabled:=FALSE;EDIT16.Enabled:=FALSE;Combobox1.Clear;Combobox2.Clear;Combobox3.Clear;table1.first;

54、 /为COMBOBOX 控件IREMS 赋值;for i:=1 to table1.RecordCount dobegintable1.Next;END ;TABLE2.First;for i:=1 to table2.RecordCount dobegintable2.Next;END;table3.first;for i:=1 to table3.RecordCount dobeginif table3.fieldvalues'是否为空'='是' thentable3.Next;end;end;procedure TMDGL.ComboBox1Exit(Se

55、nder: TObject; /为”客户号”赋值;VAR S:STRING ;beginS:=COMBOBOX1.Text;EDIT13.Text:=COPY(S,1,5;end;procedure TMDGL.ComboBox2Exit(Sender: TObject;/为货物编号赋值;beginEDIT14.Text:=COPY(COMBOBOX2.Text,1,10;with table2 do /为规格型号, 计量单位赋值;beginif findkey(EDIT14.Text thenbeginIF FieldValues'规格型号' <>'

56、9; THENedit15.text:=FieldValues'规格型号'IF FieldValues'计量单位' <>'' thenedit16.text:=FieldValues'计量单位'exit;end;end;END;procedure TMDGL.Button4Click(Sender: TObject; /输入码单;VARI,CODE,J,COD:INTEGER;Begin /判断输入数据完整性;IF LENGTH(TRIM(EDIT1.TEXT=0 THENBEGINMESSAGEDLG('码单编号不能为空,请重输!',mtWarning, mbOk, 0;EDIT1.SetFocus;exit;END;IF LENGTH(TRIM(EDIT2.TEXT=0 THENBEGIN

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论