1、二级 VISUAL+FOXPRO 机试 36 及答案解析(总分:100.00,做题时间:90 分钟)一、B一 基本操作题/B(总题数:1,分数:30.00)1.将数据库 stu 添加到项目 my 中。 (2)修改表单 for,将其中标签的字体大小修改为 20。 (3)把表单for 添加到项目 my 中。 (4)为数据库 stu 中的表“学生”建立惟一索引,索引名称为 tel,索引表达式为“电话”。(分数:30.00)_二、B二 简单应用题/B(总题数:1,分数:40.00)2.在考生文件夹下完成如下简单应用: (1)将 customer1 表中的全部记录追加到 customer 表中,然后用S
2、QL SELECT 语句完成查询:列出目前有订购单的客户信息(即有对应的 order_list 记录的 customer 表中的记录),同时要求按客户号升序排序,并将结果存储到 results 表中(表结构与 customer 表结构相同)。 (2)打开并按如下要求修改 form1 表单文件(最后保存所做的修改 s): 在“确定”命令按钮的 Click 事件(过程)下的程序有两处错误,请改正之; 设置 Text2 控件的有关属性,使用户在输入口令时显示“*”(星号)。(分数:40.00)_三、B三 综合应用题/B(总题数:1,分数:30.00)3.使用报表设计器建立一个报表,具体要求如下: 报
3、表的内容(细节带区)是 order_list 表的订单号、订购日期和总金额。 增加数据分组,分组表达式是“order_list.客户号”,组标头带区的内容是“客户号”,组注脚带区的内容是该组订单的“总金额”合计。 增加标题带区,标题是“订单分组汇总表(按客户)”,要求是 3 号字、黑体,括号是全角符号。 增加总结带区,该带区的内容是所有订单的总金额合计。最后将建立的报表文件保存为 report1.frx 文件。 提示:在考试的过程中可以使用“显示预览”菜单查看报表的效果。(分数:30.00)_二级 VISUAL+FOXPRO 机试 36 答案解析(总分:100.00,做题时间:90 分钟)一、
4、B一 基本操作题/B(总题数:1,分数:30.00)1.将数据库 stu 添加到项目 my 中。 (2)修改表单 for,将其中标签的字体大小修改为 20。 (3)把表单for 添加到项目 my 中。 (4)为数据库 stu 中的表“学生”建立惟一索引,索引名称为 tel,索引表达式为“电话”。(分数:30.00)_正确答案:()解析:(1)从菜单栏里单击“文件”并选择“打开”,或直接单击工具栏上的“打开”图标,在弹出的对话框中选择要打开的项目文件 my.pjx。在项目管理器 my 中,首先在“数据”选项卡中选择“数据库”,然后单击选项卡右边的“添加”命令按钮,在系统弹出的“打开”对话框中,将
5、考生文件夹中的数据库stu 添加到项目管理器中,单击“确定”按钮。 (2)从菜单栏里单击“文件”并选择“打开”,或直接单击工具栏上的“打开”图标,在弹出的对话框中选择要打开的表单文件 for.scx。单击表单上的标签控件,在其属性窗口中,把 FontSize 的属性值改为“20”。单击工具栏上的“保存”图标,将更改保存。 (3)在项目管理器 my 中,首先在“文档”选项卡中选择“表单”,然后单击选项卡右边的“添加”命令按钮,在系统弹出的“打开”对话框中,将考生文件夹中的表单 for.scx 添加到项目管理器中,单击“确定”按钮。 (4)在命令窗口输入命令:MODIFY STRUCTURE,在弹
6、出的对话框中选择“学生”表,进入“学生”的数据表设计器界面,然后单击“索引”选项卡,此选项卡中的“索引名”和“索引表达式”分别改为 tel和“电话”,在“索引类型”的下拉框中,选择“惟一索引”。单击“确定”按钮,保存数据表修改。 解析 本大题主要考查数据库的添加、表单属性的更改,添加表单以及建立索引。数据库添加可以通过项目管理器中的命令按钮,建立索引表可以在数据表设计器中完成。值得注意的是考生应该熟悉表单各控件的各个属性。二、B二 简单应用题/B(总题数:1,分数:40.00)2.在考生文件夹下完成如下简单应用: (1)将 customer1 表中的全部记录追加到 customer 表中,然后
7、用SQL SELECT 语句完成查询:列出目前有订购单的客户信息(即有对应的 order_list 记录的 customer 表中的记录),同时要求按客户号升序排序,并将结果存储到 results 表中(表结构与 customer 表结构相同)。 (2)打开并按如下要求修改 form1 表单文件(最后保存所做的修改 s): 在“确定”命令按钮的 Click 事件(过程)下的程序有两处错误,请改正之; 设置 Text2 控件的有关属性,使用户在输入口令时显示“*”(星号)。(分数:40.00)_正确答案:()解析:(1)在命令窗口输入命令:MODIFY COMMAND query1,在程序文件编
8、辑器窗口中输入如下程序段: *文件 query1.prg 的中程序段* SET TALK OFF CLOSE ALL USE customer ZAP USE eustomer1 DO WHILE !EOF() SCATTER TO arr1 INSERT INTO customer FROM ARRAY arr1 SKIP ENDDO SELECT DISTINCT customer.*; FROM 订货管理!customer INNER JOIN 订货管理!order_list; ON customer.客户号=order_list.客户号; ORDER BY customer.客户号;
9、INTO TABLE results.dbf * 在命令窗口输入命令:DO query1,程序将查询结果自动保存到新表 results 中。 (2)在命令窗口输入命令:MODIFY FORM form1,打开表单 form1.scx。 双击表单中的“确定”命令按钮,进入命令按钮的事件编辑窗口,在 Click 事件中的程序段如下: *“确定”命令按钮 Click 事件的源程序* &功能:如果用户输入的用户名和口令一致,则在提示信息后关闭该表单; &否则重新输入用户名和口令。 If Thisform.Text1=Thisform.Text2 &*Error* WAIT“欢迎使用”WINDOW TI
10、MEOUT/1 Thisform.Close &*Error* Else WAIT“用户名或口令不对,请重新输入”WINDOW TIMEOUT1 Endif * 修改程序中的错误,正确的程序如下;*“确定”命令按钮 Click 事件修改后的程序* If Thisform.Text1.Text=Thisform.Text2.Text & 缺少属性 Text WAIT“欢迎使用”WINDOW TIMEOUT1 Thisform.Release & 语法错误,关闭表单应该为 Release Else WAIT“用户名或口令不对,请重新输入”WINDOW TIMEOUT1 Endif * 选中表单中的
11、第二个文本框控件(Text2),在属性面板中修改该控件的 PassWordChar 属性值为“*”,如图 3-54 示,保存修改结果。 解析 本大题 1 小题考查了 SQL 的基本查询语句,在此处需要注意的是当表建立了主索引或候选索引时,向表中追加记录必须用 SQL 的插入语句,而不能使用 APPEND 语句,为避免出现重复记录,可加入短语 DISTINCT;2 小题表单控件的程序改错中,应注意常用属性和方法的设置,例如关闭表单控件不是通过 CLOSE,而是利用Release,对于文本框控件的属性,比较重要的一个文本输出属性为 PasswordChar,控制输出显示的字符。三、B三 综合应用题
12、/B(总题数:1,分数:30.00)3.使用报表设计器建立一个报表,具体要求如下: 报表的内容(细节带区)是 order_list 表的订单号、订购日期和总金额。 增加数据分组,分组表达式是“order_list.客户号”,组标头带区的内容是“客户号”,组注脚带区的内容是该组订单的“总金额”合计。 增加标题带区,标题是“订单分组汇总表(按客户)”,要求是 3 号字、黑体,括号是全角符号。 增加总结带区,该带区的内容是所有订单的总金额合计。最后将建立的报表文件保存为 report1.frx 文件。 提示:在考试的过程中可以使用“显示预览”菜单查看报表的效果。(分数:30.00)_正确答案:()解
13、析:首先打开表设计器,为 order_list 表按“客户号”字段建立一个普通索引。 在命令窗口输入命令:CREATE REPORT report1,打开报表设计器。右击报表空白区,选择快捷菜单命令“数据环境”,在数据环境设计器中,将数据表 order_list 添加到数据环境中,如图 3-55 所示。然后将数据环境中order_list 表中的订单号、订购日期和总金额 3 个字段依次拖放到报表的细节带区,如图 3-56 所示。 选择菜单命令“报表”“数据分组”,系统弹出“数据分组”对话框,在对话框中输入分组表达式“order_list.客户号”,关闭对话框回到报表设计器,可以看到报表设计器中
14、多了两个带区:组标头和组注脚带区,在数据环境中,将 order_ list 表中的“客户号”字段拖放到组标头带区,并在报表控件栏中单击“标签”按钮,添加一个标签“客户号”,以同样的方法为组注脚带区增加一个“总金额”标签,并将“总金额”字段拖放到该带区,如图 3-57 所示。双击域控件“总金额”,系统弹出“报表表达式”对话框,在对话框中单击命令按钮“计算”,在弹出的对话框中选择“总和”单选项,关闭对话框,回到报表设计器。 选择菜单命令“报表”“标题/总结”,弹出“标题/总结”对话框,在对话框中勾选“标题带区”和“总结带区”复选框,为报表增加一个标题带区和一个总结带区;然后设置标签字体,选择菜单命
15、令“报表”“默认字体”,在弹出的“字体”对话框中,根据题意设置 3 号黑体字,接着通过“报表控件”工具栏,为总结带区添加一个标签“订单分组汇总表(按客户)”;最后在总结带区添加一个标签“总金额”,再添加一个域控件,在弹出的“报表表达式”中为域控件设置表达式为“order_ list总金额”,在“格式”对话框中选择“数值型”单选项,如图 3-58 所示。单击命令按钮“计算”,在弹出的对话框中选择“总和”单选项,关闭对话框,回到报表设计器。保存报表,利用常用工具栏中的“预览”按钮,可预览报表效果。 解析 本大题考查的主要是利用报表设计器完成报表的设计,本题涉及到报表分组、标题/总结的设计,以及字体的设计,这些都可以通过“报表”菜单中的命令来相应的完成,其他注意的地方是数据表和字段的拖动,以及域控件表达式的设置。