2000年(春)江苏省普通高校非计算机专业学生
计算机基础知识和应用能力等级考试上机试卷
二级 Visual FoxPro 5.0 (VFP01)
(本试卷上机考试时间为70分钟)
说明:
1.首先运行考试软盘A中的“准考证”应用程序文件,输入考生的准考证号、试卷代号。
2.启动VFP5.0系统后,在命令窗口中执行命令:
set default to A:
以设置默认的工作目录,然后再开始作题。
一、项目、数据库和表操作
1. 在A盘根目录中已存在“职工管理”项目文件ZGGL.PJX。打开项目,将A盘根目录中已存在的数据库文件ZGK.DBC加入到项目中。
2. 将A盘根目录已存在的“部门”表BM.DBF添加到ZGK数据库中。
3. 在ZGK数据库中含有“职工”表ZG,按下表设置ZG表有关字段的标题和默认值:
字段名 |
标题 |
默认值 |
Gh |
工号 |
|
Xb |
性别 |
"男" |
Bm |
部门 |
|
Csrq |
出生日期 |
|
Gl |
工龄 |
|
4. 在ZGK数据库中含有“工资”表GONGZI,按下表设置GONGZI表的字段验证信息和默认值,并根据字段验证信息设置字段的验证规则。
字段 |
字段验证信息 |
默认值 |
基本工资 |
"基本工资应该在200至2000之间" |
|
公积金 |
|
基本工资*0.05 |
5. 根据如下的记录验证信息设置GONGZI表的记录验证规则和验证信息:
“公积金应为基本工资的5%”
6. 在ZGK数据库中已存在职工表与工资表之间的永久关系,设置永久参照完整性:
.当职工表中的关键字值被修改时,工资表中相关记录的关键字值跟着变化
.当删除职工表中的记录时,同时删除工资表中相关记录
二、设置查询
在ZGGL项目中创建查询zggzb.qpr。查询文件保存到A盘根目录中。
基于职工表和工资表查询职工的工号、姓名、基本工资、岗位津贴、年功津贴、应发金额和实发金额。应发金额和实发金额的计算公式如下:
应发金额=基本功资+岗位津贴+年功津贴
实发金额=基本功资+岗位津贴+年功津贴-公积金
要求如下:
(1)输出字段为:工号、姓名、基本功资、岗位津贴、年功津贴、应发金额和实发金额;
(2)按照工号字段的升序排序。
三、设计菜单
在A盘的根目录中已存在菜单文件MENU5.MNX,在菜单设计器中打开该菜单,并另存为MENU5A.MNX(提示:"另存为"在"文件"菜单中),按如下要求修改MENU5A菜单,完成后添加到ZGGL项目中。
(1)为“文件(F)”菜单栏上的“F”字母设置下划线,即设置激活“文件”菜单栏的热键为“ALT+F”;
(2)为“打开项目…”项设置执行的命令:MODIFY PROJECT;
(3)为“文件(F)”菜单中的“退出”项设置快捷键ALT+X.
修改后的菜单如下图所示:
四、 设计表单
在A盘根目录中已存在一个表单zggz.scx,如下图所示。在表单设计器中打开该表单,并另存为文件zggza.scx。
按如下要求修改zggza表单。完成后,把该表单添加到ZGGL项目中。
(2)在表单的INIT事件代码中创建两个公共变量:nYfje和nSfje,用以存储应发金额和实发金额,并按第二大题中的第1小题中的计算公式赋初值。
(3)设置表单中文本框txtSfje和txtYfje的ControlSource分别为nYfje 和nSfje,并设置这两个控件不可编辑。
(4)在A盘的根目录中有一个类库文件mylib.vcx(已包含在ZGGL项目中),类库中包含一个“移动记录指针”的工具栏子类tbrRec。为了能在该表单中移动记录,请创建表单集,并在表单集中引用工具栏类tbrRec创建工具栏对象。
(5)为了使工资表(gongzi)中的记录指针随主表职工表(zg)指针的移动而移动,请在表单集的数据环境中设置zg表和gongzi表之间的临时关系。
(6)为了能使文本框txtYfje和txtSfje中的值随记录指针的移动而变化,请在表单的REFRESH方法代码中调用表单的INIT事件代码。
|