版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、物流管理系统物流管理系统一.引言实习目的:通过实习,参与具体的java 开发项目,进一步提高了 java开发的基本技术, 丰富java开发的实战经验。过学习,巩固大学 所学专业的基础知识,提高分析,判断和处理实 际问题的能力,锻炼自己的实际动手能力,增强 自己的团队协作意识,了解计算机专业软件开发 的具体流程,完善了自己的知识结构。为毕业之 后能够更快地进入工作状态并且能够更好地工 作,打好一定的基础。实习要求:能够熟练运用Java,独立设计 和编制一个具有一定难度的、解决实际应用问题 的物流管理系统的应用程序。二系统设计软件系统的总体设计大约要经历可行性分析和项目开发计划,需求分析,概要设
2、计,详细设计,编码,测试以及维护等七个阶段。可行性分析和项目开发计划在前面已经叙述, 下 面所要做的是进行软件需求分析,概要设计和详 细设计。编码过程将在下一章节论述,而测试和维护过程不在本文中叙述。系统需求分析在经过前一阶段的分析之后,我确定了我的 开发课题为仓库物流管理系统。现在所要做的是 要准确定义系统必须做什么以及系统必须具备 的功能。软件需求分析中我采用结构化分析方法(Structured Analysis,简称 SA) ,SA 是面向数据 流进行需求分析的方法,像所有的软件分析方法(如面向对象分析方法、IDEF方法等等)一样, SA也是一种建模活动,它使用简单易读的符号, 根据软件
3、内部数据传递、变换的关系,自顶向下 逐层分解,描绘满足功能要求的软件模型。在系统中我采用数据流图(DFD)这种半形 式化的描述方式表达需求。它是一种功能模型, 以图形的方式描绘数据在系统中流动和处理的 过程,只反映系统必须完成的逻辑功能。它有四 种基本图形符号: t:箭头,表示数据流; 0:圆或椭圆,表示加工;双杠,表示数据存储; 口方框,表示数据的源点或终点。为了表达较为复杂问题的数据处理过程, 用 一张数据流图是不够的,要按照问题的层次结构 进行逐步分解,并以一套分层的数据流图反映这 种结构关系。在这里我一共使用了三层数据流 图,即顶层图,0层图和1层图(也是底层图)。在多层数据流图中,顶
4、层流图仅包含一个加 工,它代表被开发系统,它的输入流是该系统的 输入数据了,输出流是该系统的输出数据;底层 流图是指其加工不需要再做分解的数据流图,中 间层流图表示对其上层父图的细化,它的每一步 加工可能继续细化成子图。经过对系统的分析首先得到系统的顶层DFD,如图 1-1:物流管理员工作人员物品入库、品岀库、物品查询、 物品汇总、 物品扌物品查询、仓库物流管理系统物品报表等物流管理员工作人员图1-1物流管理系统顶层图进一步细化得到系统的0层DFD,如图1-2:统的1层DFD图(略)。在这里只给出有关顶层和0层数据流图,它 们体现出了系统的功能部分,而 1层DFD图暂 略,后面具体说明其内容。
5、通过以上对数据流图 的分析之后,我们已大体地了解了系统的功能和 目标,接下来所要做的就是系统功能模块的划分 和数据库的设计,也就是系统的概要设计。系统概要设计在软件需求分析阶段,搞清楚了软件 做什 么”的问题,形成了目标系统的逻辑模型。现在我们所要做的就是要把软件做什么”的逻辑模型变换为 怎么做”的物理模型,即着手实现软件 的需求。首先,我们需要描述的是系统的总的体 系结构。系统结构设计 系统的概要设计中最重要的就是系统的模 块化。模块化是指解决一个复杂问题时自项向下 逐层把软件系统划分成若干个模块的过程。每个 模块完成一个特定的功能,所有的模块按某种方 法组织起来,成为一个整体,完成整个系统
6、所要 求的功能。将系统划分为多个模块是为了降低软件系 统的复杂性,提高可读性、可维护性,但模块的 划分不能是任意的,应尽量保持其独立性。也就 是说,每个模块只完成系统要求的独立的子功 能,并且与其他模块的联系最少且接口简单,即尽量做到高内聚低耦合,提高模块的独立性,为 设计高质量的软件结构奠定基础。在系统的概要设计中我采用结构化设计(Structure Design,简称 SD), SD 以需求分析 阶段产生的数据流图DFD为基础,按一定的步 骤映射成软件结构。我首先将整个系统化分为几 个小问题,小模块,在系统中,我设计了工作人 员管理,物品类别管理,数据维护管理,物品登 记与物流处理管理,物
7、流情况查询和物流情况汇 总6个模块。然后,进一步细分模块,添加细节。 比如,工作人员管理我又将其分为工作人员注 册、工作人员注销、授权、密码修改、增加照片 等;物品登记与物流处理管理分为物品登记、 进 库、出库、报损等。以下就是系统功能模块图,如图1-3:图1-3系统功能模块图数据库设计在信息世界中,信息从客观事物出发流经数 据库,通过决策机构最后又回到客观世界, 信息 的这一循环经历了三个领域:信息世界,数据世 界,现实世界。现实世界的事物反映到人的头脑 中,人的大脑对它有个认识过程,经过分析(选 择、命名、分类等)进入信息世界。这些信息再 进一步加工、编码,然后进数据世界,而软件系 统的开
8、发工作需要考虑这两个方面的问题,也就 是要考虑系统开发所需要的数据,以及如何对这 些数据进行操作。这两个问题贯穿了整个软件系 统的开发过程,这也就是数据库的设计问题,软 件设计的一个核心。1. E-R图设计在系统设计的开始,我首先考虑的是如何用 数据模型来数据库的结构与语义,以对现实世界 进行抽象。目前广泛使用的数据模型可分为两种 类型,一种是独立于计算机系统的概念数据模型”,如实体联系模型”;另一种是直接面向数 据库逻辑结构的 结构数据模型”。在本系统中我 采用实体联系模型”(E-R模型)来描述数据库 的结构与语义,以对现实世界进行第一次抽象。 E-R模型直接从现实世界抽象出实体类型及实 体
9、间联系,然后用 E-R图来表示数据模型。它 有两个明显的优点:接近于人的思维,容易理解; 与计算机无关,用户容易接受。但 E-R模型只 能说明实体间语义的联系,不能进一步说明详细 的数据结构,它只是数据库设计的第一步。ER图是直观表示概念模型的工具,它有四 个基本成分:矩形框,表示实体类型(考虑问题的对 象)。菱形框,表示联系类型(实体间的联系) 椭圆形框,表示实体类型和联系类型的 属性。对于关键码的属性,在属性名下划一横线。直线,联系类型与其涉及的实体类型之间 以直线连接。本系统为仓库物流管理,主要管理物品的登 记、流通以及种类和工作人员等事项。 仓库根据 需要可以查询物品的信息,同时还需要
10、了解在库 存流通中员工的参与情况。依据物流管理的实际 情况,考虑了多方面的因素以后,确定系统的图1-4工作人员表E-R图图1-7物品种类表E-R图址书 密码 赢权限停坤 联系电话说胡物流粪型经手人日期 说明 记录特征图1-8数据库表关系图在该数据库中,本系统中的物品流通是核 心,也是基本,没有了物品流通其它的也就没有 什么意义了。经手人的添加是考虑到责任问题, 也就是说,在物流管理的实际运用中,出现了责 任不清的现象,特别是由于仓库的进出物品数量 都比较大时产生了一系列问题,所以在设计数据 库时,我特别考虑到这一点,在物品流通表中加 入了经手人。2. 数据库表格设计在完成系统的E-R图之后,需
11、要将E-R模 型转化为关系模型,也就是说,要设计出数据库 所需要的表格。在这里,我选用的是关系数据库。 因为关系数据库中的二维表格可以很清楚地描 述数据之间的联系。根据系统E-R图,针对本系统的特点,在职员ID 姓名 密码联溶电话 侃明 照片对所搜集的数据进行规范化之后,定义了如下四 张表格,分别是工作人员信息表,物品流通信息 表,物品登记信息表和物品种类信息表。 通过对 这四张表格的操作可以较好地完成系统设计的 各项功能,四张表格之间有着不同程度的联系。Xi i字段喀称数据类型说明操作权跟工作人员信息表(图1-9):文主OLE对象曰期/时间图1-9工作人员信息表图工作人员信息表主要用于记录物
12、流管理人员的详细信息,包括职员ID、姓名、密码、操 作权限、停用、联系电话、说明、照片和日期类 型等有关工作人员的各类信息。在该表中职员ID是主键,它是工作人员的 值是登记时自行填写的,它会和经手人相对应 的,体现出物品是经谁的手出入库的。姓名和密 码的值也是登记时自行填写的,但必须要记住。 它们是在用户登陆时用来确定用户和密码的正 确性,以防止非法用户登陆。操作权限则是工作人员在操作系统的时所授权的范围,分为物品登 记、物流处理、物流查询和物流汇总。停用则是 指该注册工作人员是否可以操作本系统。联系电 话、说明和照片则是介绍个人情况的。日期则是 系统当时默认时间的,是不可以修改的。物品流通信
13、息表(图1-10):致培类型二 X说明图1-10物品流通信息表图 物品流通信息表主要用于记录各物品经仓库和物流管理人员的详细信息,包括物流ID、物品ID、物流类型、数量、经手人、日期、说 明和记录特征类型等各类信息。该信息表是数据 库的主表,是不可缺少的。在该表中物流ID是主键,它是记录每一次 物品流动时的唯一编号,不会有重复,而且是计 算机自动编号。物品ID则是记录每一件物品本 身的编号,它跟物流ID是有区别的。数量则是 每次流通数量的多少。而经手人前面已经说过,这里就不在叙述了。日期则是记录当时物流的时 间,是当时的默认时间,是系统给定的。说明是 指记录物品当时的情况或物品的特征的。 记录
14、特 征就很好理解了,就是该操作是否被记录。物流 类型则是记录物品流通的一种形式,包括: “进 库"Or"出库"Or"报损"。值得提出的一点是入 库记录和出库记录的添加不仅仅是单表操作, 由 于它们都与库存记录相联系,所以,无论您是添 中入库记录还是添加出库记录,都必须同时修改 库存记录,以保持数据的一致性,否则将引发系 统出错而这些我都让其在系统中自动完成。 无论 您是添加入库记录,还是添加出库记录,系统都 将自动修改库存中物品的数量, 而且,在您出库 的数量大于库存数量时,系统还会自动提示错字段名11J1L和称刖愉明片 物名类单说照误,这样就
15、可以防止一定错误的发生。 物品登记信息表(图1-11):数据类型图1-11物品登记信息表图 物品登记信息表主要用于记录仓库中各各 物品的详细信息,包括物品ID、名称、类别ID、 单价、说明和照片类型等有关物品的各类信息。在该表中物品ID作为主键,它是管理员每 增加一件物品时,物品ID就会自动为其编上一 个号码。类别ID则是说明该物品属于某一物品 种类的。而名称、单价、说明和照片是介绍物品 本身的信息。物品种类信息表(图1-12):手段名称丨 蜜据类型 I说明S筋类别ic立本_说明衣本II| k图1-12物品种类信息表图物品种类信息表主要用于记录仓库中物品 种类的信息,包括类别ID和说明两个类型
16、的信 息。类别ID是指创建一类物品的种类的称呼。 而说明则是对类别ID进行描述。二.系统实现登录窗体的设计及实现登录界面是一个系统的开始,所以我就从系统的开始进行说明。登录窗体是系统的一个门, 只有通过它才能进入主界面,所以登录界面是非 常关键的。如下图2-1:图2-1登录窗体图该窗体主要是完成职员ID和密码的校对, 所以下面这段代码就是校对职员ID和密码,其 与数据库的链接采用代码来完成。Dim strZylD As String, strMm As Stri ngDim rs As ADODB.RecordsetstrZylD = Trim(txtZylD) strMm = Trim(tx
17、tMm)Set rs = mCdt.rsGZRYDL(strZylD, strMm)'验证用户If rs.EOF The nMsgBox "登录失败!", vbln formati ontxtZylD.SetFocus txtZylD.SelStart = 0 txtZylD.SelLe ngth=Len (txtZylD.Text)ElsegbytZyQX = rs("操作权限") gstrZylD = strZylD gbl nOK = TrueHideEnd If下图2-2是“修改密码窗体”,只有通过鼠 标点击登录窗体中的修改密码键,才能进
18、入其窗 体。图2-2修改密码窗体图其下面代码如上图所示“确定鍵”的代码。'更新密码mCdt.UpdataMmIbIZylD,Trim(txt Ymm), Trim(txtXmm)Un load Me但在修改密码之前一定要解决两个问题,一 是身份验证过程,二是更新密码前调用身份验证 过程。这两点很重要,只有通过这两点,才可以 修改密码。下面是解决这两点的代码程序,如下:Public Fu nctioncheckMm(strZylD AsString, strMm As String) As In teger'身份验证过程On Error Resume NextDim rs As
19、ADODB.RecordsetDim I As In tegerSet rs = mCdt.rsGzry Yzmm(strZylD, strMm)I = rs(0)rs.ClosecheckMm = IEnd Fun cti onPrivate Sub txtYmm_LostFocus()'更新密码前调用身份验证过程If checkMm(lblZylD,txtYmm) = 1The ntxtY mm.E nabled = False txtXmm.E nabled = True cmdOK.E nabled = True txtXmm.SetFocusElseMsgBox "
20、该职员身份或密码验证 无效! ", vblnformationtxtY mm.SetFocusEnd IfEnd Sub系统主窗体的设计及实现系统主窗体的主要设计结构有菜单栏、工具 栏和状态栏三部分。如下图2-3所示:图2-3系统主窗体图为了实现这三部分的功能,就必须赋于它们 相对应功能的代码。下面就列举:显示工作人员登记窗的代码是:Private Sub mnu XtGzrydj_Click()Dim frmNewWin As New frmGZR YDJfrmNewWi n.Show vbModal '显示工 作人员登记窗Set frmNewWin = Nothi ngE
21、nd Sub显示物品类别登记窗的代码是:Private Sub mn uXtWplbdj_Click()Dim frmNewWin As New frmWpzldj frmNewWi n.Show vbModal '显示物 品类别登记窗Set frmNewWin = Nothi ngEnd Sub显示数据维护窗的代码是:Private Sub mnu XtSjwh_Click()Dim frmNewWin As New frmSJWH frmNewWi n.Show vbModal'显示数据维护窗Set frmNewWin = Nothi ngEnd Sub显示打印设置的代码是
22、:Private Sub mnu XtSetPri nt_Click()SetPri ntEnd Sub显示物品登记与物流处理窗体的代码是:Private Sub mnu Wlcl_Click()frmWlcl.SetFocusEnd Sub显示物品流通查询窗体的代码是:Private Sub mnu Wlcx_Click()frmWIcx.SetFocusEnd Sub显示物品流通汇总窗体的代码是:Private Sub mnu Wlhz_Click()frmWIhz.ShowEnd Sub显示或隐藏工具栏的代码是:Private Sub mn uWi ndowToolbar_Click()
23、'显示或隐藏工具栏If mnuWin dowToolbar.Checked The n tbToolBar.Visible = False mnuWin dowToolbar.CheckedFalseElsetbToolBar.Visible = True mnuWin dowToolbar.CheckedTrueEnd IfEnd Sub'显示或隐藏状态栏的代码是:Private Sub mnuWin dowStatusBar_Click()'显示或隐藏状态栏Ifmn uWi ndowStatusBar.CheckedThe nsbStatusBar.Visible
24、= FalsemnuWin dowStatusBar.CheckedFalseElsesbStatusBar.Visible = True mnuWin dowStatusBar.Checked = TrueEnd IfEnd Sub以上就是对菜单栏内各项其功能所编写的 代码。下面是对工具栏所编写的代码。如下:Private Sub tbToolBar_ButtonClick(ByValButton As MSComctILib.Butto n)'选择执行工具栏命令Select Case Butt onn dexCase 1mn uXtGzrydj_ClickCase 2mnu XtW
25、plbdj_ClickCase 3mn uXtSjwh_ClickCase 4mnu Wlcl_ClickCase 5mn uWlcx_ClickCase 6mnu Wlhz_Click Case 7mnu HelpSearch_Click End SelectEnd Sub本界面引用了几个组件,分别是Imagelist , Toolbar , StatusBar , Comm on Dialog 和 MDIForm菜单编辑器。这里我分别介绍一下他们各自的用途。1. Wi ndows窗体ImageList 组件用于在控 件(如 ListView、TreeView、ToolBar、Button
26、和TabControl控件)上显示图像。图像列表使 您能够为一致的单个图像目录编写代码。其下图2-4就是通过该组件对工具栏上的按 键添加图像的。3. Win dows窗体StatusBar 控件用作窗体中的一块区域,通常显示在窗口的底部,应用程序可在该区域中显示各种状态信息。 StatusBar控件可包含状态栏面板,用以显示指 示状态的图标,或一系列指示进程正在执行的动 画图标(如Microsoft Word指示正在保存文档)。其下图2-6就是状态栏的各窗格设置其属 性的对话框。图2-6属性页图4. CommonDialog控件提供一组标准的操作 对话框,进行诸如打开和保存文件,设置打印选 项
27、,以及选择颜色和字体等操作。在应用程序中要使用Com mon Dialog控件, 可将其添加到窗体中并设置其属性。控件所显示 的对话框由控件的方法确定。在运行时,当相应 的方法被调用时,将显示一个对话框或是执行帮 助引擎;在设计时,Com mon Dialog控件是以图 标的形式显示在窗体中。该图标的大小不能改 变。使用指定的方法,Commo nDialog控件能够显示下列对话:方法所显示的对话框ShowOpe n 显示“打开”对话框ShowSave 显示“另存为"对话框ShowColor 显示“颜色”对话框ShowFont显示“字体”对话框ShowPrinter显示"打印
28、"或“打印选 项"对话框ShowHelp调用 Win dows帮助引擎5.菜单编辑器主要是提供了一个设计菜单 的工具。下图2-7就是菜单编辑器对话框。工作人员登记窗体的设计及实现工作人员登记窗体上放置一个 DataList控 件,一个Image控件,一个ListBox控件,四个 TextBox 控件,七个 CommandButton 控件,七 个Label控件和一个CheckBox控件。而数据库 的链接采用代码来完成。其窗体如图 2-8所示:图2-8工作人员登记窗体图该窗体主要是完成工作人员登记的,所以重要完成添加工作人员登记的编码是本窗体。其代码如下:Private Sub cmdAdd_Click()'追加新记录On Error Resume Next rs.AddNew rs("职员ID")="新职员" rs("姓名")="" rs("操作权限")="00000" rs("停用")=Fal
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年中学政治说课稿网
- 2025-2026学年初一上语文期中说课稿
- 2025-2026学年大班剪纸说课稿食物
- 2025-2026学年对联书法说课稿
- 2025-2026学年分子影像学概论说课稿
- 记号笔制造工操作技能测试考核试卷含答案
- 煮糖助晶工岗前基础操作考核试卷含答案
- 化工安全员班组评比竞赛考核试卷含答案
- 体育经纪人安全操作水平考核试卷含答案
- 平板显示膜生产工岗前记录考核试卷含答案
- 第2课 俄国的改革 课件
- 眼科疾病诊疗技术新进展与挑战
- 高校实验室建设项目投标文件
- 创伤性心搏骤停心肺复苏救治专家共识(2025版)完整版 + 损伤控制操作路径
- 2026北京市市政工程设计研究总院有限公司校园招聘笔试历年参考题库
- T∕AOPA 0086-2025 T∕CMSA 0058-2025 低空飞行器起降场地气象监测系统建设要求
- 标准预防知识培训课件
- 《规模化公猪站常温精液生产全过程质控技术规范》征求意见稿
- 2025年中级消防题库试卷及答案
- 内镜室医院感染知识培训课件
- 2025年国家公务员考录《行测》真题及参考答案
评论
0/150
提交评论