数据库课程设计库存销售管理系统Word格式.doc
《数据库课程设计库存销售管理系统Word格式.doc》由会员分享,可在线阅读,更多相关《数据库课程设计库存销售管理系统Word格式.doc(21页珍藏版)》请在冰豆网上搜索。
l根据销售日期统计商品的销售数据。
3.实验步骤
3.1设计数据库
建立一个名为“DB_KCGL”的数据库,根据前述的主要功能目标,需要建立3个数据表(关系):
(1)货物的出入库信息:
保存货物的出入库信息
lid:
库存货物信息的编号,主码,建议长度为18的numeric类型。
ltb_title:
库存货物的名称,建议长度为50的varchar类型。
ltb_style:
库存货物的类型,建议长度为50的varchar类型。
ltb_nums:
库存货物的数量,建议为整型int。
ltb_values:
库存货物的价格,实数类型real。
ltb_date:
库存货物的入库日期,时间日期类型datetime。
ltb_mark:
库存货物的备注信息,建议长度为50的varchar类型。
(2)商品的销售信息:
保存商品的销售信息
商品销售信息的编号,主码,建议长度为18的numeric类型。
销售商品的名称,建议长度为50的varchar类型。
建议为整型int。
销售商品的总价,浮点类型float。
商品销售的日期,时间日期类型datetime。
(3)系统用户的信息:
保存系统用户的信息
用户信息的编号,主码,建议长度为18的numeric类型。
ltb_name:
用户名称,建议长度为50的varchar类型。
ltb_pas:
用户的密码信息,建议长度为50的varchar类型。
3.2设计连接数据库的模块
需要首先建立一个连接数据库的模块,这样应用程序才能与数据库中的数据表取得连接,将数据信息从数据表中读出到应用程序中或通过应用程序保存到数据表中。
为此,建立一个负责数据库连接的模块如下:
(1)选择“工程”菜单下的“添加模块”命令,在应用程序中添加一个模块Module1。
(2)Module1模块的实现如下:
'
数据连接模块
PublicMyStrsAsString
PublicDB_AdoRsAsNewADODB.Recordset'
后添加一个记录集对象
PublicDB_AdoRs1AsNewADODB.Recordset'
PublicDB_AdoRs2AsNewADODB.Recordset'
PublicFunctionCnn()AsADODB.Connection'
定义连接字符串函数
SetCnn=NewADODB.Connection
Cnn.Open"
Provider=SQLOLEDB.1;
IntegratedSecurity=SSPI;
PersistSecurityInfo=False;
InitialCatalog=DB_KCGL;
DataSource=."
EndFunction
PublicSubMain()
MyStrs="
'
显示系统登录窗体
Form1.Show
EndSub
(3)这里需要将程序的入口设置为模块中的Main()函数。
选择“工程”菜单下的“工程属性”命令,在“通用”标签中进行相应设置。
3.3系统登陆模块设计
在本库存销售管理系统中,只有授权用户(管理员)可以登录并进行库存和销售信息管理与维护,因此需要一个系统登录界面,防止非法用户登录到系统中,从而保证了应用程序的安全性和可靠性。
3.3.1登录窗体设计
设计如下的登录窗体,在窗体中要添加一个ADO控件,命名为Adodc1。
(1)登录窗体启动之后,需要将系统用户的信息数据表中的所有用户名称信息添加到窗体的ComboBox控件的Op_Name属性中,即实现在“操作员名称”下拉列表中可以出现系统当前的操作员信息,供登录用户选择。
PrivateSubForm_Load()
使用代码连接数据库与数据表
Adodc1.ConnectionString=MyStrs
Adodc1.RecordSource="
select*from系统的用户信息"
Adodc1.Refresh
IfAdodc1.Recordset.RecordCount>
0Then
Adodc1.Recordset.MoveFirst
Op_Name.Clear'
在添加数据时,首先清空控件中的内容
DoWhileAdodc1.Recordset.EOF=False'
将操作员信息添加到下拉列表框控件当中
Op_Name.AddItem(Adodc1.Recordset.Fields("
tb_name"
))
Adodc1.Recordset.MoveNext
Loop
EndIf
(2)当用户在“操作员名称”下拉列表中选择操作员的名称,并且在“操作员密码”文本框输入正确的密码之后,单击“确定”按钮将登录到系统中,否则将无法登录系统。
具体实现如下:
PrivateSubCmd_Ok_Click()
Adodc1.RecordSource="
select*fromTb_Userwheretb_name='
"
&
Op_Name.Text&
"
Adodc1.Refresh
IfAdodc1.Recordset.RecordCount>
MPassword=Adodc1.Recordset.Fields("
tb_pas"
)
IfTxt_Password.Text=MPasswordThen'
判断数据的密码是否正确
Name1=Op_Name.Text
Frm_Main.StatusBar1.Panels.Item
(2).Text="
当前操作员:
+Adodc1.Recordset.Fields("
Frm_Main.Show'
通过身份验证则显示主窗体,登录到系统当中
UnloadMe
Else
MsgBox"
密码不正确,请您确认后重新输入"
,"
提示信息"
Txt_Password.Text="
Txt_Password.SetFocus
EndIf
Else
MsgBox"
对不起没有此用户的信息"
Op_Name.Text="
Txt_Password.Text="
EndIf
3.4系统主界面的实现
3.4.1主界面设计
(1)在工程中添加一个窗体,将窗体命名为Frm_main,将窗体Caption属性设置为“库存管理系统”。
(2)添加一个Toolbar控件,工具栏由“修改密码”、“库存管理”、“商品销售”、“销售统计”和“退出系统”5个按钮组成。
(3)添加一个StatusBar控件,使得状态栏中能够显示登录操作员姓名和当前系统时间等信息。
(4)在主窗体上添加一个时钟控件,用于显示系统当前日期和时间信息。
(5)在主窗体上添加一个Label标签控件,将其Caption属性设置为“库存管理系统”。
3.4.2代码实现
(1)窗体启动时,在窗体的状态栏中将显示当前系统的日期信息:
StatusBar1.Panels.Item(3).Text=Format(Now,"
yyyy年mm月dd日"
(2)单击窗口工具栏按钮时,将会调用系统的各个子功能模块:
PrivateSubToolbar1_ButtonClick(ByValButtonAsMSComctlLib.Button)
SelectCaseButton.Index
Case1
Frm_Pas.Show'
修改密码
Case2
Frm_Inout.Show'
库存管理
Case3
Frm_Sale.Show'
商品销售
Case4
Frm_Stat.Show'
销售统计
Case5
End'
退出系统
EndSelect
(3)在时钟控件的Timer事件中添加如下代码,实现在状态栏中显示当前系统时间的功能:
PrivateSubTimer1_Timer()
StatusBar1.Panels.Item(4).Text=Time
(4)再向状态栏中添加公司名称,操作员和公司网址信息。
系统主窗体的运行界面如下图所示:
3.5出入库管理模块的设计与实现
该模块主要是记录和维护库存中的货物信息,其中包括对货物信息的删除、修改和保存等方面的功能。
3.5.1窗体界面设计
(1)在工程中添加一个窗体,命名为Frm_Inout,将窗体Caption设置为“出入库管理”。
(2)在窗体上添加相应的控件,如下图所示。
(3)通过“工程”菜单下的“部件”命令将DataGrid数据表格控件添加到工具箱中,然后在窗体上添加1个数据表格控件DataGrid1。
(4)在窗体上添加一个ADO控件Adodc1,