江苏省高校计算机等级考试命题研究院 江苏省高校计算机等级考试辅导
2000年(春)vfp上机试题

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项目中。

(1)将表单的标题修改为“职工工资情况”

(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事件代码。