物流管理系统论文.docx
- 文档编号:6282671
- 上传时间:2023-01-05
- 格式:DOCX
- 页数:33
- 大小:417.79KB
物流管理系统论文.docx
《物流管理系统论文.docx》由会员分享,可在线阅读,更多相关《物流管理系统论文.docx(33页珍藏版)》请在冰豆网上搜索。
物流管理系统论文
现代物流系统的设计与分析
学号:
0444053
学生姓名:
刘莎
指导教师:
李一
河南司法警官职业学院
信息技术系
2013年4月
摘要
随着市场经济的高速发展,制造业、商业企业逐步接受着第三方物流服务。
越来越多的企业认识到物流企业外包是降低成本、提高服务水平的有效渠道。
物流管理的特点是以客户为核心、构建面向客户的业务流程支持各种形式、各种需求的现在企业中的业务模式。
系统支持多形式客户的数据共享、提高作业效率、监控整个流程、提供完整的货品、进行订单跟踪,并且特别关注对各环节业务的监控及例外情况的监控。
关键词
客户;物流;物流管理系统
目录
引言1
1系统分析2
1.1需求分析2
1.2可行性分析2
2总体设计2
2.1项目规划2
2.2系统功能结构图3
3详细设计3
3.1系统登录设计3
3.2车辆调度安排6
3.3托运申请单管理8
3.4货物托运管理11
3.5在途跟踪管理17
3.6信息查询20
参考文献30
引言
在当今高速发展的信息社会,现代物流行业突飞猛进发展,伴随着我国国民经济连续多年的高速增长,为现代物流发展创造了良好的条件。
目前,我国各类物流企业有14万家左右,展望整个21世纪,可以说现代物流业还将有更大的发展。
在发达国家,物流理论促使物流实践快速发展。
经济全球化及现代物流业发展的系统化、信息化、仓储运输的现代化和综合化等趋势,对我国物流业的发展提出了全方位的挑战。
传统物流行业的操作模式已经不适应现代的物流行业,如何缩短物流过程,降低产品库存,加速对市场的反应,这是所有企业所面对的问题。
本系统就是针对这些问题根据中小型企业的实际需求而开发的一套物流管理系统。
系统的开发能够帮助企业实现对物流全过程的优化调度和动态控制,高效整合企业的物流业务,以全面提高经济效益和效率为目的,提供高效、实用、技术的物流管理系统和运营手段。
物流管理系统是集现代运输、仓储配送、搬运、调度、跟踪为一体的网络系统,系统的开发实现了商品从原料供应商、制造商、分销商到零售商再到消费者的各个环节的有机结合。
1.系统分析
1.1需求分析
通过市场调查,要求本系统具有以下功能:
统一友好的操作界面,能保证系统的易用性。
规范、完善的基础信息设置。
灵活的报表设计及打印功能。
实现货物申请、托运、跟踪与验收的全过程。
全方位的信息查询功能。
系统日志详细记录各种操作,提供追查的有力依据。
完善的权限管理,增强系统的安全性。
强大的数据备份及恢复功能,保证系统数据的安全性。
1.2可行性分析
由于传统物流行业操作过程复杂,手续繁多,业务信息多,围绕这些信息的处理也很纷杂。
而且,物流行业竞争激烈,这种竞争,一方面表现在发展客户的市场开拓上,另一方面也存在于收集处理信息的速度、广度和深度,以及在业务操作中对业务数据处理的准确性和严密性,而更高层次上,还牵涉到公司决策层对整体业务的控制和协调。
物流管理系统从物流行业的实际需求出发,参照先进的物流理念和多家领先的物流公司实际的运营流程开发而成,系统从完善的基础信息设置到货物的托运管理、在线跟踪,信息查询、到最后各种报表的生成,清晰的业务流程,使操作人员能够按照流程清晰的进行实际的操作,保证物流运作有序而高效的进行。
2总体设计
2.1项目规划
物流管理系统是一个典型的数据库管理系统,系统由基本信息设置、货物托运管理、信息查询、报表管理、系统管理等模块组成,规划系统功能模块如下:
基本信息设置模块
该模块主要负责完成部门资料设置、职务信息设置、公司资料设置、员工资料设置、客户资料设置、司机资料设置和车辆资料设置。
货物托运管理模块
该模块主要由车辆调度安排、托运申请单管理、货物托运单管理、货物验收单管理和车辆配送跟踪记录单管理几部分组成。
信息查询模块
该模块由货物申请单查询、车辆调度信息查询、货物托运信息查询、货物托运验收查询和车辆在途跟踪查询几部分组成。
报表管理模块
包括货物申请单报表、货物托运单报表和货物验收单报表3部分。
系统管理模块
包括查看日志、删除日志、用户管理、数据备份、数据恢复和系统数据清理几部分。
2.2系统功能结构图
物流管理系统的系统功能结构图如图1所示。
图1系统功能结构图
3详细设计
3.1系统登录设计
系统登录主要用于对登录物流管理系统的用户进行安全性检查,以防止非法用户登录该系统。
根据给管理员分配的权限,登录用户可以根据自己所具有的权限操作系统中相应的功能。
在登录系统时验证操作员及其密码,主要通过ADO控件中记录集(RecordSet)对象结合If语句判断用户选定的操作员及其输入的密码与数据库中的操作员和密码是否相同来实现,如果相同则允许登录,并给予相应的权限,否则将不允许用户登录。
系统登录的运行结果如图2所示。
图2系统登录窗体的运行结果
1.窗体设计
(1)在工程中新建1个窗体,将窗体的名称设置为“frm_xtdl”,BorderStyle属性设置为“0-None”,通过设置Picture属性为窗体添加图片。
(2)在窗体上添加Adodc控件,由于该控件属于ActiveX控件,在使用之前必须从“部件”对话框中添加到工具箱。
添加方法如下:
在“工程”/“部件”对话框中勾选“MicrosoftAdoDataControls6.0(SP4)”列表项,单击【确定】按钮之后即可将Ado控件添加到工具箱当中。
(3)在窗体中添加1个ComboBox控件和文本框控件,分别设置名称为Name属性为“Cbx_Name”和“txt_Password”,设置BorderStyle属性为“0-None”,将ComboBox控件的Text属性设置为“MR”。
(4)在窗体中添加2个CommandButton控件,分别将Name属性设置为“Cmd_Ok”和“Cmd_Cancel”,Caption属性设置为“登录”和“取消”。
登录窗体的设计结果如图3所示
图3系统登录窗体的设计界面
2.代码设计
在代码窗口的声明部分定义如下变量:
DimitmXAsListItem'定义一个ListItem对象
DimkeyAsString'定义字符串变量
在窗体装载事件中,通过ADO控件的ConnectionString属性建立数据库连接,同时将所有操作员的姓名添加到Cbx_Name控件当中,代码如下:
PrivateSubForm_Load()
CallWHScreen'调用获取屏幕分辨率的过程函数
'使用代码连接数据库与数据表
Adodc1.ConnectionString=PublicStr
Adodc1.RecordSource="select*fromtb_user"
Adodc1.Refresh
IfAdodc1.Recordset.RecordCount>0Then
Adodc1.Recordset.MoveFirst
Cbx_Name.Clear'在添加数据时,首先清空控件中的内容
DoWhileAdodc1.Recordset.EOF=False'将操作员信息添加到ListView控件当中
Cbx_Name.AddItem(Adodc1.Recordset.Fields("user_name"))
Adodc1.Recordset.MoveNext
Loop
EndIf
IfTWidth<=800OrTHeigth<=600Then'判断屏幕分辨率的大小
ExitSub
Else
ChangeScreen'调整屏幕分辨率
EndIf
EndSub
单击【确定】按钮,如果输入的操作员姓名和口令正确,则通过身份验证,登录到系统当中。
设计思路:
通过SQL语句查询输入的用户名和密码信息在数据库中是否存在,如果查询到符合条件的记录信息则显示系统主窗体,登录到系统当中,实现的程序代码如下:
PrivateSubCmd_Ok_Click()
DimMPasswordAsString
IfCbx_Name.Text="MR"AndTxt_Password.Text="mingrisoft"Then'判断是否使用的是超级口令登录
Frm_Main.StatusBar1.Panels.Item
(2).Text="当前操作员:
MR"
Name1=Cbx_Name.Text'将操作员姓名信息赋予全局变量Name1
UnloadMe
Frm_Main.Show'显示系统主窗体
Else
Adodc1.RecordSource="select*fromtb_userwhereuser_name='"&Cbx_Name.Text&"'"
Adodc1.Refresh
IfAdodc1.Recordset.RecordCount>0Then
MPassword=Adodc1.Recordset.Fields("user_mm")
IfTxt_Password.Text=MPasswordThen'判断数据的密码是否正确
Name1=Cbx_Name.Text
Frm_Main.StatusBar1.Panels.Item
(2).Text="当前操作员:
"+
Adodc1.Recordset.Fields("user_name")
Frm_Main.Show'通过身份验证则显示主窗体,登录到系统当中
UnloadMe
Else
MsgBox"密码不正确,请您确认后重新输入",,"提示信息"
Txt_Password.Text=""
Txt_Password.SetFocus
EndIf
Else
MsgBox"对不起没有此用户的信息",,"提示信息"
Cbx_Name.Text=""
Txt_Password.Text=""
EndIf
EndIf
EndSub
如果在输入密码的文本框中按下〈Enter〉键,则将调用【确定】按钮的单击事件,判断登录用户是否合法,代码如下所示。
PrivateSubTxt_Password_KeyDown(KeyCodeAsInteger,ShiftAsInteger)
IfKeyCode=13Then
CallCmd_Ok_Click'调用确定按钮的单击事件代码
EndIf
EndSub
3.2车辆调度安排
车辆调度安排是物流管理过程中的重要环节,物流公司在接到托运货物信息之后,首要的问题是安排托运货物的车辆。
在本系统当中通过车辆调度安排填写安排托运车辆的信息,然后打印出车辆调度通知单,并将通知单发放到托运司机的手中,司机根据调度通知单上的信息执行托运任务。
通过单击窗体中的Cmd_Select按钮选择车牌号码,然后输入其他一些辅助的信息,最后保存车辆调度安排信息。
车辆调度安排模块的运行结果如图4所示。
图4车辆调度安排窗体的运行结果
1.窗体设计
(1)在工程中新建1个窗体,将窗体的名称设置为“frm_Cldd”,BorderStyle属性设置为“1-FixedSingle”,MaxButton属性设置False。
(2)在窗体上添加1个Toolbar控件和1个ImageList控件。
(3)在窗体的Toolbar控件上单击鼠标右键,在弹出的快捷菜单中选择“属性”项,在弹出的“属性页”对话框中设置窗体的工具栏,设计完成的工具栏如图5所示。
(4)在窗体中添加1个Frame控件,在Frame控件上添加1个文本框控件数组,并为每个文本框控件
配置1个标签控件,并且设置相应的Caption属性值,如图5所示。
(5)在窗体上添加1个DTPicker控件,命名为DT1,用于输入或显示托运司机执行任务的日期时间。
(6)在窗体上添加1个Ado控件和1个DataGrid控件,将DataGrid控件的名称设置为Dgr_Sjll,DataSource属性设置为Adodc1,AllowUpdate属性值设置为False。
(7)在窗体中添加1个标签控件,命名为Lbl_Num。
(8)在窗体上添加1个时钟控件Timer1,在属性窗口中将控件的Interval属性值设置为60。
车辆调度安排窗体的设计结果如图5所示。
图5车辆调度安排窗体的设计结果
2.代码设计
工具栏中的控制按钮控制着窗体的各项操作,在Toolbar控件Tbr_xxcz的ButtonClick事件当中,通过选择SelectCase语句的索引值(单击工具栏中的按钮执行相应的索引值)调用相应的过程来完成添加、删除、修改和保存等操作的功能,保存过程事件的代码如下:
PrivateSubSaves()'保存信息的过程
IfText1(0).Text=""OrText1(3).Text=""Then
MsgBox"重要信息不能为空值",48,"提示信息"
Else
AdoRs.Open"select*fromtb_Goods_clddwherecldd_cphm='"+
Text1(0).Text+"'",Cnn,adOpenKeyset
IfAdoRs.RecordCount>0Then
MsgBox"该信息已经存在",48,"提示信息"
AdoRs.Close'关闭记录集对象
Else
AdoRs.Close'关闭记录集对象
c=MsgBox("确认保存信息吗",33,"提示信息")
Ifc=vbOKThen
SetAdoRs=Cnn.Execute("insertintotb_Goods_clddvalues('"&Txt_id&"','"&Text1(0)&
"','"&Text1
(1)&"','"&Text1
(2)&"','"&Text1(3)&"','"&Str(DT1.Value)&"','"&Text1(4)
&"','"&Text1(5)&"','"&Txt_bz&"')")
MsgBox"数据保存成功",64,"提示信息"
Else
EndIf
Adodc1.RecordSource="select*fromtb_Goods_clddorderbycldd_id"
Adodc1.Refresh
CallDBGCon
EndIf
CallTbr_cortrol(Tbr_xxcz,True)
EndIf
EndSub
用户自定义修改信息过程事件的代码如下:
PrivateSubEdits()'修改信息的过程
c=MsgBox("确认修改信息吗",33,"提示信息")
Ifc=vbOKThen
SetAdoRs=Cnn.Execute("UPDATEtb_Goods_clddSETcldd_id='"+Txt_id
+"',cldd_cphm='"+Text1(0)+"',cldd_czxm='"+Text1
(1)+"',cldd_sjxm='"
+Text1
(2)+"',cldd_rwsj='"+Str(DT1.Value)+"',cldd_phmc='"+Text1(4)
+"',cldd_shdd='"+Text1(5)+"',cldd_bz='"+Txt_bz+"'wherecldd_id='"
+Txt_id.Text+"'")
MsgBox"数据修改成功",64,"提示信息"
Adodc1.RecordSource="select*fromtb_Goods_clddorderbycldd_id"
Adodc1.Refresh
StrId=Txt_id.Text
StrTitle=Text1(0).Text
CalljoinRZ'添加修改信息日志
CallDBGCon
Else
EndIf
EndSub
用户自定义删除信息过程事件的代码如下:
PrivateSubDeletes()'删除信息
c=MsgBox("确认删除该信息吗",17,"提示信息")
Ifc=vbOKThen
OnErrorResumeNext'执行错误处理
SetAdoRs=Cnn.Execute("Deletetb_Goods_clddfromtb_Goods_clddwhere
cldd_id='"+Txt_id.Text+"'")
Adodc1.Refresh'刷新数据信息
EndIf
Fori=0To5
Text1(i).Text=""
Nexti
Txt_bz.Text=""
EndSub
3.3托运申请单管理
在正式托运货物之前,需要进行托运货物申请,在进行托运货物申请时需要填写托运货物申请单,托运申请单经过核对之后,才可以填写货物托运单进行托运货物。
在托运申请单中记录的托运货物的详细信息,以便托运货物时进行核对。
货物托运申请管理模块的运行结果如图6所示。
图6货物托运申请管理模块运行结果
1.窗体设计
(1)在工程中新建1个窗体,将窗体的名称设置为“frm_Tysq”,BorderStyle属性设置为“1-FixedSingle”,MaxButton属性设置“False”。
(2)在窗体上添加1个Toolbar控件和1个ImageList控件,为窗体设计工具栏。
(3)在窗体中添加1个Frame控件,在Frame控件上添加1个文本框控件数组,并为每个文本控件配置1个标签控件,设置相应的Caption属性值,如图7所示。
(4)在Frame控件上添加2个DTPicker控件,分别名称命名为DT1和DT2,用于输入或显示出货日期时间和开票日期。
(5)在窗体上添加1个Ado控件。
(6)在窗体中添加1个标签控件,命名为Lbl_Num。
(7)在窗体上添加1个时钟控件Timer1,在属性窗口中将控件的Interval属性值设置为60。
货物托运申请单管理窗体的设计结果如图7所示。
图7货物托运管理窗体的设计结果
2.代码设计
当窗体启动时,锁定窗体中文本框,禁止输入字符信息,同时通过Ado控件的ConnectionString属性连接到数据库,实现代码如下:
PrivateSubForm_Load()
CallLoadFile'在窗体加载的时候显示数据信息
Fori=1To20
Text1(i).Locked=True'锁定文本框,禁止输入字符信息
Nexti
Adodc1.ConnectionString=PublicStr'通过代码连接到数据库
Adodc1.RecordSource="select*fromtb_Goods_sqdorderbysqd_lszh"
Adodc1.Refresh
DT1.Value=Date
CallTbr_cortrol(Tbr_xxcz,True)
EndSub
单击窗体中的工具栏按钮,完成相应的添加、删除、修改、保存和打印的操作,Toolbar控件Tbr_xxcz的ButtonClick事件代码如下所示:
PrivateSubTbr_xxcz_ButtonClick(ByValButtonAsMSComctlLib.Button)
SelectCaseButton.Index
Case1'添加信息
CallTbr_cortrol(Tbr_xxcz,False)
Fori=0To20
Text1(i).Locked=False
Text1(i).Text=""
Nexti
Text1(0).SetFocus
AdoRs.Open"select*fromtb_Goods_sqdwheresqd_lszhlike'%"+Format(Date,"yyyymmdd")+"%'orderbysqd_lszh",Cnn,adOpenKeyset'根据日期产生流水账号
IfAdoRs.RecordCount>0Then
AdoRs.MoveLast
Txt_id.Text=Val(AdoRs.Fields("sqd_lszh"))+1
Else
Txt_id.Text=Format(Date,"yyyymmdd")&"0000001"
EndIf
AdoRs.Close
Case2'删除信息
CallDeletes
Case3'修改信息
CallEdits
Case4'保存信息
CallSaves
Case5
CallTbr_cortrol(Tbr_xxcz,True)
Fori=1To20
Text1(i).Text=""
Text1
(1).SetFocus
Nexti
Case6'打印信息
UnloadMe
EndSelect
EndSub
通过文本框的Change事件,来实现在另一个文本框中自动计算合计金额的功能,实现的具体代码如下所示:
PrivateSubText1_Change(IndexAsInteger)
IfIndex=7Then
Text1(15).Text=Val(Text1(7).Text)+Val(Text1(11).Text)
ElseIfIndex=11Then
Text1(15).Text=Val(Text1(7).Text)+Val(Text1(11).Text)
ElseIfIndex=15Then
Text1(15).Text=Val(Text1(7).Text)+Val(Text1(11).Text)
EndIf
EndSub
3.4货物托运管理
货物托运管理是本系统的核心,在货物托运申请完成之后,就可以填写货物托运单,托运司机根据货物托运单将货物托运到客户手中。
对于同一张货物托运单,可以托运多种不同的货物,在托运管理窗体中可以添加或删除托运货物,还可以通过ListView控件浏览货物托运单信息。
货物托运管理模块的运行结果如图8所示,单击工具栏中的【添加货物】按钮,将弹出增加托运货物窗体,如图9所示。
图8货物托运管理模块的运行结果
图9增加托运货物窗体
1.货物托运窗体及增加托运货物窗体的设计
(1)在工程中新建一个窗体,将窗体的名称设置为“frm_Hpty”,BorderStyle属性设置为“1-FixedSingle”,MaxButton属性设置False。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 物流 管理 系统 论文