零售药店管理系统设计报告ASP.docx

上传人:b****5 文档编号:8151383 上传时间:2023-01-29 格式:DOCX 页数:15 大小:349.24KB
下载 相关 举报
零售药店管理系统设计报告ASP.docx_第1页
第1页 / 共15页
零售药店管理系统设计报告ASP.docx_第2页
第2页 / 共15页
零售药店管理系统设计报告ASP.docx_第3页
第3页 / 共15页
零售药店管理系统设计报告ASP.docx_第4页
第4页 / 共15页
零售药店管理系统设计报告ASP.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

零售药店管理系统设计报告ASP.docx

《零售药店管理系统设计报告ASP.docx》由会员分享,可在线阅读,更多相关《零售药店管理系统设计报告ASP.docx(15页珍藏版)》请在冰豆网上搜索。

零售药店管理系统设计报告ASP.docx

零售药店管理系统设计报告ASP

 

苏州科技学院

 

二○○九 ~二○一○学年第二学期

 

电子信息工程学院

 

课程设计报告书

 

课程名称:

零售药店管理系统设计

 

班级:

计算机 0825

 

学号0730107548

 

姓名:

王噱

 

指导教师:

吴 宏 杰

 

二○一○年七月

 

1

 

1.系统功能需求分析

 

药店管理管理系统要求实现对药品进行计算机管理。

该系统主要包括以下

内容:

⑴用户登录验证

⑵药品主要信息表,对其的操作有插入、删除、查找、更新。

⑶会员信息表,对其的操作有查找,按会员编号查找。

⑷销售情况表,对其的操作有排序,按月总收入排序。

 

2.系统分析与设计

 

2.1 数据库结构

本实验共有 5 张表。

1,用户登录的相关数据表结构(本实验是一个药店管理系统,主要用户

就是管理员,管理员就一人)

 

2,药品主要信息表

 

2

 

3,会员信息表

 

4,6 个月的销售额表

3

 

5,每月的总收入表

 

4

 

2.2窗体类型

 

本实验包括四个窗体:

1)用户登录窗体

2)药品主要信息窗体

3)会员管理窗体

4)药店销售情况窗体

 

2.3流程图

 

登录密码.mdb

 

身份验证

 

药品信息

b.mdb

 

用户管理会员信息.mdb

 

销售情况销售情况.mdb

 

5

 

3.用户手册

 

3.1 用户登录

 

用户登录设计界面图如下:

 

图 4.1 用户登录设计界面

用户通过输入用户名和密码就可以进入主页面了,此系统主要就是给药品信

息管理员使用,所以只有一个用户。

 

3.2 药品信息

 

药品信息界面图如下:

 

6

 

 

图 4.2 药品信息设计界面

 

进入主页面后,就可以通过表看见药品的主要信息,内容有药品名称、价

格、生产批号、药物数量、生产日期、保质期。

然后页面中有有 3 个

groupBox,分别可以对药品的主要信息进行插入、删除、查询操作。

每次做插

入或者删除时,都需要按一下更新的按钮,这样就可以看到最新的数据。

每次

做完插入、删除或者查询时,可以点击右下角的清空按钮,那么以前在文本框

中的记录就会清空。

点击左上角的菜单,可以分别到会员管理页面和销售情况

页面。

 

3.3 会员管理

 

会员管理设计界面如下图:

 

7

 

图 4.3 会员管理界面

会员管理页面,有一个查询功能,是按照会员编号查询的,把编号输入文

本框,点击查询按钮,下面的 richTextBox 就会出现此会员的信息。

 

8

 

3.4 销售情况

 

图 4.4 销售情况界面

销售情况页面,有 2 张表,上面一张表具体显示了 6 个月来每周的销售额,

下面一张表,形象地列出了每个月的月总收入。

点击排序按钮,右边的

richTextBox 中就会按这 6 个月的月总收入排序。

 

4.程序主要代码

 

4.1 登录的相关代码

 

private void button1_Click(object sender, EventArgs e)

{

string cn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +

Application.StartupPath +

"//biao.mdb" + ";Persist Security Info=True";

OleDbConnection cnn = new OleDbConnection(cn);

OleDbConnection cnn1 = new OleDbConnection(cn);

9

 

string txt3 = "Select * From 登录密码 where 用户名=" + "'" + textBox1.Text + "'"

+ " and 密码=" + textBox2.Text;

OleDbCommand com = new OleDbCommand(txt3, cnn);

DataTable dt = new DataTable();

OleDbDataAdapter da = new OleDbDataAdapter();

da.SelectCommand = com;

OleDbCommandBuilder cb = new OleDbCommandBuilder(da);

da.Fill(dt);

if (dt.Rows.Count == 0)

{

MessageBox.Show("无此用户,请重新输入");

}

else

{

Form2 my = new Form2();

my.ShowDialog();

}

}

4.2 药品信息插入的相关代码

private void button3_Click(object sender, EventArgs e)

{

String strSQL = "INSERT INTO b(药品名称,价格,生产批号,药物数量,生产日期,保质期)

VALUES('" +

textBox1.Text + "'," + textBox2.Text + "," + textBox3.Text + "," +

textBox4.Text + "," + textBox5.Text + "," + textBox6.Text + ")";

OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;

Data Source=biao.mdb");

OleDbCommand comm = new OleDbCommand(strSQL, conn);

conn.Open();

try

{

comm.ExecuteNonQuery();

MessageBox.Show("添加成功!

");

}

catch (Exception ex)

{

MessageBox.Show("添加出错!

错误原因为:

\n" + ex.Message + "\n");

}

10

 

conn.Close();

}

4.3 药品信息删除的相关代码

private void button2_Click(object sender, EventArgs e)

{

string connStr, delCmd;

OleDbConnection conn;

connStr =

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=biao.mdb";

delCmd = "Delete From b Where 药品名称= " + "'" + textBox8.Text + "'";

OleDbCommand cmd;

conn = new OleDbConnection(connStr);

try

{

conn.Open();

cmd = new OleDbCommand(delCmd, conn);

cmd.ExecuteNonQuery();

if (textBox8.Text == "")

MessageBox.Show("请输入药品名称!

");

else

MessageBox.Show("删除成功");

}

catch (Exception ex)

{

MessageBox.Show("Error in handing:

" + ex.Message);

}

finally

{

if (conn !

= null)

conn.Close();

}

}

4.4 药品信息查询的相关代码

private void button4_Click(object sender, EventArgs e)

{

string selectCmd = "Select * From b Where 药品名称=" + "'" + textBox7.Text + "'";

string connStr =

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=biao.mdb";

OleDbConnection conn;

11

 

OleDbCommand cmd;

OleDbDataReader myReader;

conn = new OleDbConnection(connStr);

conn.Open();

try

{

cmd = new OleDbCommand(selectCmd, conn);

myReader = cmd.ExecuteReader();

if (myReader.Read())

{

richTextBox1.Text = "药品名称:

" + myReader["药品名称"].ToString() + "\n"

+"价格:

" + myReader["价格"].

ToString() + "\n" +

"生产批号:

" + myReader["生产批号"].ToString() +

"\n" +"药物数量:

" + myReader["药物数量"].ToString()

+ "\n" +"生产日期:

" + myReader["生产日期"].ToString()

+ "\n" +"保质期:

" + myReader["保质期"].ToString() +

"\n";

}

else

{

MessageBox.Show("找不到该药品!

");

}

myReader.Close();

}

catch (Exception ex)

{

MessageBox.Show("错误:

" + ex.Message);

}

finally

{

if (conn !

= null)

conn.Close();

}

}

4.5 药品信息更新的相关代码

private void button1_Click(object sender, EventArgs e)

{

result = "";

OleDbConnection conn = new OleDbConnection(

"Provider = Microsoft.Jet.OLEDB.4.0;"

+ "Data Source = biao.mdb");

12

 

try

{

String strSql = "Select * From b";

conn.Open();

dadapter = new OleDbDataAdapter();

dadapter.SelectCommand = new OleDbCommand(strSql, conn);

dset = new DataSet();

dadapter.Fill(dset);

conn.Close();

dataGridView1.DataSource = dset.Tables[0];

}

catch (Exception ex)

{

MessageBox.Show("错误:

" + ex.Message);

}

finally

{

if (conn !

= null)

conn.Close();

}

}

4.6 文本框清空的相关代码

private void button6_Click(object sender, EventArgs e)

{

textBox1.Text = "";

textBox2.Text = "";

textBox3.Text = "";

textBox4.Text = "";

textBox5.Text = "";

textBox6.Text = "";

textBox7.Text = "";

textBox8.Text = "";

richTextBox1.Text = "";

}

4.7 月总收入排序的相关代码

private void button2_Click(object sender, EventArgs e)

{

OleDbConnection a = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data

Source=biao.mdb");

13

 

string sqlString = "select 月份,月总收入from 月总收入order by 月总收入";

OleDbCommand t = new OleDbCommand(sqlString, a);

a.Open();

OleDbDataReader dr = t.ExecuteReader();

richTextBox1.Text = "月份\t\t月总收入\n";

while (dr.Read())

{

richTextBox1.AppendText(dr["月份"] + "\t\t");

richTextBox1.AppendText(dr["月总收入"] + "\t\t\n");

}

a.Close();

}

 

5.设计过程中遇到的主要问题

 

1) dataGridView 在 Form 的显示

原来觉得每次打开页面,都要把数据库加载一下,觉得很多余,所以选

择打开页面直接显示 dataGridView,谁知道,后来很麻烦,每次改数据库里的

内容的时候,都要重新导入一次新的数据源,但旧的数据源依然在,总是出现

错误。

后来数据源太多了,重新做了个新的项目,把整个都复制了过来,这样

数据库的内容是定下来了,所以仍然打开页面直接显示 dataGridView。

不过,

下次做别的有关数据库的项目的时候,肯定要用加载的。

2)数据库里内容的修改

数据库里的内容有插入,删除,修改,完成控件功能后,例如,插入,

运行插入以后,看了数据库里的内容,完成了插入功能,可是,Form 中

dataGridView 没有显示。

原来,控件中的功能是与数据库相连,不过,数据库

到 Form 的显示有个时差,所以,我又加了个控件,每次修改数据库内容后,

都更新一下,那么 dataGridView 中显示的就是修改后的内容了。

3)排序问题

本来消费的表,是这样建立的,每个月都有,第一周、第二周、第三周、

第四周、月总消费额这几项。

然后,就想按照最后一行的月总消费额排序。

是,我们教过的排序就是按照竖列排列。

后来想了好久,都找不出答案。

最后,

我索性把消费的表弄成了两张,一张是显示每月的消费额,另一张就是单独的

 

14

 

月总消费额,那么就轻松地解决了排序问题。

 

6.总结

 

经过三年的学习,我们对数据库、C#等相关知识有了一定的了解。

又经过

了几次的实训,我们对理论知识运用到实际练习中又有了一定的基础。

本次实训,我做的是药店管理系统,主要练习内容就是数据库和 C#能够联

系在一起。

将做好的数据库导入窗体中,通过一些控件的功能,实现对数据库

的修改、更新。

此次主要是对于药品信息实现插入、删除、查询、更新的功能,

又对会员信息进行按编号查询的功能,最后对月总销售额进行排序的功能。

通过本次实训,我进一步巩固了做系统的相关知识,将数据库的插入、删

除、查询、排序等功能运用自如。

身份验证虽说是老生常谈的问题,我们也不

容忽视,也是很重要的一部分。

在实训过程中,难免会遇到问题,不过,经过仔细研究,不断尝试,一遍

一遍检查、调试,问题总会一个个被攻破,被解决。

我们要不怕麻烦,有耐心,

细心,仔细,那么只要你的理论知识强,再加上有动手能力,一切问题都不是

问题。

 

15

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

当前位置:首页 > IT计算机 > 电脑基础知识

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

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