首页 > 范文大全 > 正文

书店调拨系统和业务查询系统设计

开篇:润墨网以专业的文秘视角,为您筛选了一篇书店调拨系统和业务查询系统设计范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要 新华书店业务量越来越大,原有的进书管理系统已经不能满足日常业务的需要。本文针对业务调拨系统业务查询系统的设计进行了论述。

关键词 书店;业务;调拨;查询;设计

中图分类号TP315 文献标识码A 文章编号 1674-6708(2011)48-0066-01

新华书店的进书管理工作是书店各项业务的前提,随着图书业务量越来越大,原有的进书管理系统已经不能满足日常业务的需要。为此,开发一套新的进书管理系统成为该店迫切的需要。本文针对业务调拨系统和业务查询系统的设计,做详细阐述。

1 业务调拨系统

业务调拨系统根据书店业务的需要,将新书调拨到各门市部,同时生成前台POS机销售数据,书店门市假定为:长安门市、牌楼门市、九顷门市、建行门市。

新建Form4,在窗体上放置7个TLable组件,分别设置其Caption属性为:书名、业务科、批销中心、长安门市、牌楼门市、九顷门市、建行门市。放置一个Ttable组件,设置TableName=Table1,Table1.DatabaseName=(mw),Table1.TableName=“业务调拨”,Table1.Active=true。放置两个按钮组件,分别设置其Caption为“业务调拨”、“退出”。

“业务调拨”的响应代码为:

procedure TForm4.Button1Click(Sender: TObject);

begin

if MessageDlg('确定调拨业务',mtInformation,[mbYes,mbNo],0)=mrYes then

begin

Table1.Insert;

Table1.FieldValues['书名']:=Edit1.Text;

Table1.FieldValues['业务科']:=Edit2.Text;

Table1.FieldValues['批销中心']:=Edit3.Text;

Table1.FieldValues['长安门市']:=Edit4.Text;

Table1.FieldValues['牌楼门市']:=Edit5.Text;

Table1.FieldValues['九顷门市']:=Edit6.Text;

Table1.FieldValues['建行门市']:=Edit7.Text;

Table1.Post;

end;

end;

上述程序中,使用Insert方法要在数据库表格中先插入一个空记录,即调用Ttable组件的Insert方法,然后,再依次添加该记录的每一个字段,最后再用Post方法将记录写回到数据库中去。

2 业务查询系统

业务查询系统克服了原来的查询系统中用户输入负担过重的缺点。新系统界面友好,用户操作方便。

新建一个Form,放置一个Combobox组件、一个Edit组件、两个button组件、一个TDBnavigator组件、一个TDBgrid组件、一个Tquery组件、一个Ttable组件、一个TDatasource组件。设置Combobox的属性Caption为“请选择你要查询的内容”,Items属性的值为“货源”、“进书方式”、“到货日期”、“发货依据”、“新书名”、“书名”。设置Edit组件的Caption为“请输入你要查询的具体内容”。设置TDBnavigator组件和TDBgrid连接的数据库名为mw,Datasource的Dataset属性为Query1。设置Button.Caption=查询。

这个子系统要实现在同一个数据库的三个不同的表中不同字段进行动态查询。所以各数据库组件的DatabaseName统一设置为mw,而具体的表名应该在程序运行时动态设计。子系统设计思想是:根据用户选择的combobox的内容来确定具体的表名。例如:用户选择“货源”、“进书方式”、“到货日期” 、“发货依据”,则表名为“业务清单”;选择“新书名”,则表名为“新书”;选择“书名”则表名为“业务调拨”。程序设计时必须先置Table1.Active=False,当选择了具体的表之后,在置Table1.Active=True。查询按钮的响应代码编写思路如下:

procedure TForm12.Button1Click(Sender: TObject);

begin

table1.Active:=false;

if combobox.Text='货源' then//如果combobox.Text='货源'

begin

table1.TableName:='业务清单';

table1.Active:=true;

query1.Close;

query1.SQL.Clear;

query1.SQL.Add('select * from 业务清单');

query1.sql.Add('where 货源=:value');

query1.Params[0].AsString:=edit.Text;

query1.Open;

end

else if combobox.Text='新书名' then

begin

table1.TableName:='新书';

table1.Active:=true;

query1.Close;

query1.SQL.Clear;

query1.SQL.Add('select * from 新书');

query1.sql.Add('where 进书方式=:value');

query1.Params[0].AsString:=edit.Text;

query1.Open;

end;

3 结论

本系统的开发工具是Delphi6.0,这个优秀的面向对象开发工具提供了丰富的可视化组件库(VCL)和强大的数据库引擎Borland Data Engineer(BDE)通过BDE很容易链接本地(Access, FoxPro)或远程数据库服务器上的数据库(SQL Server,Oracle等等)。经过测试,系统运行稳定,功能完善,符合要求。

参考文献

[1]张锦芳.系统分析和设计[M].北京:北京航空航天大学出版社,1997.

[2]郭晶.Delphi 6编程指南[M].北京:电子工业出版社,2002.