2022年货运站货场信息管理系统 .pdf
货运站货场信息管理系统一、概述随着经济全球化的加快和中国经济的腾飞,我国铁路运输业取得了巨大的发展。而货场是铁路货运站最基本的作业场所之一,工人数量多,作业任务重,作业种类多。而随着信息科技的发展, 传统的管理模式逐渐被信息化及数字化的管理模式所取代,如何用先进的管理手段,提高货场的管理水平,已成为货运站货场的当务之急。面对信息时代的机遇和挑战,用科技手段提高货场管理水平无疑是一条行之有效的途径。货运站货场信息管理系统的开发充分利用了信息技术和电脑技术,提高了货运站货场的管理水平、服务水平。系统实现了货场计划管理、货场作业管理、货场设备管理、货场安全管理、客户服务管理,并拥有查询、录入、修改、打印等功能。该系统主要服务于货运站货场工作人员, 除此之外也设置客户服务管理,来满足客户对货运信息的查询及对货物运输的反馈,更加丰富了货运站货场信息管理系统的内容,拓宽了使用范围。二、需求分析铁路货场是铁路运输企业面向社会办理货物运输业务的窗口和货物起止的集散地。为了安全、方便、快捷地运送货物,经济合理地利用铁路货场设备,充分发挥货场的作业能力,必须加强货场管理,从而实现货场作业标准化、管理科学化、服务文明化。目前, 一些铁路货运站虽然采用电脑工作,但是多数统计报表仍由人工处理,信息在不同实体之间没有实现共享,造成大量重复劳动。由于车站作业岗位多,实行手工登记装卸信息,使经常处于繁忙状态,导致其他作业点一直等待上报数据,造成时间浪费;而且手工登记容易出错,并且无法追查错误原因,作业效率低下。在此基础上,通过设计开发货运站货场信息管理系统,实现货运集中管理,信息高度共享,提高工作质量和工作效率。三、系统设计系统功能本系统功能模块分为:货场计划管理、货场作业管理、货场设备管理、货场安全管理、客户服务管理。 客户的操作权限仅限使用客户服务管理功能模块及修改密码,管理员操作权限可使用除客户服务管理和系统初始化全部功能模块,超级管理员可使用所有功能。1货场计划管理:月计划查询及打印、运单查询及打印、货源信息查询;2货场作业管理:货场出车查询、装卸车作业查询;3货场设备管理:货区查询、货位查询、装卸机械查询、篷布使用查询;4货场安全管理:货运事故查询;货运事故报告打印5客户服务管理:信息查询、服务评价;6系统管理:初始化系统、修改密码、数据备份、数据恢复、退出。本系统共分6 大部分、 20 个完整的功能模块。系统结构图如图1 所示。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 22 页图 1 货运站货场信息管理系统功能结构四、主要功能模块设计数据库表设计1创建一个标准项目,名称为货运站货场信息管理系统。2 在项目管理器下创建一个数据库,名称为 datebase,在数据库中创建以下数据库表:czqx操作权限 、fwpj 服务评价 、hccc货场出车 、hcsg货场事故 、hqhw货区货位 、pbgl篷布管理、hwyd货物运单 、yjh月计划、zxc 装卸车、zxjx 装卸机械 ,创建完成后输入数据。具体内容见附录一。表单设计设计的表单有登陆、服务评价、货场出车查询、货场事故查询、货区查询、货位查询、货物运单查询、货源信息查询、客户货物信息查询、篷布使用查询、数据备份、数据恢复、系统初始化、修改密码、月计划查询、装卸车查询、装卸机械查询。登陆界面设计图 2 登录界面设计图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 22 页用户进入系统前,必须通过登录进入主程序界面,登录界面主要用于确认用户的身份及使用权限,并且可对系统信息起到保密作用。系统登录界面如图2 及图 3 所示图 3 登录界面运行图1表单设计在货运站货场信息管理系统项目中,添加一个新表单,名称为“登陆”。在表单中添加Text控件、 Label 控件、 Command 控件、 Image 控件。重要控件属性:Text2 的 PasswordChar属性设为“ *”2代码设计在“登陆 L”按钮的 Click 事件中添加以下代码实现判断密码是否正确的功能。如果密码不正确,将提示密码不正确。locate for alltrim(czqx. 用户名 )= alltrim(thisform.text1.value); and alltrim(czqx. 密码 )= alltrim(thisform.text2.value) if !eof() =messagebox( 欢送您使用! ,货运站货场信息管理系统) else =messagebox(密码不正确 ) thisform.text2.value= endif 在“退出 Z”按钮的Click 事件中添加以下代码:Quit 在“ image1”图片的Click 事件中添加以下代码:thisform.text1.value= 客户 在“ image2”图片的Click 事件中添加以下代码:thisform.text1.value= 管理员 在“ image3”图片的Click 事件中添加以下代码:thisform.text1.value= 超级管理员 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 22 页系统初始化设计系统初始化会清空所有记录,在执行此操作之前,系统会自动备份数据到默认备份目录下,以防数据丧失。系统初始化界面如图4 及图 5。图 4 系统初始化界面设计图图 5 系统初始化界面运行图1表单设计在货运站货场信息管理系统项目中,添加一个新表单,名称为“系统初始化”。在表单中添加shape 控件、 Label 控件、 Command 控件。2代码设计在“初始化F”按钮的Click事件中添加以下代码实现系统初始化的功能。private outpath a=messagebox(确定要执行初始化操作吗?,32+4, 系统提示 ) if a=6 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 22 页a=messagebox(初始化会清空所有数据,继续吗?,32+4,系统提示 ) if a=6 close all database outpath = if directory(sys(5)+sys(2003)+bak)=.f. MKDIR sys(5)+sys(2003)+bak endif if file( 系统设置 .Rtt)=.t. handle=fopen(系统设置 .Rtt,2) m=1 do while feof(handle)=.f. mystr=fgets(handle) if m=7 outpath=mystr endif m=m+1 enddo fclose(handle) if empty(outpath)=.t. outpath =sys(5)+sys(2003)+bak endif else outpath =sys(5)+sys(2003)+bak endif mypath= Mypath=sys(5)+sys(2003)+data datepath=sys(5)+sys(2003)+dataDataBase wait windows 正在准备备份数据thisok=thisform.rainbak1.bak(mypath,outpath) if thisok=.t. wait windows 正在准备初始化thisform.rainfunction1.dateformat(datepath) else messagebox(初始化失败! ,16,系统提示 ) return endif jmpath=alltrim(outpath)+ thisform.lockdatebase1.lock(jmpath, 正在加密备份文件.) wait windows 正在删除其它设置文件if file( 系统设置 .Rtt)=.t. dele file ( 系统设置 .RTT) endif if file ( 检测 .RBT)=.t. dele File( 检测 .RBT) 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 22 页endif messagebox(系统初始化完成!,32,系统提示 ) ENDIF ENDIF 在“退出 E”按钮的Click事件中添加以下代码:修改密码设计通过本功能, 用户可以修改自己的登陆密码,保证自身账户的安全性。修改密码界面如图 6 及图 7。图 6 修改密码界面设计图图 7 修改密码界面运行图1表单设计在货运站货场信息管理系统项目中,添加一个新表单,名称为“修改密码”。在表单中添加Label 控件、 Command 控件。2代码设计精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 22 页t1=alltrim(thisfor 。m.text1.value)t2=alltrim(thisform.text2.value)t3=alltrim(thisform.text3.value)t4=alltrim(thisform.text4.value)use czqxdo casecase t1=客户 if t2=111if t3=t4 update czqz set 密码=t3 where 编号 =1elsemessagebox(新密码输入不一致!,48, 操作失败! )endifelsemessagebox(原密码输入错误!,48,操作失败! )endifcase t1=管理员 if t2=222if t3=t4 update czqz set 密码=t3 where 编号 =2elsemessagebox(新密码输入不一致!,48, 操作失败! )endifelsemessagebox(原密码输入错误!,48,操作失败! )endifcase t1=超级管理员 if t2=333if t3=t4 update czqz set 密码=t3 where 编号 =3elsemessagebox(新密码输入不一致!,48, 操作失败! )endifelsemessagebox(原密码输入错误!,48,操作失败! )endif在“退出”按钮的Click 事件中添加以下代码:数据备份设计数据备份可以将数据保存到其他位置,当由于某些意外原因而发生数据无法使用时,可以利用数据恢复进行恢复,以减少意外所带来的损失。数据备份界面如图8 及图 9。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 22 页图 8 数据备份界面设计图图 9 数据备份界面运行图1表单设计在货运站货场信息管理系统项目中,添加一个新表单,名称为“数据备份”。在表单中添加shape 控件、 Label 控件、 Command 控件。2代码设计在“备份 B”按钮的 Click事件中添加以下代码实现数据备份的功能。close all database private outpath mypath= Mypath=sys(5)+sys(2003)+data outpath=alltrim(thisform.text1.value) thisform.rainbak1.bak(mypath,outpath) JMPath=alltrim(outPath)+ 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 22 页thisform.Lockdatebase1.lock(JmPath, 正在加密备份文件.) messagebox(备份完成! ,32,系统提示 ) 在“退出 E”按钮的Click事件中添加以下代码:数据恢复设计数据备份可以将数据保存到其他位置,当由于某些意外原因而发生数据无法使用时,可以利用数据恢复进行恢复,以减少意外所带来的损失。数据恢复界面如图10 及图 11。图 10 数据恢复界面运行图图 11 数据恢复界面运行图1表单设计在货运站货场信息管理系统项目中,添加一个新表单,名称为“数据恢复”。在表单中添加shape 控件、 Label 控件、 Command 控件。2代码设计在“恢复 R”按钮的Click事件中添加以下代码实现数据备份的功能。close all database 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 22 页private outpath mypath= Mypath=alltrim(thisform.text1.value) outpath=sys(5)+sys(2003)+data thisform.rainbak1.bak(mypath,outpath) thisform.Lockdatebase1.lock(sys(5)+sys(2003)+dataDataBase.dbc, 正在解密 .) messagebox(数据恢复成功!无需要重新运行程序,可以直接使用! ,32, 系统提示 ) 在“退出 E”按钮的Click事件中添加以下代码:月计划查询设计查询月度运输计划,包括货物重量、体积、车种及始发终到地点等内容。月计划界面如图 12 及图 13。图 12 月计划查询界面设计图图 13 月计划查询界面运行图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 10 页,共 22 页1表单设计在货运站货场信息管理系统项目中,添加一个新表单,名称为“月计划查询”。在表单中添加combo 控件、Label 控件、 Commandgroup 控件、 shape 控件、 Grid 控件。在表单中添加数据环境,数据环境为。2代码设计在“查询”按钮的Click 事件中添加以下代码实现查询月计划的功能。cif=alltrim(thisform bo1.displayvalue) ctext=alltrim(thisform.text1.value) if empty(ctext) messagebox(请输入查询条件!,48,操作失败! ) else select *; from datebase!yjh; where &cif.=alltrim(thisform.text1.value) ; order by 货物名称 ; into cursor linquery thisform.grid2.recordsource=linquery endif 在“退出”按钮的Click 事件中添加以下代码:其他如货场出车查询、货场事故查询、货区查询、货位查询、货物运单查询、货源信息查询等查询在界面设计及代码设计上基本一致,以下不再赘述。其他见附录二。月计划录入设计录入月度运输计划,包括货物重量、体积、车种及始发终到地点等内容。月计划录入界面如图 14 及图 15。图 14 月计划录入界面设计图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 11 页,共 22 页图 15 月计划录入界面运行图1表单设计在货运站货场信息管理系统项目中,添加一个新表单,名称为“月计划录入”。在表单中添加Label 控件、 Commandgroup 控件、 text 控件、 shape 控件。2代码设计在“保存”按钮的Click 事件中添加以下代码实现月计划录入的功能。t1=alltrim(thisform.text1.value) t2=alltrim(thisform.text2.value) t3=alltrim(thisform.text3.value) t4=alltrim(thisform.text4.value) t5=alltrim(thisform.text5.value) t6=alltrim(thisform.text6.value) t7=alltrim(thisform.text7.value) t8=alltrim(thisform.text8.value) t9=alltrim(thisform.text9.value) t10=alltrim(thisform.text10.value) t11=alltrim(thisform.text11.value) t12=alltrim(thisform.text12.value) insert into yjh ( 货物名称 ,日均车 ,静载重 t每车 ,车数 ,运价吨公里 ,发送吨 ,始发站 ,终到站 ,日期,车种 ,货源地 ,备注 ) ; values(t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12) 在“退出”按钮的Click 事件中添加以下代码:服务评价与月计划录入在界面设计及代码设计上基本一致,以下不再赘述。报表设计运单打印设计打印货物运单,包括委托方、收货方、货物名称、重量及始发目的地等内容,并统计总重量。运单打印界面如图16 及图 17。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 12 页,共 22 页图 16 运单打印界面设计图图 17 运单打印界面运行图1在货运站货场信息管理系统项目中,添加一个新报表,名称为“运单打印”。2在表单中添加Label 控件、字段控件。3在表单中添加数据环境,数据环境为hwyd.dbf。货场事故打印与运单打印在界面设计及控件设计上基本一致,以下不再赘述。菜单设计1在货运站货场信息管理系统项目中,添加一个新菜单,名称为“mainmenu ” 。2按照功能模块结构依次输入子菜单和命令,命令有三种,分别是quit退出、do form 表单名和report form 报表名 .frx preview 。3根据权限要求在跳过设置跳过条件,依靠定义全局变量实现。具体菜单界面见图18、19、20。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 13 页,共 22 页图 18 客户使用权限界面运行图图 19 管理员使用权限界面运行图图 20 管理员使用权限界面运行图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 14 页,共 22 页主程序设计主程序是整个系统运行的第一步,主程序可以设置全局变量、运行界面属性、 调用登陆界面和菜单等,所以,设计主程序对设计数据库系统至关重要。public x use czqx x=alltrim(czqx. 编号 ) clear screen _=-10000 do form 表单 登陆_=货运站货场信息管理系统 do _=0 read events 五、结束语货运站货场信息管理系统的应用能够实现货场基础设备及生产作业资源化管理,货运指挥人员可以实时掌握货场的作业车分布、月计划、 货区货位、 装卸工作、装卸设备等资源和计划的变化和利用情况,最大程度提高货物运输的工作质量和工作效率。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 22 页附录一 :原始数据库表表 1 月计划 .DBF数据库表结构序号字段名称字段类型字段宽度小数位数索引1货物名称字符型10升序2日均车数值型1003静载重 t/ 车数值型804车数数值型305运价吨公里数值型826发送吨数值型807终到站字符型108始发站字符型109日期日期时间型810车种字符型1011货源地字符型1012备注备注型4表 2 货物运单 .DBF数据库表结构序号字段名称字段类型字段宽度小数位数索引1货运编号字符型10升序3收货方字符型105收货人字符型157收货方地址字符型408货物名称字符型109件数数值型4010重量 t数值型8011体积 M数值型8012运费数值型8013始发地字符型2014目的地字符型2016收货时间日期时间型817备注备注型4表 3 货区货位 .DBF数据库表结构序号字段名称字段类型字段宽度小数位数索引1货物名称字符型10升序2品类字符型103货区字符型204货位字符型205重量 t数值型806体积 M数值型807占货位比例数值型848货位占货区比例数值型849货位利用率数值型8410备注备注型4精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 16 页,共 22 页表 4 装卸机械 .DBF数据库表结构序号字段名称字段类型字段宽度小数位数索引1机械名称字符型20升序2数量数值型203可用数量数值型204报修数量数值型205适用范围字符型406备注备注型4表 5 篷布管理 .DBF数据库表结构序号字段名称字段类型字段宽度小数位数索引1篷布种类字符型20升序2数量数值型403可用数量数值型404报修数量数值型405适用范围字符型406备注备注型4表 6 货场事故 .DBF数据库表结构序号字段名称字段类型字段宽度小数位数索引1事故编号字符型10升序2事故等级字符型13事故种类字符型44损失款额数值型1005赔偿款额数值型10706事故原因字符型1007备注备注型4表 7 服务评价 .DBF数据库表结构序号字段名称字段类型字段宽度小数位数索引1货运编号字符型10升序2运输速度字符型103货物有无损坏字符型104运价水平字符型205其他说明字符型1006备注备注型4表 8 装卸车 .DBF数据库表结构序号字段名称字段类型字段宽度小数位数索引1货运编号字符型10升序2股道现在车数值型8升序3装卸车数量数值型84装卸车时间日期时间型85装卸车地点字符型206备注备注型4精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 17 页,共 22 页表 9 货场出车 .DBF数据库表结构序号字段名称字段类型字段宽度小数位数索引1货运编号字符型10升序2出车时间日期时间型83出车内容字符型204出车数量数值型85备注备注型4表 10 操作权限 .DBF数据库表结构序号字段名称字段类型字段宽度小数位数索引1用户名字符型10升序2密码字符型103编号字符型74备注备注型4精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 18 页,共 22 页附录二:其他功能模块运行界面图 21 运单查询你界面运行图图 22 货运事故打印界面运行图图 23 货源信息查询界面运行图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 19 页,共 22 页图 24 货场出车查询界面运行图图 25 装卸车查询界面运行图图 26 货区查询界面运行图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 20 页,共 22 页图 27 货位查询界面运行图图 28 装卸机械查询界面运行图图 29 篷布使用查询界面运行图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 21 页,共 22 页图 30 货运事故查询界面运行图图 31 信息查询界面运行图图 32 服务评价界面运行图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 22 页,共 22 页