《DELPHI课程设计贸易管理系统》由会员分享,可在线阅读,更多相关《DELPHI课程设计贸易管理系统(26页珍藏版)》请在金锄头文库上搜索。
1、常州大学DELPHI课程设计1系统需求分析(宋体 四号 粗体)本贸易公司系统的业务主要用于基本信息的管理,包括供货商信息、顾客信息、商品信息和仓库信息的维护以及所经营商品的进、销、存管理,完成的主要功能包括:(1)客户管理包括供货商和顾客信息的管理。管理和维护供货商或顾客的公司名称、地址、联系人姓名、联系电话、邮政编码和公司主页等信息。(2)商品管理包括随所有营销商品信息的管理。管理和维护商品的名称、规格型号、计量单位、底线库存和高线库存等信息。(3)仓库管理包括对仓库信息的管理,管理和维护仓库的名称、地址和负责人等信息。(4)进销存管理包括进货管理和销售管理两大部分,记录进货的信息,包括供应
2、商信息、商品信息和存货仓库的悉尼西,同时同步更新库存信息;记录销售信息,包括顾客信息、商品信息和存款仓库的信息,同时同步更新库存信息。(5)查询统计包括商品库存信息的查询、进货信息和销售信息的查询。同时及时了解短线商品,即库存量低于库存的商品和超储商品,以及库存量高于高线库存的商品的信息,从而及时的出货和补货。(正文:宋体 小四号 行间距:固定值 18磅 段前 段后间距 0)2基本功能概述(1)系统为公司的客户信息建立档案,包括供货商和顾客的公司名称、地址、联系人、联系电话、传真、邮编和公司主页等信息,并能对这些信息进行增加、修改、删除和查询等操作。(2)系统为公司所营销的商品信息建立档案,包
3、括商品名称、规格、记录单位、底线库存和高线库存等信息,并能对这些信息进行增加、修改、删除和查询等操作。(3)系统为公司所储库仓库建立档案,包括仓库的名称、地址和负责人等信息,并能对这些信息进行增加、修改、删除和查询等操作。(4)当公司进货时能对进货的信息进行入库管理,记录供货商信息、所存储仓库信息、进货商品的名称、规格、数量和进货时间等进货信息,并能对这些信息进行增加、修改、删除和查询等操作。同时需要同步更新相应商品的库存信息。(5)当公司销售时能对销售的信息进行入库管理,记录顾客信息、出货仓库信息、销售商品的名称、规格、数量和出货时间等销售信息,并能对这些信息进行增加、修改、删除和查询等操作
4、。同时系统要能自动列出仓库中可供销售商品的信息,同时对超过库存的销售能制止和提示,销售后要能同步更新商品的库存信息。(6)当出现了底线货品和超储货品时,系统要能查出这些商品并显示给系统操作员。(7)系统应该具有查询所有信息的功能。(8)系统应该可以管理用户并设置相应的权限。(9)系统应该可以对基础数据进行维护。(10)系统应该有很好的可扩展性。3系统模块设计贸易管理系统系统管理基本信息管理营销管理查询统计图1 贸易管理系统基本功能模块一个通用的贸易管理系统可以分为以下几个功能模块,如图1所示。(1)系统管理系统管理模块包括的主要功能是对于用户信息的管理及密码的修改。这些设置一般不轻易改动,其包
5、含的功能模块如图2所示。其中系统用户管理用于设置使用系统的用户,包括设置权限、添加、删除和修改用户信息等。用户密码修改功能提供当前用户修改本人密码的权限。系统管理系统用户管理用户密码修改图2 “系统管理”功能模块(2)基本信息管理基本信息管理用于设置和维护公司的基本信息,包括供货商和顾客的基本信息管理、仓库信息管理和所营销的商品信息的管理,其包含的功能模块如图2所示。其中,客户管理包括了供货商信息和顾客信息的管理和维护两个模块。包括公司名称、地址、联系人、联系电话、传真号码和公司主页等信息。仓库信息管理用于添加、编辑和删除公司存储货物的库房的具体信息,包括仓库的编号、名称、地址和负责人的信息。
6、基本信息管理客户管理商品管理图3 “基本信息管理”功能模块仓库管理供货商管理顾客管理商品管理用于添加、编辑和删除公司所经营商品的具体信息。(3)营销管理营销管理模块是系统的核心功能模块,主要实现了公司的进、销、存管理、其包含的功能模块如图4所示。其中,进货管理用于添加、设置和修改公司的进货信息,包括供货商的编号和名称、存储仓库的编号和名称、所进商品的编号、名称、规格、计量单位、进货数量、单价和入库时间的信息。销售管理用于添加、设置和修改公司的进货信息,包括顾客的编号和名称、出库商品的编号和名称、所售商品的编号、名称、规格、计量单位、出货数量、单价和出库时间的信息。库存管理用于管理商品的存储信息
7、,当进货和出货时需要更新商品的库存量。营销管理进货管理库存管理图4 “营销管理”功能模块销售管理(4)查询统计查询统计进货信息查询短线商品统计图5 “查询统计”功能模块销售信息查询库存信息查询超储商品统计查询统计模块实现了库存信息、进货信息、销售信息的查询,以及短线商品和超储商品的统计显示,包含的功能模块如图5所示。其中,库存信息查询模块主要提供库存信息的查询和显示,提供商品的库存商品名称、商品规格、商品计量单位和商品的库存数量的信息。可以通过仓库名称和商品名称进行数据的过滤。进货信息查询主要提供进货的时间、进货商品数量、名称、规格、型号、供货商名称和存储仓库名称等信息的显示,可以通过供货商名
8、称、商品名称或仓库名称进行数据过滤。销售信息查询主要提供销售商品的时间、商品数量、名称、规格、型号、顾客名称和出货仓库等信息的显示,可以通过顾客名称、商品名称或仓库名称进行数据过滤。短线商品统计提供了自动显示当前库存中的库存数量低于其底线库存的商品信息,便于提醒公司及时补货。超储商品统计提供了自动显示当前库存中的库存数量高于其底线库存的商品信息,便于提醒公司及时出货。功能结构如图11所示:。4数据库的设计根据上面的需求分析和功能模块设计,贸易管理系统共需8张表: 表1 系统数据表及用途(所有表格为5号字,代码为5号字):表名用途Cuser保存系统用户的信息Customer保存公司顾客的信息De
9、pot保存公司仓库的信息Product保存公司所营销商品的信息Sell保存商品销售的信息Stock保存商品进货的信息Storage保存商品库存的信息图6 数据库图示( 可以截图,也可以用表格)5各个功能模块窗体创建(这个部分写的是系统各个功能模块窗体的设计和程序代码,窗体要截图,代码要有注释,代码只列出主要功能按钮的程序,相似按钮的代码可以省略)(1)创建登录窗体和主窗体 图7 系统数据模块(截图,注意图编号要按顺序排列)各个组件的主要属性设置入下表2:表2 数据模块组件属性设置组件名称属性属性值ADOConnection1ConnectionStringProvider=SQLOLEDB.1
10、;Persist Security Info=False;User ID=sa;Initial Catalog=sale_manage;Data Source=BBBLoginPromptFalseConnectedTrueADO_providerConnectionTableNameADOConnection1ProviderADO_customerConnectionTableNameADOConnection1CustomerADO_userConnectionTableNameADOConnection1CuserADO_productConnectionTableNameADOCon
11、nection1ProductADO_depotConnectionTableNameADOConnection1DepotADO_stockConnectionTableNameADOConnection1StockADO_sellConnectionTableNameADOConnection1SellADO_storageConnectionTableNameADOConnection1StorageADOQ_cxConnectionADOConnection1用于登录的窗体时在整个程序运行之前首先呈现给用户的界面,通过它来进行用户的合法性验证,创建的窗体如图8:图8 登录窗体下列代码实
12、现的功能时在窗体创建时从系统用户表中读出所有的用户名,并将它们添加到“用户名”的下拉列表中,在用户单击了“登录”按钮后验证用户输入的用户名和密码是否正确,如验证合法则登陆到主窗体。procedure Tcfrm_login.FormCreate(Sender: TObject);begin dm.ADO_user.open; dm.ADO_user.Sort:=userID; while not dm.ado_user.Eof do begin Combobox1.items.add(dm.ADO_user.fieldbyname(username).AsString); dm.ADO_use
13、r.Next; end; Combobox1.ItemIndex:=0end;procedure Tcfrm_login.ComboBox1Change(Sender: TObject);begin edit1.Text:=; edit1.SetFocus;end;procedure Tcfrm_login.BitBtn2Click(Sender: TObject);begin dm.ado_user.Close; Application.Terminate;end;procedure Tcfrm_login.BitBtn1Click(Sender: TObject);var kl:varia
14、nt; pass:string;begin username:=Combobox1.text; kl:=dm.ado_user.lookup(username,username,pass);/从数据库表中查询出选中用户所对应的密码 if varisnull(kl) then pass:= else pass:=kl; if edit1.textpass then/验证密码,如果连续三次密码错误则关闭应用程序 begin i:=i+1; if i=3 then begin Application.MessageBox(PChar(密码验证错误,拒绝访问!), PChar(提示), MB_ICONEXCLAMATION); Application.Terminate; close; end; application.messagebox(pchar(密码验证错误,重新录入!),pchar(提示), MB_ICONQUESTION); edit1.text:=; edit1.SetFocus();