6.1 窗体对象功能分析
Access 2003数据库应用系统中的窗体对象
主要用于形成人机操作界面, 操作者将在这
个界面上完成自己份内的工作 。 可以就第 1
章中分析得到的三个窗体对象进行功能分析 。
返回
6.1.1,商品进货数据录入, 窗
体功能分析
6.1.2,商品上柜数据录入, 窗
体功能分析
6.1.3,销售数据录入, 窗体功
能分析
6.1.1,商品进货数据录入”窗体功能分
析这个窗体提供的操作界面供商店管理人员使用,
商店管理人员通过在这个窗体界面上的操作,完
成进货数据(包括商品货号、商品名称、商品规
格、计量单位、进货单价、进货数量,等等)的
录入。
每一项进货数据输入完毕,都必须根据本次进货
商品数据修改“库存数据记录”数据表中的对应
数据(比如,库存数量 =原库存数量 +本次进货数
量),以保证“库存数据记录”数据表中数据的
正确性。同时,还应该记录的数据包括“进货日
期”、“收货人”和“供货商”等数据。
在为操作者设计操作方式时(参见图 5-33),可
以这样考虑,操作者在标签为“进货货号”的
文本框内输入进货商品货号。接着可能存在两
种情况:如果该进货商品已有库存,则在“库
存数据记录”表定位这个商品的记录,并在
“商品进货数据录入”窗体页眉中的各个“未
绑定”文本框中显示这个商品的相应数据;如
果该进货商品没有库存,则弹出对话框请操作
者确认货号输入无误,得到确定后允许操作者
输入商品名称、规格、计量单位等项数据。这
里,显然需要针对标签为“进货货号”的文本
框编写一个方法(程序),用以处理该文本框
控件的数据更新事件( AfterUpdate Event)。
一旦商品进货数据输入完毕,操作者可以单击位
于窗体页脚中的“保存记录”命令按钮,用以完
成将所有进货数据写入“进货数据记录”数据表
的过程。显然,这里需要针对“保存记录”命令
按钮编写一个方法(程序),用以处理该命令按
钮控件的单击事件( Click Event)。
最后,还需为位于窗体页脚中的“退出”命令按
钮编写一个方法(程序),用以处理该命令按钮
控件的单击事件( Click Event)。保证当操作者
单击这个命令按钮时,能够关闭“商品进货数据
录入”窗体。
基于上述分析, 需要在, 商品进货数据录入,
窗体对象中编写三段程序:, Private Sub
Text19_AfterUpdate()”,, Private Sub
Command35_Click()” 和, Private Sub
Command47_Click()”。 其中假定标签为
,进货货号, 的文本框, 名称, 属性值为
,Text19”,位于窗体页脚中的, 保存记
录, 命 令 按 钮 的, 名称, 属 性 值 为
,Command35”,位于窗体页脚中的, 退
出, 命 令 按 钮 的, 名称, 属 性 值 为
,Command47”。
?这个窗体提供的操作界面也是供商店管理
人员使用的,当商店管理人员在发现某些
商品的柜存数量偏少时,必须将这些商品
由库存中搬至销售柜台上。考察商品数据
流,也就是减少“库存数据记录”数据表
中的对应商品库存数据记录,并增加“柜
存数据记录”数据表中的对应商品柜存数
据记录。
?商店管理人员通过在这个窗体界面上的操
作,完成上柜商品数据(包括商品货号、
商品名称、商品规格、计量单位、销售单
价、上柜数量,等等)的录入。
6.1.2,商品上柜数据录入”窗体功能分析
每一项上柜数据输入完毕, 都必须根
据实际输入的数据修改, 库存数据
记录, 数据表中的对应数据 ( 比如,
库存数量 =原库存数量 -本次上柜数
量 ), 以保证, 库存数据记录, 数
据表中数据的正确性 。 同时, 还应
该修改, 柜存数据记录, 数据表中
的对应数据 ( 比如, 柜存数量 =原柜
存数量 +本次上柜数量 ) 。 最后, 还
应该记录的数据包括, 上柜日期,,
,上柜人, 和, 营业员, 等数据 。
在为操作者设计操作方式时 ( 参见图 5-
34), 可以这样考虑, 操作者在标签为
,商品货号, 的文本框内输入进货商品
货号, 接着可能存在两种情况:如果该
进货商品已有库存, 则在, 库存数据记
录, 表定位这个商品的记录, 并在, 商
品上柜数据录入, 窗体页眉中的各个
,未绑定, 文本框中显示这个商品的相
应数据;如果该进货商品没有库存, 则
弹出对话框提示操作者商品货号输入有
误, 这是因为没有库存的商品是不可能
上柜的, 在得到操作者认定后允许操作
者重新输入商品货号 。 这里, 显然需要
针对标签为, 商品货号, 的文本框编写
一个方法 ( 程序 ), 用以处理该文本框
控件的数据更新事件 ( AfterUpdate
Event) 。
一旦某一个商品上柜数据输入完毕,
操作者可以单击位于窗体页脚中的
“保存数据”命令按钮,用以完成
将商品上柜数据写入“库存数据记
录”数据表、改写“库存数据记录”
数据表的过程。显然,这里需要针
对“保存数据”命令按钮编写一个
方法(程序),用以处理该命令按
钮控件的单击事件( Click Event)。
?接着,还需为位于窗体页脚中的“退出”命
令按钮编写一个方法(程序),用以处理该
命令按钮控件的单击事件( Click Event)。
保证当操作者单击这个命令按钮时,能够关
闭“商品上柜数据录入”窗体。
?最后,还需要为“商品上柜数据录入”窗体
页脚中的“查阅库存商品数据记录”命令按
钮编写一个方法(程序),用以处理该命令
按钮控件的单击事件( Click Event)。保证
当操作者单击这个命令按钮时,能够调用
“商品库存数据查询”窗体,以便操作者能
够在商品上柜过程中随时查阅商品库存数据。
基于上述分析, 需要在, 商品上柜数据
录入, 窗体对象中编写四段程序:,Private Sub Text19_AfterUpdate()”、
,Private Sub Command35_Click()”、
,Private Sub Command47_Click()” 和
,Private Sub Command63_Click()”。 其
中, 假定标签为, 商品货号, 的文本框, 名称, 属性值为, Text19”,位于
窗体页脚中的, 保存数据, 命令按钮
的, 名称, 属性值为, Command35”,
位于窗体页脚中的, 退出, 命令按钮
的, 名称, 属性值为, Command47”,
位于窗体页脚中的, 查阅库存商品数
据记录, 命令按钮的, 名称, 属性值
为, Command63”。
?营业员出售商品并将其出售商品的种类
与数量等信息记录在“销售数据记录”
数据表中,这一职责称为“销售数据录
入”。
?从管理职能上讲,售货员仅有权以销售
单价出售存放在销售柜台上的商品,无
权访问库存商品记录。而任一商品的销
售单价均由管理人员通过“商品上柜数
据录入”操作予以指定,售货员无权更
改。
6.1.3,销售数据录入”窗体功能分析
在为营业员设计操作方式时 ( 参见图 5-35),
可以这样考虑, 营业员首先必须在位于
,销售数据录入, 窗体页眉中的标签为
,销售日期, 的文本框控件中输入当天的
日期, 而后在位于, 销售数据录入, 窗体
页眉中的标签为, 营业员, 的组合框控件
中选定自己的姓名 。 此时, 位于, 销售数
据录入, 窗体主体中的子数据表中显示该
营业员当天的全部销售数据 。 为此, 显然
需要针对标签为, 营业员, 的组合框控件
编写一个方法 ( 程序 ), 用以处理该组合
框控 件的数据更 新事件 ( AfterUpdate
Event) 。
接着,营业员可以在标签为“商品货号”的
文本框内输入销售商品货号,接着可能存
在两种情况:如果该进货商品已有柜存,
则在“柜存数据记录”表定位这个商品的
记录,并在“销售数据录入”窗体页眉中
的各个“未绑定”文本框中显示这个商品
的相应数据;如果该销售商品没有柜存,
则意味着营业员输入的货号有误,安排弹
出一个对话框提示营业员操作有误。这是
因为没有柜存的商品是不可能销售的,在
得到营业员认定后允许营业员重新输入商
品货号。这里,显然需要针对标签为“商
品货号”的文本框编写一个方法(程序),
用以处理该文本框控件的数据更新事件
( After Update Event)。
一旦某一件商品的销售数据输入完毕,
即当营业员在位于窗体页眉中的标签
为, 销售数量, 的文本框中输入了销
售数量时,, 销售数据记录, 数据表
中应该增加一条记录, 并显示在位于
,销售数据录入, 窗体主体中的子数
据表中 。 同时改写, 柜存数据记录,
数据表中该商品的柜存数据 。 另外,
还需要分别在位于窗体页脚中的标签
为, 商品个数, 和, 应收金额, 的文
本框内显示实际销售商品个数和累计
销售金额 。 显然, 需要为标签为, 销
售数量, 的文本框编写一个方法 ( 程
序 ), 用以处理该文本框控件的失去
焦点事件 ( Lost Focus Event) 。
当营业员服务完一个顾客, 即输
入了这个顾客所需购买的全部
商品数据时, 营业员应该单击
位于窗体页脚中的, 现金收讫,
命令按钮, 用以完成将本次销
售数据全部写入, 销售数据记
录, 数据表中 。 显然, 这里需
要针对, 现金收讫, 命令按钮
编写一个方法 ( 程序 ), 用以
处理该命令按钮控件的单击事
件 ( Click Event) 。
?接着,还需为位于窗体页脚中的“退出”
命令按钮编写一个方法(程序),用以处
理该命令按钮控件的单击事件( Click
Event)。保证当操作者单击这个命令按钮
时,能够关闭“商品上柜数据录入”窗体。
?最后,还需要为“销售数据录入”窗体页
脚中的“柜存信息”命令按钮编写一个方
法(程序),用以处理该命令按钮控件的
单击事件( Click Event)。保证当营业员单
击这个命令按钮时,能够调用一个名为
“柜存信息”宏对象,以便操作者能够在
商品销售过程中随时查阅商品柜存数据。
基于上述分析,需要在“销售数据录入”窗体对象
中编写五段程序:,Private Sub
Combo45_AfterUpdate()”、,Private Sub
Text19_AfterUpdate()”、,Private Sub
Command35_Click()”、,Private Sub
Command47_Click()” 和,Private Sub
Text27_LostFocus()”。其中,假定位于窗体页眉
中的标签为“营业员”的组合框“名称”属性值
为,Combo45”,位于窗体页眉中的标签为“商品
货号”的文本框“名称”属性值为,Text19”,位
于窗体页脚中的“现金收讫”命令按钮的“名称”
属性值为,Command35”,位于窗体页脚中的
“退出”命令按钮的“名称”属性值为
,Command47”,位于窗体页眉中的标签为“销
售数量”的文本框“名称”属性值为,Text27”。
除此之外,还需要为位于窗体页脚中的“柜存信
息”命令按钮编写调用宏对象的方法,这将留待
后续章节介绍。