在考生文件夹下已有一个菜单文件mymenu.mnx,运行相应的菜单程序时会在当前VFP系统菜单的末尾追加一个“考试”子菜单,如图3-9所示(在菜单设计器环境下,使用“常规选项”命令打开相应对话框,在“位置”中指定“追加”)。 在考生文件夹下还有一个表单文

admin2017-03-29  41

问题 在考生文件夹下已有一个菜单文件mymenu.mnx,运行相应的菜单程序时会在当前VFP系统菜单的末尾追加一个“考试”子菜单,如图3-9所示(在菜单设计器环境下,使用“常规选项”命令打开相应对话框,在“位置”中指定“追加”)。

在考生文件夹下还有一个表单文件myform.scx,表单中包含一个标签、一个文本框和两个命令按钮,如图3-10所示。

现在请按要求实现菜单项和命令按钮的相关功能。菜单命令“统计”和“退出”的功能都通过执行过程完成。菜单命令“统计”的功能是运行myform表单。菜单命令“退出”的功能是恢复标准的系统菜单。单击“确定”按钮要完成的功能是:从customers、orders、orderitems和goods表中查询金额大于等于用户在文本框中指定的金额的订单信息。查询结果依次包含订单号、客户号、签订日期、金额四项内容,其中金额为该订单所签所有商品的金额之和。各记录按金额降序排序,金额相同按订单号升序排序。查询去向为表tabletwo。单击“关闭”按钮要完成的功能是:关闭并释放所在表单。最后,请运行菜单程序、打开表单,然后在文本框中输入1000,单击“确定”按钮完成查询统计。

选项

答案步骤1:打开菜单文件mymenu.mnx文件,增加两个子菜单向:统计和退出,“结果”设置均为“过程”,并设置这两个菜单项的“主菜单”为“考试”,如图4—67所示。 [*] 步骤2:在“统计”菜单的“过程”中输入命令:do form myform 步骤3:在“退出”菜单的“过程”中输入命令:set sysmenu to default 步骤4:保存菜单文件。 步骤5:通过工具栏的“打开”按钮打开myform.scx文件,进入表单设计器环境。 步骤6:双击“设置”按钮,进入按钮的Click事件代码编辑界面,输入如下面的代码: je= val (Thisform.Textl.Value) SELECT Orders.订单号,Customers.客户号,Orders.签订日期; sum (Orderitems.数量*Goods.单价)AS金额; FROM customers INNER JOIN orders; INNER JOIN orderitems; INNER JOIN goods ; ON Orderitems.商品号= Goods.商品号; ON Orders.订单号=Orderitems.订单号; ON Customers.客户号=Orders.客户号; GROUP BY Orders.订单号; HAVING金额>=je; ORDER BY 4 DESC,Orders.订单号; INTO TABLE tabletwo.dbf 步骤7:双击“关闭”按钮,进入其Click事件代码编辑界面,输入如下代码:this form.release 步骤8:保存表单。运行菜单程序和表单,在表单的文本框输入1000,单击“确定”按钮完成统计查询。 菜单的设计和使用、表单的设计和使用、控件事件代码。

解析 本大题考查了菜单设计、对象事件代码编写和SQL语句,。
题目要求从customers、orders、orderitems和goods表中查询金额大于等于用户在文本框中指定的金额的订单信息,因此SQL查询中需要首先计算处金额,然后根据金额和文本框的输入进行比较。
转载请注明原文地址:https://kaotiyun.com/show/GeIp777K
0

最新回复(0)