药房(药库)系统delphi_第1页
药房(药库)系统delphi_第2页
药房(药库)系统delphi_第3页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、枣庄学院信息科学与项目学院课程设计任务书题目:药房管理系统的设计姓名:刘斌学号:2专业班级:网络项目、 2018级本2班课 程:Delphi应用程序设计指导教师:燕孝飞 职称:讲师完成时间:2018年11月-2018年12月枣庄学院信息科学与项目学院制2018年12月28日课程设计任务书及成绩评定课程设计的任务和具体要求课程设计要求设计一个小型药库管理系统,应能反应出学生综合利用所学知识完成 一定的设计任务的能力,反映出学生理论联系实践的动手能力。具体要求如下:1)明确所要开发系统的设计任务;2)做好需求分析,合理选择设计方案;3 )合理设计数据库中各个表的结构及其关系;4)能够设计出美观大方

2、的程序界面;5)养成良好的代码书写习惯;6 )在编写程序过程中应注意相关文档的编写;7)综合应用Delphi各种组件实现程序功能; Core(TM2 Duo CPU,主频 2.31GHz;内存 3G硬盘320G以上;1024X 768显示分辨率软件环境:Delphi 7.0 SQL Server 2005课程设计进度计划起至日期工作内容备注明确设计思路,设计整体框架和数据库 建立整体框架,初步填写各项目代码 优化窗体代码,添加皮肤和打印组件完成整体设计并美化完成 完成 完成参考文献、资料索引序号文献、资料名称编著者出版单位1 李目海.delhpi应用程序设计M.北京:枣庄学院计算机科学系,20

3、182 侯炳辉,沈林兴,彭澎.毕业设计案例择选M.北京:清华大学出版社,20003 施新刚.实效编程百例M.北京:人民邮电出版社,20044 谭浩强.Delphi程序设计M.北京:清华大学出版社,20005 东名,吴名月.access数据库管理实务M.北京:人民邮电出版社,20026 乔林.参透Delphi M.北京:中国铁道出版社,2003:75-1567 沈才梁.Delphi 7.0程序设计教程M.北京:北方交通大学出版社,20048 张海藩.软件项目导论M 北京:清华大学出版社,1998目录1系统介绍 22数据库表的结构描述及其关系 22.1数据库概要设计 22.2数据库设计 .32.3

4、详细设计及具体功能的实现 42.3性能需求 53软件的模块结构图 54主要功能模块的流程图 65主要功能的实现代码 .76程序运行效果及其分析 .347总结 36正文1. 系统介绍药房等单位的药品信息和数据纷乱复杂,整理统计费力费时。要做好对 企业的管理,企业就必须快速准确地获取自己企业单位的信息,这就要求及 时统计数据并方便查看,以及对企业的数据信息进行维护。本软件是利用 DELPHI 7.0设计开发的药房管理系统,是药房信息系统的一个重要组成部 分,可实现对药房药品信息的分类管理和数据分析,从而使信息整理快速、 准确、简单,以便于相关部门给予统筹安排,从而提高改进传统的管理方 法,提高企业

5、管理水平。本文所叙述的内容以及程序代码都是医院药品管理 中的常见问题。药房管理系统应具有如下功能模块:1).药品信息部分:对药品信息的添加,删除修改及查询功能的实现.完成 对药品的管理.2).库存管理部分:对保存药品的库房进行管理,出入库的时间,药品等信 息的录入。3).销售信息部分:包括对药品的销售情况及销售信息的查询.4).用户权限管理部分:系统的退出的实现.5).帮助部分:用户对系统不理解的时候给与帮助和指导. form2.Show 。销销售查询form2.Updatesleep(3000。form3:=Tform3.Create(application form2.Free 。if f

6、orm3.ShowModal=100 thenbeginApplication.CreateForm(TForm1, Form1 end 。Application.RunEnd.unit1: unit Unit1 interface usesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, ExtCtrls, jpeg。typeTForm1 = class(TFormMainMenu1: TMainMenuN1: TMenuItemN2: TMenuItemN3:

7、 TMenuItemN4: TMenuItemN6: TMenuItemN5: TMenuItemImagel: Tlmage 。N7: TMenuItem 。procedure N2Click(Sender: TObject。procedure N1Click(Sender: TObject。procedure N3Click(Sender: TObject。procedure N6Click(Sender: TObject。procedure N4Click(Sender: TObject。procedure N7Click(Sender: TObject。private Private

8、declarations public Public declarations end 。varForm1: TForm1 。implementationuses unit4,unit5,unit6,unit7。$R *.dfmprocedure TForm1.N2Click(Sender: TObject 。beginform5:=Tform5.create(self 。form5.Show。endoprocedure TForm1.N1Click(Sender: TObject 。beginform4:=Tform4.create(self 。form4.Show 。endoprocedu

9、re TForm1.N3Click(Sender: TObject 。beginform6:=Tform6.create(self 。form6.Show。endoprocedure TForm1.N6Click(Sender: TObject 。beginshowmessage(有问题找百度!endoprocedure TForm1.N4Click(Sender: TObject 。beginform7:=Tform7.create(self 。form7.Show 。endoprocedure TForm1.N7Click(Sender: TObject 。beginform1.Close

10、 。endoEnd.Unit2:unit Unit2 。interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, jpeg, ExtCtrls, bsMessages。typeTForm2 = class(TFormImage1: TImage 。private Private declarations public Public declarations end 。varForm2: TForm2 。implementation$R *.dfmEnd.Uni

11、t3:unit Unit3 。interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls, DB, ADODB, jpeg, ExtCtrls, bsSkinData, BusinessSkinForm 。typeTForm3 = class(TFormImage1: TImage 。Label1: TLabel。Label2: TLabel。Edit1: TEdit。Edit2: TEdit。Button1: TButton。Button2:

12、TButton。Button3: TButton。DataSource1: TDataSource 。ADOConnection1: TADOConnection 。ADOQuery1: TADOQuery 。ADOTable1: TADOTable 。bsBusinessSkinForm1: TbsBusinessSkinForm 。bsSkinData1: TbsSkinData 。bsStoredSkin1: TbsStoredSkin 。procedure Button1Click(Sender: TObject。procedure Button2Click(Sender: TObje

13、ct。private Private declarations public Public declarations end varForm3: TForm3 。implementationuses Unitl, Unit2 。$R *.dfmprocedure TForm3.Button1Click(Sender: TObject 。beginADOQuery1.Close。ADOQuery1.SQL.CIear 。ADOQuery1.SQL.Add(select * from table_1 where用户名=+”+edit1.Text+and +密码=+edit2.Text+” 。ADO

14、Queryl.Open 。if ADOQueryl.Eof thenbeginshowmessage( 用户号或密码不正确 。endelsebeginModalResult := 100。/用户名和密码正确将激活主界面 /end 。end。procedure TForm3.Button2Click(Sender: TObject 。beginform3.Close。endoEnd.Unit4:unit Unit4 。interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dia

15、logs, StdCtrls, Grids, DBGrids, ADODB, DB, jpeg, ExtCtrls。typeTForm4 = class(TFormImagel: TImage 。Labell: TLabel。Label2: TLabel。Editl: TEdit。Edit2: TEdit。DBGridl: TDBGrid 。GroupBoxI: TGroupBox 。Label3: TLabel。Label4: TLabel。Label5: TLabel。Label6: TLabel。Label7: TLabel。Label8: TLabel。Edit3: TEditEdit

16、4: TEditEdit5: TEditEdit6: TEditEdit7: TEditEdit8: TEditButton3: TButtonButton4: TButtonButton5: TButtonButtonl: TButton。Button2: TButton。DataSourcel: TDataSource 。ADOConnectionl: TADOConnection 。ADOQueryl: TADOQuery 。procedure Button4Click(Sender: TObject。procedure Button1Click(Sender: TObject。proc

17、edure Button3Click(Sender: TObject。procedure Button2Click(Sender: TObject。private Private declarations public Public declarations end 。varForm4: TForm4 。implementation$R *.dfmprocedure TForm4.Button4Click(Sender: TObject 。beginADOQuery1.Close 。ADOQuery1.SQL.Clear 。ADOQuery1.SQL.Add(select * from tab

18、le_2 where药品编号 =+edit1.Text+or +药品名称=+edit2.Text+”。ADOQueryl.open 。if ADOQueryl.Eof thenbeginshowmessage(药品不存在。endelsebeginADOQueryl.Close。/删除药品信息ADOQueryl.SQL.Clear 。ADOQuery1.SQL.Add(delete from table_2 where药品编号=+edit3.Text+ADOQueryl.ExecSQL。ADOQueryl.Close 。ADOQueryl.SQL.Clear 。ADOQuery1.SQL.Add

19、(select *from table_2。ADOQueryl.Open。showmessage( 删除成功。endend。procedure TForm4.Button1Click(Sender: TObject 。beginADOQuery1.Close。ADOQuery1.SQL.Add(select * from table_2 where药品编号 =+edit1.Text+or +药品名称=+edit2.Text+”。ADOQueryl.open。if ADOQueryl.Eof thenbeginshowmessage(没发现该药品。ADOQueryl.Close。ADOQuery

20、1.SQL.Add(select * from table_2 。ADOQueryl.open。exit 。endend。procedure TForm4.Button3Click(Sender: TObject 。beginif edit3.Text= thenbeginshowmessage(药品编号不得为空 。endelseADOQueryl.Close。ADOQuery1.SQL.Add(select * from table_2 where药品编号=+edit3.Text+ 。ADOQueryl.open。if ADOQueryl.Eof thenbeginADOQueryl.Clo

21、se。/添加药品信息。ADOQuery1.SQL.Add(insert into table_2 (药品编号,药品名称,药品产地,药品重量,进价,零售价values(+edit3.Text+”+,+edit4.Text+”+,+edit5.Text+”+,+”+ edit6.Text+,+”+edit7.Text+,+”+edit8.Text+”+。ADOQueryl.ExecSQL。ADOQueryl.Close。ADOQuery1.SQL.Add(select * from table_2 。ADOQueryl.Open。showmessage( 添加成功。endelseshowmessa

22、ge( 错误,重复的药品信息。exit 。ADOQueryl.Close 。ADOQueryl.SQL.CIear 。ADOQuery1.SQL.Add(select *from table_2 。end。procedure TForm4.Button2Click(Sender: TObject 。beginform4.Close 。end。End.Unit5:unit Unit5 。interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, ComCtrls,

23、StdCtrls, Grids, DBGrids, DB, ADODB, jpeg, ExtCtrls typeTForm5 = class(TFormImage1: TImage 。Label1: TLabel。Label2: TLabel。Label3: TLabel。Label4: TLabel。Label5: TLabel。Label6: TLabel。Label7: TLabel。Label8: TLabel。Label9: TLabel。Label10: TLabel。Label11: TLabel。DBGrid1: TDBGrid 。Button1: TButton。Button

24、2: TButton。Edit1: TEdit。Edit2: TEdit。Edit3: TEdit。Edit4: TEdit。Edit5: TEdit。Edit6: TEdit。Edit7: TEdit。Edit8: TEdit。Edit9: TEdit。Button3: TButton。Button4: TButton。Button5: TButton。DateTimePicker1: TDateTimePicker。DateTimePicker2: TDateTimePicker。DataSource1: TDataSource 。ADOConnectionl: TADOConnectio

25、n 。ADOQueryl: TADOQuery 。procedure Button1Click(Sender: TObject。procedure Button3Click(Sender: TObject。procedure Button4Click(Sender: TObject。procedure Button5Click(Sender: TObject。procedure Button2Click(Sender: TObject。private Private declarations public Public declarations end 。varForm5: TForm5 。i

26、mplementation$R *.dfmprocedure TForm5.Button1Click(Sender: TObject 。var c,d:string 。beginADOQuery1.Close。ADOQuery1.SQL.add(select * from table_3 where销售日期 =:c and销售日期 ADOQuery1.Parameters.ParamByName(c.Value:=datetostr(datetimepicker1.Date。ADOQuery1.Parameters.ParamByName(d.Value:=datetostr(datetime

27、picker2.Date。ADOQueryl.Open if ADOQueryl.Eof then begin showmessage(没发现该信息 。ADOQueryl.Close。ADOQuery1.SQL.Add(select *from table_3。ADOQueryl.Openexit 。endoendoprocedure TForm5.Button3Click(Sender: TObject 。beginif edit1.Text= thenbegin showmessage(药品编号不得为空 。exit 。 endelseif edit5.Text= thenbegin sho

28、wmessage(销售时间不得为空。exit 。 endelseif edit6.Text= thenbeginshowmessage(销售日期不得为空。 endexitelseif edit7.Text= thenbeginshowmessage(结账编号不得为空。 endexitelseADOQueryl.Close。ADOQuery1.SQL.Add(select * from table 品编号=+edit1.Text+”+and =+edit7.Text+” 。3 where+销售日期=+edit6.Text+”+and +药销售时 间=+edit5.Text+and+结账 编号AD

29、OQueryl.open。if ADOQueryl.Eof thenbeginADOQueryl.Close。/添加销售信息。ADOQuery1.SQL.Add(insert into table_3 (期 , 结 账 编 号药品编号,药品名称,药品数量,金额,销售时间,销售日 经 手 人 , 结 账 方values(+edit1.Text+”+,+edit2.Text+”+,+edit3.Text+”+,+”+ edit4.Text+,+”+edit5.Text+,+”+edit6.Text+”+,+”+edit7.Text+ +,+edit8.Text+”+,+”+edit9.Text+”

30、+。ADOQueryl.ExecSQLADOQueryl.Close。ADOQuery1.SQL.Add(select *from table_3 。ADOQueryl.Openshowmessage(添加成功。endelseshowmessage(错误,重复的销售信息。 exit 。ADOQueryl.Close。ADOQuery1.SQL.Add(select *from销售信息end。procedure TForm5.Button4Click(Sender: TObject 。beginADOQuery1.Close。ADOQuery1.SQL.Add(select * from tab

31、le_3 where销售日期=+edit6.Text+”+and +品编号=+edit1.Text+”+and+销售时 间=+”+edit5.Text+and+=+edit7.Text+”。药 结账编号ADOQuery1.open。if ADOQuery1.Eof thenbeginshowmessage(销售信息不存在。 endelsebeginADOQueryl.Close。/删除销售信息。ADOQuery1.SQL.Add(delete from table_3 where 销售日期 =+edit6.Text+and +药品编号=+edit1.Text+”+and+销售时 间=+”+ed

32、it5.Text+and+结账 编号=+edit7.Text+”。ADOQuery1.ExecSQLADOQuery1.Close。ADOQuery1.SQL.Add(select *from table_3。ADOQuery1.Openshowmessage(删除成功。endend。procedure TForm5.Button5Click(Sender: TObject 。beginif edit1.Text= thenbeginshowmessage(药品编号不得为空 。exit 。endelseif edit2.Text= thenbeginshowmessage(药品名称不得为空 。

33、exit 。endelseif edit3.Text= thenbeginshowmessage(药品数量不得为空 。exit 。endelseif edit4.Text= thenbeginshowmessage(金额不得为空。exit 。endelseif edit5.Text= thenbeginshowmessage(销售时间不得为空。exit 。endelseif edit6.Text= thenbeginshowmessage(销售日期不得为空。exit 。endelseif edit7.Text= thenbeginshowmessage(结账编号不得为空。exit 。endel

34、se if edit8.Text= thenbeginshowmessage(经手人不得为空 。exit 。endelse if edit9.Text= thenbeginshowmessage(结账方式不得为空。exit 。endelsebeginADOQueryl.Close。ADOQuery1.SQL.Add(select * from table_3 where销售日期=+edit6.Text+”+and +销售时间=+”+edit5.Text+”+and +结账编号=+edit7.Text+。ADOQueryl.open。if ADOQueryl.Eof thenbeginADOQu

35、eryl.Close。ADOQuery1.SQL.Add(select *from table_3。ADOQueryl.Openshowmessage(修改失败。exit 。endelseADOQueryl.Close。/ 修改销售信息ADOQueryl.SQL.CIear oADOQuery1.SQL.Add(updatetable_3 set 药 品编号=+”+edit1.Text+,药品名称=+edit2.Text+”+,药.品数量=+”+edit3.Text+”+,金额=+edit4.Text+”+,经手 人=+edit8.Text+”+,结账方式=+edit9.Text+”+wher

36、e销售日期=+”+edit6.Text+and+销售时间=+edit5.Text+and+结账编号=+edit7.Text+。ADOQueryl.ExecSQLADOQueryl.Close。ADOQuery1.SQL.Add(select *from table_3ADOQueryl.Openshowmessage(修改成功。endoendoprocedure TForm5.Button2Click(Sender: TObject beginform5.Close 。endoEnd.Unit6:unit Unit6 。interfaceusesWindows, Messages, SysUt

37、ils, Variants, Classes, Graphics, Controls, Forms,Dialogs, DB, ADODB, Grids, DBGrids, StdCtrls, jpeg, ExtCtrlsDataSource1: TDataSource 。ADOConnection1: TADOConnection 。ADOQuery1: TADOQuery 。Image1: TImage 。Label1: TLabel。Label2: TLabel。Label3: TLabel。Label4: TLabel。Label5: TLabel。Label6: TLabel。Labe

38、l7: TLabel。Label8: TLabel。Label9: TLabel。Edit1: TEdit。Edit2: TEdit。Edit3: TEdit。Edit4: TEdit。Edit5: TEdit。Edit6: TEdit。Button1: TButton。Button2: TButton。Button3: TButton。DBGrid1: TDBGrid。Edit7: TEdit。Edit8: TEdit。Edit9: TEdit。Button4: TButton。Button5: TButton。procedure Button1Click(Sender: TObject。p

39、rocedure Button2Click(Sender: TObject。procedure Button4Click(Sender: TObject。procedure Button5Click(Sender: TObject。procedure Button3Click(Sender: TObject。private Private declarations public Public declarations end 。varForm6: TForm6 implementation$R *.dfmprocedure TForm6.Button1Click(Sender: TObject

40、 。beginif edit1.Text=thenbeginshowmessage(入库单编号不得为空 。endelseADOQuery1.Close 。ADOQuery1.SQL.CIear 。ADOQuery1.SQL.Add(select * from table_4 where入库单编号=+”+edit1.Text+” 。ADOQueryl.open 。if ADOQueryl.Eof thenbeginADOQueryl.Close 。 /添加入库信息ADOQueryl.SQL.Clear 。ADOQuery1.SQL.Add(insert into table_4 (入库单编号,入

41、库日期,药品编号,药品名称,药品数量,供应商名称values(+edit1.Text+”+,+edit2.Text+”+,+edit3.Text+”+,+”+ edit4.Text+,+”+edit5.Text+,+”+edit6.Text+”+。ADOQueryl.ExecSQL。ADOQueryl.Close 。ADOQueryl.SQL.Clear 。ADOQuery1.SQL.Add(select *from table_4 。ADOQueryl.Open。showmessage( 添加成功 。endelseshowmessage( 错误,重复的药品 。exit 。ADOQueryl.

42、Close 。ADOQueryl.SQL.Clear 。ADOQuery1.SQL.Add(select *from table_4 。endoprocedure TForm6.Button2Click(Sender: TObject 。beginADOQueryl.Close。ADOQuery1.SQL.Add(select * from table_4 where入库单编号=+”+edit1.Text+” 。ADOQueryl.open。if ADOQueryl.Eof thenbeginshowmessage( 入库单不存在。endelsebeginADOQueryl.Close。/删除

43、库存信息ADOQueryl.SQL.CIear 。ADOQuery1.SQL.Add(delete from table_4 where入库单编号=+edit1.Text+”ADOQueryl.ExecSQL。ADOQuery1.Close 。ADOQuery1.SQL.Clear 。ADOQuery1.SQL.Add(select *from table_4。ADOQuery1.Open。showmessage( 删除成功。endend。procedure TForm6.Button4Click(Sender: TObject 。beginADOQuery1.Close。ADOQuery1.SQL.Add(select * from table_4 where入库日期 =+edit7.Text+or +药品编号=+edit8.Text+”+or+药品名称=+edit9.Text+”。ADOQueryl.open。if ADOQueryl.Eof thenbegin showmessage(没发现该药品。ADOQueryl.Close。ADOQuery1.SQL.Add(select * from

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论