医药销售管理数据库课程设计.docx

上传人:b****5 文档编号:28712005 上传时间:2023-07-19 格式:DOCX 页数:30 大小:293.42KB
下载 相关 举报
医药销售管理数据库课程设计.docx_第1页
第1页 / 共30页
医药销售管理数据库课程设计.docx_第2页
第2页 / 共30页
医药销售管理数据库课程设计.docx_第3页
第3页 / 共30页
医药销售管理数据库课程设计.docx_第4页
第4页 / 共30页
医药销售管理数据库课程设计.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

医药销售管理数据库课程设计.docx

《医药销售管理数据库课程设计.docx》由会员分享,可在线阅读,更多相关《医药销售管理数据库课程设计.docx(30页珍藏版)》请在冰豆网上搜索。

医药销售管理数据库课程设计.docx

医药销售管理数据库课程设计

存档资料成绩:

 

华东交通大学理工学院

课程设计报告书

 

课程名称  数据库课程设计 

题目医药销售管理系统的设计与实现

分院  电信分院   

专业班级

学  号   

学生姓名    

指导教师     

 

2011年12月31日

华东通大学理工学院

课程设计任务书

专业班级

姓名

一、课程设计(论文)题目医药销售管理系统的设计与实现

二、课程设计(论文)工作:

自2011年12月20日起至2011年12月31日止。

三、课程设计的内容要求:

以SQLServer2000作为后台数据库,以VB6.0、VC6.0或其它开发工具作为前台开发工具,完成一个小型数据库应用系统的设计开发。

 

学生签名(手签):

____________

2011年12月31日

 

摘要

医药销售管理系统是专门针对医药企业、药店的综合业务而开发的系统,集进、销、存、决策于一体,同时还集成了基础信息管理、销售管理、进货管理、财务管理、报表打印、查询统计、备份恢复等多种实用的功能。

课程设计严格参照软件工程的开发原则,首先对医药销售管理系统的开发背景、现状及存在问题进行了系统分析,并且对用户提出的问题加以分析并给出可行的解决方案。

然后对系统总体设计,进行模块划分,确定基本信息、销售、入库、库存、财务统计、系统管理等子模块功能等。

在总体设计的基础上,从系统的目标、处理流程、编码设计以及系统安全和可靠性等方面入手进行详细设计。

同时对数据库进行概要设计和逻辑设计,对系统E-R图以及表进行分析与设计。

系统采用二层C/S结构,前台开发工具选用性能比较稳定可靠的MicrosoftVisualBasic6.0,后台数据库选用目前比较流行MicrosoftSQLSever2000。

整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成药品信息、药品信息管理的全过程。

关键词:

医药销售管理系统,信息化,MicrosoftVisualBasic6.0,

MicrosoftSQLSever2005

引言

第一章概要设计

1.1系统需求分析

1.2系统结构设计

1.3系统功能模块设计

第二章详细设计

2.1系统数据库设计

2.1.1数据库需求分析

2.1.2数据库概念设计

2.1.3数据库逻辑设计

2.1.4数据库物理设计

2.1.5数据库实施

2.2系统主要功能模块设计

2.3主要模块代码

第三章系统调试与运行

小结

参考文献

 

引言

1、设计目的

调查从事医药产品的零售、批发等工作的企业,根据其具体情况设计医药销售管理系统。

主要功能包括:

a)基础信息管理:

药品信息、员工信息、客户信息、供应商信息等;

b)进货管理:

入库登记、入库登记查询、入库报表等;

c)库房管理:

库存查询、库存盘点、退货处理、库存报表等;

d)销售管理:

销售登记、销售退货、销售报表及相应的查询等;

e)财务统计:

当日统计、当月统计及相应报表等;

f)系统维护:

如数据安全管理(含备份与恢复)、操作员管理、权限设置等;

2、要求

医药销售管理系统能对信息(药品信息、员工信息、客户信息等)进行查询、删除、更新等操作;对药品销售的管理(销售信息录入查询、更新等);对药品出入库的管理(出入库信息登记、出入库信息更新等操作))。

3、设计环境

CPU:

IntelPentium42GHz

内存:

1G

操作系统:

MicrosoftWindowsXP

开发工具是Microsoft公司的VisualBasic6.0企业版

后台数据库在MicrosoftSQLServer2005

第一章概要设计

1、系统需求分析

1.1信息需求(基本信息)

药品信息:

药品编号,药品名称,数量,售价,进价,供应商等

供应商信息:

供应商号,供应商名称,联系人,所在城市等

药品销售信息:

销售编码,药品编码,药品名称,售价,单位,数量,总额,销售日期等

员工信息:

员工号,姓名,用户名,职位,用户密码,用户权限等

1.2功能需求

系统要实现的主要功能有:

(1)对药品信息的维护和管理,能够万册很能够药品信息的添加、修改和删除,并按一定条件查询药品信息。

(2)对供应商信息的管理,能够完成信息的添加、修改和删除,并按一定条件查询信息。

(3)对客户和员工信息的管理,能够完成信息的添加、修改和删除,并按一定条件查询信息。

(4)仓库管理,能够查询库存药品信息,并对库存进行更新、盘点

(5)销售管理,销售登记、销售退货、销售报表及相应的查询等;

 

2、系统结构设计

系统结构图如图所示

3、功能模块设计

基础信息管理模块:

完成对员工,客户,供应商,药品等信息的查询,删除,添加等操作;

进货管理模块:

完成对入库药品的信息查询等操作;

库房管理模块:

完成对库房的库存信息,退换货信息的查询,登记入录等操作;

销售管理模块:

完成销售信息的录入,查询,退货等管理操作;

财务统计模块:

完成当月统计和当月统计等报表的实现操作;

系统维护模块:

完成对员工的管理权限的设置等操作;

第2章详细设计

1、系统数据库设计

2.1.1需求分析

数据要求:

药品信息、员工信息、客户信息、供应商信息

药品出入库情况(数量,价格,总价等)

库存量,销售量

处理要求:

a)基础信息管理:

药品信息、员工信息、客户信息、供应商信息等;

b)进货管理:

入库登记、入库登记查询、入库报表等;

c)库房管理:

库存查询、库存盘点、退货处理、库存报表等;

d)销售管理:

销售登记、销售退货、销售报表及相应的查询等;

e)财务统计:

当日统计、当月统计及相应报表等;

数据字典

1、数据项

编号

数据项名称

说明部分

1

编号

整形类型,具有唯一性

2

药名

字符型,具有唯一性

3

进价

浮点型

4

数量

整形

5

售价

浮点型

6

供应商

字符型,具有唯一性

7

联系人

字符型

8

所在城市

字符型

9

日期

格式**/**/**

10

供应商号

整形,具有唯一性

11

员工号

整形,具有唯一性

12

客户号

整形,具有唯一性

13

名称

字符型

14

联系方式

15

进货单号

整形

16

姓名

字符型

17

权限

字符型

18

备注

文本类型

19

库存数量

整型

20

销售编码

整型

2、数据结构

编号

数据结构名

属性

1

药品基本信息

编号、药名、进价、数量、售价、供应商、

2

供应商基本信息

供应商号、名称、联系人、所在城市

3

客户基本信息

客户号、名称、联系人、所在城市

4

员工基本信息

员工号、姓名、权限、用户名、职位、密码

5

入库登记

编号、药名、数量、单价、总价、备注

6

仓库查询

编号、药名、库存数量、单价、备注

7

退货处理

编号、药名、退货数量、单价、备注

8

销售登记

编号、药名、单价、数量、总价、员工号、日期

9

销售报表

编号、药名、单价、数量、总价、员工号、日期

10

销售退货

编号、药名、单价、数量、总价、员工号、日期

11

日结算

编号、发票号、数额、员工号、日期

12

月结算

编号、上月余额、收入、支出、余额、员工号、日期

13

年终结算

编号、收入、支出、净收入、员工号、日期

3、数据流

编号

数据流名

输入

输出

1

药品信息

入库药品

药品基本信息

2

供应商信息

新增供应商

供应商基本信息

3

客户信息

新增客户

客户基本信息

4

员工信息

招新员工

员工基本信息

4、数据存储

数据存储名

输入数据流

输出数据流

药品信息

药品基本信息

供应商信息

供应商基本信息

员工信息

员工基本信息

药品入库

新进购药品的信息

仓库中药品信息

仓库退货

退出货物的基本信息

仓库中药品信息

销售登记

售出药品的信息

药品基本信息

销售退货

退回药品信息

药品基本信息

财务统计

收入和支出情况

财务状况

5、处理过程

处理过程名

输入数据流

输出数据流

招收新员工

终端

员工基本信息

辞掉老员工

终端

员工基本信息

药品入库

终端

药品基本信息

仓库退货

终端

药品基本信息

销售登记

终端

药品基本信息

销售退货

终端

药品基本信息

财务统计

收入、支出情况

财务状况

2.1.2概念结构设计

数据库的概念设计就是画出E-R图。

分析前面的系统功能要求,需要一个表来存储和管理客户信息,使系统能够接受客户查询药品时输入的各项数据,以实现数据录入、查询或统计客户信息等功能。

客户是本系统的第一个实体。

为了能实现查询和统计药品情况等功能,必须有一个表来存储和管理所有药品的信息。

药品是本系统的第二个实体。

据此可以绘出医药销售管理系统数据库的E-R图如下:

药品E—R图

客户E-R图

员工E-R图

 

供应商E-R图

销售E-R图

整体E—R图

2.1.3逻辑结构设计

将数据库的概念模型转换为关系模型

药品信息(编码,药名,数量、售价,进价,供应商号)

员工信息(员工号,姓名,密码,权限,用户名)

客户信息(客户号,名称,联系人,客户所在城市)

供应商信息(供应商号,名称,联系人,所在城市)

药品销售信息(销售编码,销售日期,药品编码,药品名称,单价,数量,供应商,总额,员工号)外码:

销售员编码、药品编码

药品进货信息(进货单号,进货日期,药品编码,药品名称,单价,数量,供应商,)

2.1.4物理设计

数据库的物理结构是指数据库在物理设备上的存储结构与存取方法,依赖于给定的计算机系统。

通过上一阶段的逻辑设计选取了一个最适合应用要求的物理结构的设计。

2.1.5数据库的实现

数据库实现是运用DBMS提供的DDL数据语言定义数据库结构,组织数据入库,编写与调试应用程序。

数据表设计

通过对关系模式的优化,得到六个基本表:

表3-1药品信息表

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

MedicineCode

Char

6

PrimaryKey

NotNull

药品编码

MedicineName

Varchar

32

NotNull

药品名称

Price

Money

8

售价

ListPrice

Money

8

进价

Number

Int

4

库存量

FirmCode

Char

4

NotNull

供应商编码

表3-2供应商信息

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

FirmCode

Char

4

PrimaryKey

NotNull

供应商编码

FirmName

Varchar

16

NotNull

供应商名称

Link

Varchar

12

联系人

City

Varchar

8

所在城市

 

表3-3药品销管理表

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

SaleNo

int

4

PrimaryKey

NotNull

销售编码

Medicinecode

Char

6

Foreignkey

NotNull

药品编码

MedicineName

Varchar

32

NotNull

药品名称

Price

Money

8

售价

Number

Int

4

数量

Amount

Money

8

金额

SaleDate

Datetime

8

销售日期

 

表3-4用户信息

字段名

字段类型

长度

主键或外键

字段值约束

对应中文属性名

WorkNo

Char

2

PrimaryKey

NotNull

员工号

Name

Varchar

12

姓名

UserRegName

Char

3

NotNull

用户名

Password

Money

3

NotNull

用户口令

Position

Money

10

用户职位

Power

Int

10

用户权限

该系统数据库设计部分代码

Table:

FirmInfor

createtableFirmInfor

FirmCodechar(4)notnull,

FirmNamevarchar(16)notnull,

Linkvarchar(12),

LinkTellchar(11),

Cityvarchar(8),

primarykey(FirmCode)

);

Table:

MedInfor

createtableMedInfor

MedicineCodechar(4)notnull,

MedicineNamevarchar(32)notnull,

MedKindCodechar

(1)notnull,

Pricenumeric(8,2),

ListPricenumeric(8,2),

StockNumvarchar(4),

Unitchar

(2),

UsefulLifetimestamp,

RatifyCodevarchar(10),

primarykey(MedicineCode)

);

Table:

MedKindInfor

createtableMedKindInfor

MedKindCodechar

(1)notnull,

KindExplanationvarchar(16),

primarykey(MedKindCode)

);

Table:

SupplyInfor

createtableSupplyInfor

MedicineCodechar(4)notnull,

FirmCodechar(4)notnull,

MedicineNamevarchar(32),

Numbervarchar(4),

Unitchar

(2),

ListPricenumeric(8,2),

Amountnumeric(8,2),

primarykey(MedicineCode,FirmCode)

);

Index:

Relationship_3_FK

createindexRelationship_3_FKonSupplyInfor(

MedicineCodeASC

);

Index:

Relationship_4_FK

createindexRelationship_4_FKonSupplyInfor(

FirmCodeASC

);

Table:

UserInfor

createtableUserInfor

UserRegNamechar(6)notnull,

Passwordchar(8)notnull,

Positionvarchar(10)notnull,

Powerchar(4),

primarykey(UserRegName)

);

altertableMedInfor

addforeignkeyFK_MEDINFOR_RELATIONS_MEDKINDI(MedKindCode)

referencesMedKindInfor(MedKindCode)

onupdaterestrict

ondeleterestrict;

altertableSupplyInfor

addforeignkeyFK_SUPPLYIN_RELATIONS_MEDINFOR(MedicineCode)

referencesMedInfor(MedicineCode)

onupdaterestrict

ondeleterestrict;

altertableSupplyInfor

addforeignkeyFK_SUPPLYIN_RELATIONS_FIRMINFO(FirmCode)

referencesFirmInfor(FirmCode)

onupdaterestrict

ondeleterestrict;

 

2.2系统主要功能模块设计(可用流程图表示)

(系统顶层数据流程图)

(系统0层数据流程图)

主要模块代码

登录:

PrivateSubCommand2_Click()

Me.Hide

EndSub

PrivateSubOption1_Click()

EndSub

PrivateSubText1_KeyPress(KeyAsciiAsInteger)

IfKeyAscii=Chr(32)Then

Text2.SetFocus

EndIf

EndSub

PrivateSubText2_GoFocus()

Adodc1.RecordSource="select*frompower2whereuserregname='"&Text1&"'"

Adodc1.Refresh

EndIf

IfAdodc1.Recordset.EOFThen

MsgBox"无此用户,请重新输入!

",,"提示"

Text1.Text=""

Text1.SetFocus

EndIf

EndSub

PrivateSubText2_Change()

Adodc1.RecordSource="select*frompower2whereuserregname='"&Text1&"'"

Adodc1.Refresh

EndIf

EndSub

基础信息管理:

PrivateSubCommand1_Click()

OnErrorResumeNext

Command2.Enabled=False

Command3.Enabled=False

Command4.Enabled=True

Command5.Enabled=False

IfCommand1.Caption="添加"Then

Command1.Caption="确认"

Adodc1.Recordset.AddNew

Text4.SetFocus

Else

Command1.Caption="添加"

Adodc1.Recordset.Update

Adodc1.Recordset.MoveLast

Command2.Enabled=True

Command3.Enabled=True

Command5.Enabled=True

EndIf

EndSub

PrivateSubCommand2_Click()

OnErrorResumeNext

Adodc1.Recordset.Delete

Adodc1.Recordset.MoveNext

IfAdodc1.Recordset.EOFThenAdodc1.Recordset.MoveLast

EndSub

PrivateSubCommand3_Click()

OnErrorResumeNext

Command1.Enabled=False

Command2.Enabled=False

Command4.Enabled=True

Command5.Enabled=False

IfCommand3.Caption="修改"Then

Command3.Caption="确认"

Adodc1.Recordset.Update

Text4.SetFocus

Else

Command3.Caption="修改"

Adodc1.Recordset.Update

Command1.Enabled=True

Command2.Enabled=True

Command5.Enabled=True

EndIf

EndSub

PrivateSubCommand5_Click(IndexAsInteger)

Frame1.Visible=True

EndSub

进货管理:

PrivateSubCommand1_Click()

OnErrorResumeNext

Command2.Enabled=False

Command3.Enabled=False

Command4.Enabled=True

Command5.Enabled=False

IfCommand1.Caption="添加"Then

Command1.Caption="确认"

Adodc1.Recordset.AddNew

Text1.SetFocus

Else

Command1.Caption="添加"

Adodc1.Recordset.Update

Adodc1.Recordset.MoveLast

Command2.Enabled=True

Command3.Enabled=True

Command5.Enabled=True

EndIf

EndSub

PrivateSubCommand2_Click()

EndSub

PrivateSubCommand3_Click()

OnErrorResumeNext

Command1.Enabled=False

Command2.Enabled=False

Command4.Enabled=True

Command5.Enabled=False

IfCommand3.Caption="修改"Then

Command3.Caption="确认"

Adodc1.Recordset.Update

Text1.SetFocus

Else

Command3.Caption="修改"

Adodc1.Recordset.Update

Command1.Enabled=True

Command2.Enabled=True

Command5.Enabled=True

EndIf

EndSub

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 中国风

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1