在考生目录下,对数据库salary_db完成如下综合应用。
设计一个名称为FORM2的表单,在表单上设计一个“选项组”(又称选项按钮组,名称为Optiongroup1)及两个命令按钮“生成”(名称为Command1)和“退出”(名称为Command2);其中选项按钮组有“雇员工资表”(名称为Option1)、“部门表”(名称为Option2)和“部门工资汇总表”(名称为Option3)3个选项按钮。然后为表单建立数据环境,并向数据环境添加depl表(名称为Cursor1)和salary表(名称为Cursor2)。
各选项按钮功能如下:
(1)当用户选择“雇员工资表”选项按钮后,再单击“生成”命令按钮,查询显示在简单应用中创建的sview视图中的所有信息,并把结果存入表gz1.dbf中。
(2)当用户选择“部门表”选项按钮后,再单击“生成”命令按钮,查询显示dept表中每个部门的部门号和部门名称,并把结果存入表bm1.dbf中。
(3)当用户选择“部门工资汇总表”选项按钮后,再单击“生成”命令按钮,则按部门汇总,将该公司的部门号、部门名、工资、补贴、奖励、失业保险和医疗统筹的支出汇总,合计结果存入表hz1.dbf中。请注意:字段名必须与原字段名一致。
(4)单击“退出”按钮,退出表单。
注意:以上各项功能必须调试、运行通过。
参考答案:STEP 0A 新建一个名为“FORMB”的表单文件,然后在其上添加一个“命令按钮组”控件和两个“命令按钮”控件。
STEP 0B 修改“命令按钮组”控件,将其命名为“OptiongroupA”,有“雇员工资表”(名称为OptionA)、“部门表”(名称为OptionB)、“部门工资汇总表”(名称为OptionC)C个选项按钮。
STEP 0C 修改两个命令按钮,将其命名为“生成”(名称为CommandA)和“退出”(名称为CommandB)。
STEP 0D 为表单建立数据环境,并向数据环境添加“dept”表(名称为CursorA)和“salary”表(名称为CursorB)。
STEP 0E 在“表单设计器”对话框中,在“雇员工资表”按钮上单击鼠标右键,选择“代码”命令。
STEP 0F 在“CommandA.Click”窗口中,键入:cur=A。
STEP 0G 在“表单设计器”对话框中,在“部门表”按钮上单击鼠标右键,选择“代码”命令。
STEP 0H 在“CommandB.Click”窗口中,键入:cur=B。
STEP 0I 在“表单设计器”对话框中,在“部门工资汇总表”按钮上单击鼠标右键,选择“代码”命令。
STEP A0 在“CommandC.Click”窗口中,键入:cur=C。
STEP AA 在“表单设计器”对话框中,在“生成”按钮上单击鼠标右键,选择“代码”命令。
STEP AB 在“CommandA.Click”窗口中,键入:
DO CASE
CASE cur=A
SELECT salary. 部门号, salary, 雇员号, salary, 姓名, salary, 工资,;
salary. 补贴, salary, 奖励, salary, 失业保险,;
salary, 医疗统筹, salary, 工资+salary. 补贴+salary.奖金;
-salary, 失业保险-salary.医疗统筹 AS 实发工资;
FROM salary_db! Salary;
ORDER BY salary, 部门号 DESC
INTO TABLE gzA.dbf
CASE cur=B
SELECT *,
FROM salary_db! dept;
INTO TABLE bmA. dbf
OTHERWISE
SELECT dept. *. SUM (salary.工资) AS 工资, SUM (salary. 补贴) AS 补贴,;
SUM (salary. 奖励) AS 奖励, SUM (salary, )AS失业保险;
,SUM (salary.医疗统筹)AS医疗统筹;
FROM salary_db! Dept INNER JOIN salary_db! Salary;
ON dept. 部门号=salary. 部门号;
GROUP BY dept. 部门号;
INTO TABLE hzA. dbf
STEP AC 在“表单设计器”对话框中,在“退出”按钮上单击鼠标右键,选择“代码”命令。
STEP AD 在“CommandB.Click”窗口中,键入:thisform.release。