VB课设食品信息管理Word文档格式.docx
- 文档编号:19651201
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:35
- 大小:210.28KB
VB课设食品信息管理Word文档格式.docx
《VB课设食品信息管理Word文档格式.docx》由会员分享,可在线阅读,更多相关《VB课设食品信息管理Word文档格式.docx(35页珍藏版)》请在冰豆网上搜索。
________
五、成绩
六、教师评语
目录
一、需求分析4
二、设计分析4
三、技术要点6
四、总结20
五、完整的源程序21
六、参考文献35
一、需求分析
随着计算机技术的飞速发展,其应用方面已渗透到社会生活的各个领域。
它已经成为我们学习和工作的得力助手。
在企业,尤其是在一些销售食品的企业,食品是他们的一项重要资源,食品信息的管理也是他们的一项常规性的重要工作。
而长期以来,大多数小的企业的仓库对这些食品库存信息的管理都是依赖人工进行的。
现今,有很多的企业或小的售货部都已经开始使用计算机进行食品库存信息的管理,并且起得良好的效果。
特别是随着现代化技术的发展,各种社会产品大生产更是让食品信息错综复杂,所以食品信息的管理工作越来越繁重,但由于种种原因,管理人员并没有增加,因此原有的人工管理工作已不能适应现行的工作需要。
同时,陈旧的人工管理也不利于推广计算机应用,为使食品库存管理工作科学化、规范化,就必须采用计算机辅助管理。
二、设计分析
(1)基本原理:
建立程序设计与数据库的连接,用SQL语句在数据库中查找、添加、更改数据以及对数据的统计等。
本程序主要的功能有:
①操作员管理:
每个登陆系统的用户都可以修改自己的登陆密码信息,但是要对其他用户的权限进行管理需要拥有管理权限,拥有此权限可以对其他的用户进行权限的分配,可以添加、更改、删除用户信息。
②生产厂家管理:
每种食品都有其生产厂家,本程序将生产厂家另外归类,使便于对生产厂家进行管理,添加新食品时需要选择生产厂家,本模块可以添加新的厂家,也可以修改、删除已有的厂家。
③食品信息管理:
作为一个食品的仓库,一定存在许多不同厂家的食品,为了对这些商品进行高效的管理,每个商品属于不同的生产厂家。
本程序包括新食品信息的录入、已有食品信息的修改,如修改该食品的生产厂家和库存等、食品信息的查询,可以按食品名称关键字和食品编号对食品信息进行查询、食品信息的删除。
④库存统计:
在日常生活中,我们需要实时了解仓库里的总价值、各个厂家都有多少食品。
本程序包括统计库存的总价值、统计库存里厂家所含有的商品类别数。
(2)总体设计:
图1总体设计
(3)详细设计:
图2详细设计
三、技术要点
(1)建立与数据库的连接代码如下:
PubliccnAsADODB.Connection'
全局的数据库连接对象
PublicSubcondatabase()'
创建连接到Food数据库的记录源
Setcn=NewADODB.Connection
cn.ConnectionString="
provider=Microsoft.Jet.OLEDB.4.0;
Datasource="
&
App.Path&
"
\Food.mdb"
cn.Open
EndSub
PublicSubcheck_condatabase()'
检查数据库连接
Ifcn.State=1Then
Else
Callcondatabase
EndIf
PublicSubclose_condatabase()'
关闭数据库
cn.Close
(2)添加、修改、删除厂家。
Recordset.Fields("
字段名"
)=值
程序段如下:
PrivateSubCommand1_Click()‘添加厂家
CallAddUnit
PublicSubAddUnit()‘添加厂家
DimunitsAsString
units=InputBox("
请输入要添加的厂家"
"
添加厂家"
)
Ifunits<
>
"
Then
Adodc1.Recordset.AddNew
Adodc1.Recordset.Fields("
厂家"
)=units
Adodc1.Recordset.Update
PrivateSubCommand2_Click()‘删除厂家
Adodc1.Recordset.Delete
PrivateSubCommand3_Click()‘修改厂家
DataGrid1.AllowUpdate=True
窗体-厂家管理:
图3厂家管理
(3)添加、修改、删除食品
Select<
字段名表>
From<
表名>
Where<
条件>
DimfdAsADODB.Recordset
PrivateSubFadd()‘添加食品
IfText2.LockedThen
fd.Open"
select*fromfoodwhere食品编号='
Text1&
'
cn,adOpenStatic,adLockPessimistic
fd.Fields("
库存数量"
)=fd.Fields("
)+Val(Text4)
fd.Update
select*fromfood"
fd.AddNew
食品编号"
)=Text1
食品名称"
)=Text2
生产厂家"
)=Combo1.Text
单价(元)"
)=Text3
)=Text4
MsgBox"
添加成功!
vbOKOnly
UnloadFoodAdd
Main.Adodc1.RecordSource="
Main.Adodc1.Refresh
PrivateSubForm_Load()‘加载厂家到列表框
Callcheck_condatabase
Setfd=NewADODB.Recordset
select*fromUnits"
Combo1.Clear
DoUntilfd.EOF
Combo1.AddItemfd.Fields("
fd.MoveNext
Loop
fd.Close
PrivateSubText1_LostFocus()‘检验食品编号是否存在
IfNotIsNumeric(Text1)Then
Text1="
Text1.SetFocus
Iffd.Fields("
)="
Text2="
Text2.Locked=False
Text3="
Text3.Locked=False
Text4="
Text5="
Text5.Locked=True
Combo1.Text="
Combo1.Locked=False
Text2=fd.Fields("
Text2.Locked=True
Text3=fd.Fields("
Text3.Locked=True
Text5=fd.Fields("
Combo1.Text=fd.Fields("
Combo1.Locked=True
PrivateSubCommand1_Click()‘添加食品
IfText1="
请输入食品编号"
ElseIfText2="
请输入食品名称"
ElseIfCombo1.Text="
请选择食品厂家"
ElseIfText3="
请输入食品单价"
ElseIfText4="
请输入进货数量"
CallFadd
窗体-添加食品:
图4添加食品
PrivateSubCommand2_Click()
Adodc1.Recordset.Delete
Adodc1.Recordset.Update
PrivateSubCommand5_Click()
DataGrid1.AllowUpdate=True
窗体-食品管理:
图5食品管理
(4)查询食品,按编号或按名称
PrivateSubFromNumber_Click()
DimnumAsString
Main.StatusBar1.Panels
(1).Text="
状态:
按编号查询"
num=InputBox("
请输入要查询的编号:
按编号查询"
IfNotIsNumeric(num)Then
请重新输入编号(只能是数字):
Adodc1.RecordSource="
num&
Adodc1.Refresh
无"
PrivateSubFromName_Click()
DimnameAsString
按名称查询"
name=InputBox("
请输入要查询的名称:
按名称查询"
select*fromfoodwhere食品名称='
name&
窗体-按编号查询:
图6按编号查询
窗体-按名称查询:
图7按名称查询
(5)价值统计以及厂家统计
SelectCount<
As<
字段名>
From<
PrivateSubValueCount_Click()
Dims!
Callcheck_condatabase
Setcou=NewADODB.Recordset
cou.Open"
select*fromFood"
cou.MoveFirst
s=0
DoUntilcou.EOF
s=s+cou.Fields("
)*cou.Fields("
cou.MoveNext
Loop
cou.Close
MsgBox"
食品库存价值总量为:
s&
vbOKOnly+vbInformation,"
价值统计"
窗体-价值统计:
图8价值统计
PrivateSubForm_Load()
Adodc1.ConnectionString=cn.ConnectionString
Adodc1.CommandType=adCmdText
Adodc1.RecordSource="
select生产厂家,count(*)as食品类数fromfoodgroupby生产厂家"
SetDataGrid1.DataSource=Adodc1
Adodc1.Refresh
DataGrid1.AllowUpdate=False
窗体-厂家统计:
图9厂家统计
(5)用户管理,包括用户登陆、更改密码、切换用户
DimchkpasswordAsString'
检查密码是否正确
PublicLoginSucceededAsBoolean'
全局变量表示登陆是否成功
DimrsloadAsADODB.Recordset
Password.Text="
Callcondatabase'
连接数据库
Setrsload=NewADODB.Recordset
rsload.Open"
select*fromUsers"
Users.Clear
DoUntilrsload.EOF'
将所有的帐户名称加入用户名下拉框中
Users.AddItemrsload.Fields("
用户名"
rsload.MoveNext
Ifusername<
ThencmdCancel.Caption="
返回"
PrivateSubUsers_Click()
Ifrsload.State=1Thenrsload.Close
select密码fromUserswhere用户名='
Users.Text&
Password.SetFocus
chkpassword=rsload.Fields("
密码"
)'
根据下拉框中的用户名得到该用户的正确密码信息
PrivateSubcmdOK_Click()
IfUsers.Text="
别忘了用户名:
)"
vbOKOnly+vbExclamation,"
:
("
ExitSub
EndIf
IfPassword.Text<
IfPassword.Text=chkpasswordThen
LoginSucceeded=True
select*fromUserswhere用户名='
Ifrsload.Fields("
管理"
)<
czry_flag=rsload.Fields("
).Value
Else
czry_flag="
username=Users.Text'
保存全局的登陆帐户名
Main.StatusBar1.Panels
(2).Text="
操作人员:
Users.Text
Main.StatusBar1.Panels
(1).Text="
UnloadLogin
Main.Show
无效的密码,请重试!
登陆失败"
别忘了请输入密码:
Callclose_condatabase
窗体-用户登陆:
图10用户登陆
Callcheck_condatabase'
select*fromusers"
PrivateSubCommand1_Click()
DimUser,passAsString
Adodc1.Recordset.AddNew
User=InputBox("
请输入要添加的用户名"
添加用户"
pass=InputBox("
请输入所添加用户的密码"
用户密码"
Adodc1.Recordset.Fields("
)=User
)=pass
PrivateSubCommand3_Click()
IfAdodc1.Recordset.Fields("
)=1
窗体-用户管理:
图11用户管理
DimrsAsADODB.Recordset
DimOpwAsString
Setrs=NewADODB.Recordset
Setrs.ActiveConnection=cn
rs.LockType=adLockOptimistic
rs.CursorType=adOpenKeyset
rs.Open"
select*fromUserswhere用户名="
username&
Opw=rs.Fields("
获取密码'
核对密码
IfText1.Text=OpwThen
IfText2=Text3Then
IfText2="
OrText3="
请输入密码!
WARNING"
Else'
如满足条件,则更新密码
rs.Fields("
)=Text2'
是否有问题?
?
rs.Update
密码修改成功!
vbOKOnly+64,"
SURE"
Text1="
Text2="
Text3="
UnloadChPW
密码输入不同!
48,"
warning"
原密码错误!
窗体-更改密码:
图12更改密码
四、总结
通过本次课程设计的学习,加深我对VB数据库的了解,使我能更熟练的使用,对ADO数据控件的使用,数据的绑定,浏览记录集的编辑,查询和统计有了更深的认识,并且巩固了使用SQL查询数据库数据的方法。
在对课设的任务书认真阅读后,经过细心的设计和策划,将程序功能划分好,设计好各个模块,再将各个模块逐一编程,最张将各个模块整合到一起,做出了完整的程序,虽然界面不是很美观,但是功能上一点也不欠缺,圆满完成了任务。
最后,通过本次的课程设计,我意识到了自身在在的不足,使我对计算机进行系统设计的整个过程有了一个清楚的认识,运用了软件件工程从需求到概要设计,最后才是详细设计和编码的过程,再也不是以前那种代码写到哪里哪里停的情况。
让我懂得了,只有对这个系统的数据模型有
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 食品 信息管理