《物流信息系统》课程设计报告 物流管理专业
3.4信息录入模块设计
信息录入模块包括快件接收录入、快件派送录入、快件中转录入和客户投诉录入等板块。
图3-8 快件派送录入界面
图3-9 快件接收录入
23
《物流信息系统》课程设计报告 物流管理专业
图3-10 快件中转录入
图3-11客户投诉录入
3.5信息统计模块设计
信息统计模块包括快件接收统计、快件派送统计、快件中转统计、客户投诉统计和大客户运量统计等板块。其中未派送统计是多表联系查询统计。
派送统计:主要负责功能是统计在某一段时间内的派送的物品的重量和派送费用并且有相应的打印模块可以打印报表。
相应的主要代码:
procedure Ttj_paisong.BitBtn1Click(Sender: TObject); begin
if self.DateTimePicker1.Date>self.DateTimePicker2.Date then begin
messagebox(self.Handle,'起始日期不能大于终止日期','提示信息',mb_iconinformation);
Exit;
24
《物流信息系统》课程设计报告 物流管理专业
end;
dm.search1.Close;
dm.search1.Parameters.ParamByName('date1').Value:=formatdatetime('yyyy-mm-dd',self.DateTimePicker1.Date );
dm.search1.Parameters.ParamByName('date2').Value:=formatdatetime('yyyy-mm-dd',self.DateTimePicker2.Date );
dm.search1.Open ; dm.search0.Close;
dm.search0.CommandText:='select sum(weight) ''总重量'',sum(fjfee) ''派送费合计'' from fj_lr where ps_date >=cast(:date1 as datetime)'+
' and ps_date<=cast(:date2 as datetime)' ;
dm.search0.Parameters.ParamByName('date1').Value:=formatdatetime('yyyy-mm-dd',self.DateTimePicker1.Date );
dm.search0.Parameters.ParamByName('date2').Value:=formatdatetime('yyyy-mm-dd',self.DateTimePicker2.Date );
dm.search0.Open ;
dbedit1.DataSource:=dm.dssearch0 ; dbedit1.DataField:='总重量';
dbedit2.DataSource:=dm.dssearch0 ; dbedit2.DataField:='派送费合计'; end;
图3-12派送统计界面
接受统计:主要负责对一段时间内的收件进行显示和重量计算。 主要代码:类似于派送统计。
25
《物流信息系统》课程设计报告 物流管理专业
图3-13 接收统计界面
未派送统计:具有相当重要的意义,因为快件派送统计、快件中转统计、客户投诉统计和大客户运量统计等,只是用来当做月末或季度末的结算功能使用;而未派送统计则是对工作有较大的意义,可以查到一段时间之内,还未派送的快件,便可以查看这些快件有无缺失或者根据时间安排相应的派送顺序。 具体实现为:DBGrid连接到dm:data dmunit中的TDataSource?TADODataSet ?TADOConnection (与相应数据库连接)。 相应的SQL语句为:
select js_id ‘票据号', send_station ‘发站', send_mode ‘运输方式', name ‘品名',weight ‘ 重量',rece_person ‘ 收货人', js_date ‘收件日期' from js_lr where js_date>=cast(:date1 as datetime) and js_date<=cast(:date2 as datetime)and js_id not in(select js_id from fj_lr where fj_lr.js_id=js_lr.js_id)
图3-14 未派送统计界面
26
《物流信息系统》课程设计报告 物流管理专业
大客户运量统计:主要用于对大型客户设计的信息统计。只要输入相应的客户名,便可以对相应时间段内或者该客户所有订单进行查询。是专门为有大量业务的会员量身定做的。 相应的主要代码: dm.search4.Close;
dm.search4.CommandText:='select fj_id ''派送单号'' ,station ''发站'', name ''品名'', weight ''重量'', fjfee ''派送费'','+
' rece_person ''客户名称'', ps_date ''发件日期'' from fj_lr ' +
' where rece_person like+''%''+'''+str+'''+''%'' and ps_date>=cast(:date1 as datetime) '+ ' and ps_date<=cast(:date2 as datetime)';
dm.search4.Parameters.ParamByName('date1').Value:=formatdatetime('yyyy-mm-dd',self.datetimepicker1.Date );
dm.search4.Parameters.ParamByName('date2').Value:=formatdatetime('yyyy-mm-dd',self.datetimepicker2.Date ); dm.search4.Open ; dm.search0.Close; ;
dm.search0.CommandText:='select sum(fjfee) ''派送费合计'','+ ' sum(weight) ''总重量'' from fj_lr ' + ' where rece_person like+''%''+'''+str+'''+''%'' and ps_date>=cast(:date1 as datetime) '+ ' and ps_date<=cast(:date2 as datetime)';
dm.search0.Parameters.ParamByName('date1').Value:=formatdatetime('yyyy-mm-dd',self.datetimepicker1.Date );
dm.search0.Parameters.ParamByName('date2').Value:=formatdatetime('yyyy-mm-dd',self.datetimepicker2.Date ); dm.search0.Open ;
dbedit1.DataSource:=dm.dssearch0 ; dbedit1.DataField:='总重量';
dbedit2.DataSource:=dm.dssearch0; dbedit2.DataField:='派送费合计'; end; end;
27