ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:288.93KB ,
资源ID:5632586      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5632586.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(系统菜单设计和数据库与表的设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

系统菜单设计和数据库与表的设计.docx

1、系统菜单设计和数据库与表的设计实验二 系统菜单设计和数据库与表的设计【实验目的和要求】通过本次实验,学习系统菜单设计的基本过程和方法,通过数据库及表的设计学习系统开发中对数据库及表的规划和设计。【建议实验学时】4学时。【实验内容和步骤】一、菜单系统设计 几乎在所有的应用程序中,都要为用户提供一个菜单系统,菜单系统是用户界面的重要组成部分。菜单反映了程序的基本功能,而掩盖了程序内部复杂的代码细节,用户只需选择菜单项就能方便地完成非常繁杂的任务。这无疑极大地方便了用户,提高了工作效率。因此,系统菜单的设计是一项重要的工作。菜单系统是否完善、功能能否满足用户需要、操作是否简易、系统提示是否友好等就成

2、为评价菜单设计的重要指标。 VFP6中提供了许多菜单命令和函数,可以直接设计下拉式菜单、弹出式菜单、快捷菜单等。创建一个完整、合理的菜单系统应当遵循如下步骤: 规划菜单系统,也就是根据程序所应具备的功能和用户的要求,确定使用何种类型的菜单、菜单中应当包括哪些菜单标题(菜单名称),在每个菜单标题下包括哪些菜单项以及每个菜单项执行怎样的命令。 利用菜单设计器创建规划好的菜单系统。在VFP6中有许多命令可以用来创建不同的菜单,菜单设计器因其功能全面、使用方便而最为常用。 生成菜单程序并运行它。如果存在不足或错误,可以继续使用菜单设计器修改菜单设计,直到满意为止。 本实验主要以管理信息系统教材第八章M

3、IS开发案例 市场营销子系统开发的内容为基础,并主要以其中“系统管理”和“销售管理”子系统为例,介绍利用菜单设计器创建系统菜单的设计过程。 启动菜单设计器 打开自建的项目mis+学号,在其中的“其他”选项卡中选中“菜单”,然后单击项目管理器窗口中右侧的“新建”按钮,则出现如图1.20所示的“新建菜单”对话框。图1.20 “新建菜单”对话框单击“新建菜单”对话框中的“菜单”按钮,则进入“菜单设计器”,如图1.21所示,用来设计一个如同VFP6系统主菜单的下拉式菜单系统 (如单击“快捷菜单”则进入“快捷菜单设计器”,用来设计一个单击鼠标右键即可激活的快捷菜单。快捷菜单的菜单选项与被右击的对象有关。

4、从外观看,两种菜单设计器并没有什么不同,操作方法也基本一致,所以以下只重点介绍用菜单设计器设计应用程序主菜单)。启动菜单设计器后,VFP6的系统菜单将增加一个“菜单”菜单名,并在“显示”系统菜单中增加了“常规选项”和“菜单选项”两个选项。菜单设计器的使用1输入菜单名称菜单名称是指显现于菜单横向菜单栏上的菜单标题或者出现于下拉菜单中的选项名称。在“菜单设计器”窗口中的“菜单名称”列中依次输入菜单标题:系统管理、合同管理、销售管理、客户信息管理、市场信息管理、销售人员管理、广告管理、售后服务管理、退出系统,如图1.21所示。图1.21 菜单设计器窗口 2指定菜单功能 在菜单设计器窗口中的“结果”列

5、中,可选择指定菜单名称的类型,共有4种类型可供选择,本例中主要用到3种,在此略作介绍。 子菜单:这是默认类型,该类型使得能够在当前菜单名称下建立下级菜单。本例中除了标题为“退出系统”的菜单外,其他几个菜单都选择设置为“子菜单”。 过程:过程是以procedure开头的程序段,可以把多个过程集中写在一个源程序文件中。如果菜单选项设置为“过程”类型,那么该菜单选项将执行一个过程代码,过程代码将成为菜单源文件的一部分。这里把菜单标题为“退出系统”的菜单类型设置为“过程”。 命令:如果菜单类型设置为“命令”,则当前菜单项的功能将只是执行一条VFP6命令。如BROWSE命令,或DO 等,而后者可以执行任

6、意复杂的操作。 本系统的各菜单名称的功能类型设置如图1.21所示。 3定义菜单标题的键盘访问键 在菜单标题名称的左侧、右侧或内部,往往可以看到带有下划线的字母,这就是键盘访问键。在菜单被激活的情况下,只要从键盘输入ALT+菜单名称中带有下划线的字母,就能打开该菜单。 在菜单设计器中,为菜单标题设置键盘访问键的方法是:在菜单名称左侧、右侧或内部输入“字母”即可,该字母就是键盘访问键。本例中,各菜单名称的键盘访问键的设置如图1.21所示,设计者也可根据自己的设计思路自由选择。4创建和修改子菜单并为菜单项指定功能代码 在菜单设计器窗口中,各菜单名称的“结果”列设置为“子菜单”的菜单,右边有一个“创建

7、”按钮。单击该按钮,就出现与刚才进入菜单设计器相同的画面,只是在“菜单级”选择框中的原来显示的“菜单栏”变成菜单标题的名称。这说明进入了菜单标题名称下的子菜单的设计过程。本例主要以系统管理和销售管理两个子模块为例,介绍营销管理信息系统的开发,因此以后的设计操作过程,主要介绍这两个菜单及其功能的实现,其他菜单及其功能设计,就不再介绍,可根据教材内容并参考系统管理、销售管理两个模块的设计进行开发。在如图1.21所示的菜单设计器窗口中,将“系统管理”菜单名称的结果类型设置为“子菜单”,单击右边的“新建”按钮,就进入“系统管理”菜单标题的下级菜单的设计窗口,如图1.22所示。图1.22菜单设计器窗口

8、在图1.22所示的菜单设计器窗口中,在“菜单级”选择框中显示为“系统管理S”,这表明在此窗口中设计的菜单是菜单栏中“系统管理”菜单名称的下级子菜单。在“菜单名称”栏中分别输入“数据备份(B)”、“数据恢复(R)”、“-”、“代码管理(C)”、“-”、“密码管理(P)”、“-”、“退出系统(X)”菜单项名称(菜单名称前的“”符号不用输入,该符号只是本手册编写者用来标注在整个系统菜单中,已设计好范例的菜单部分。菜单项名称如是“-”,则当菜单运行时,会在相应的菜单项位置,显示一条将相邻两菜单项隔开的分隔横线。在一般的菜单设计中,其作用往往是按功能相近的原则把菜单选项进行分组显示),并在其对应的“结果

9、”栏中分别选择“命令”、“命令”、“子菜单”、“子菜单”、“子菜单”、“过程”、“子菜单”、“过程”,在“数据备份”和“数据恢复”菜单项的“结果”栏右边的输入框中分别输入命令“do form databak”和“do form datarstore”(此两条命令就是让系统在当用户分别选择该菜单项时,分别调用名为“databak”和“datarstore”的表单来完成对应的功能)。 选中“代码管理”菜单项,单击“结果”栏右边的“创建”按钮,就进入“代码管理”的下级子菜单设计窗口,如图1.23所示。图1.23 菜单设计器窗口 在图1.23所示的窗口中,在“菜单名称”栏中分别输入“地区代码管理”、“

10、产品代码管理”、“客户代码管理”,将其“结果”都设置为“过程”。单击“过程”右边的“创建”按钮(如过程已经创建,则是“编辑”按钮)就会弹出过程代码编辑窗口,如图1.24所示。图1.24 过程编辑窗口 用户可在窗口中输入菜单项对应的过程代码以完成与该菜单项相应的任务。代码编辑完成后,关闭窗口即可。虽然这里输入的程序代码是菜单文件中的一个过程,但不必书写procedure,因为系统会自动添加。 “地区代码管理”菜单项的过程代码为: use diqudaima &打开地区代码表packusedo form dqdm &执行表单文件 “产品代码管理”菜单项的过程代码为: use chpdaima &打

11、开产品代码表packusedo form cpdm &执行表单文件 “客户代码管理”菜单项的过程代码为:use kehu &打开客户信息表packusedo form kehugl &执行表单文件 在“代码管理”的子菜单设计完成后,在图1.23所示的窗口的“菜单级”选择框中选择“系统管理”项,则又返回图1.22所示的“系统管理”菜单的子菜单设计窗口。再按同样方法分别为“密码管理”和“退出系统”菜单项编写过程代码。 “密码管理”菜单项的过程代码为:set dele onuse passdele all for len(alltrim(yhm)=0packloca all for alltrim(

12、yhm)=alltrim(yhname)if alltrim(yhlx)=系统管理员 use do form mmgl.scx else nAnswer=messagebox(很抱歉!您不是系统管理员无权查阅和更改用户名;和密码!,0,警告!) use returnendif “退出系统”菜单项的过程代码为:ans=messagebox(确信要退出系统吗?,4,确认信息)if ans=6 close all clear event quit else returnendif 当“系统管理”菜单的子菜单设计完成后,在“菜单级”选择框中选择“菜单栏”项,则又返回如图1.21所示的菜单设计器窗口。在

13、图1.21所示的菜单设计器窗口中,选中“销售管理”菜单名称,单击其“结果”栏右边的“创建”按钮,则进入如图1.25所示的其下级子菜单的设计窗口。图1.25 菜单设计器窗口 “销售管理”的子菜单设计如图1.25所示。再按前述方法分别设计各菜单项的下级子菜单,并为相应的菜单项添加命令代码或过程代码。 “销售信息”、“往来账款”、“收账政策”菜单项的子菜单设计分别如图1.26、1.27和1.28所示。图1.26 “销售信息”菜单项的子菜单设计图1.27 “往来账款”菜单项的子菜单设计图1.28 “收账政策”菜单项的子菜单设计 “销售统计”菜单项的命令代码为:do form xshtj &执行名为xs

14、htj的表单 “销售信息编辑”子菜单项的过程代码为:use xiaoshoupackusedo form xiaoshlr “销售信息查询打印”子菜单项的命令代码为:do form xshcx “往来账款编辑”子菜单项的过程代码为:use zhangkpackusedo form zhangklr “往来账款查询打印”子菜单项的命令代码为:do form zhangkcx “收账政策编辑”子菜单项的过程代码为:use shouzhpackusedo form shouzhlr “收账政策查询打印”子菜单项的命令代码为:do form shouzhcx本例系统中其他菜单的设计,可参考上述方法进行

15、。5为菜单选项定义快捷键在系统菜单中,往往可以看到有的菜单选项右侧有Ctrl+或Alt+的字样,例如“文件”菜单中的“新建Ctrl+N”等,这就是菜单的快捷键。不必层层激活菜单,只要按下快捷键,就能执行快捷键所对应的菜单选项命令。在此以图1.25所示的菜单设计器窗口中的“销售统计”菜单项为例加以说明。单击选中“销售统计”菜单项,单击其对应的“选项”栏下方的按钮,将出现如图1.29所示的“提示选项”对话框。图1.29 “提示选项”对话框 鼠标单击“键标签”文本框(这是必须的),再通过键盘输入组合键Alt+(字母、数字、符号),或组合键Ctrl+、Alt+F1F12、Ctrl+F1F12,或直接通

16、过键盘敲击F1F12功能键,则在“键标签”框中自动记录并显示键盘输入的快捷键。如图1.30所示(此例中按下的Ctrl+S键)。图1.30 “提示选项”对话框最后单击“确定”按钮,就设置好了“销售统计”菜单项的快捷键(注意:所有快捷键是不能重名的)。其他菜单项的快捷键的设置,请参照此方法自己完成。 6进一步完善菜单程序 常规选项的主要操作。在菜单设计器窗口打开的情况下,选择系统“显示”菜单中的“常规选项”,会出现如图1.31所示的“常规选项”对话框。图1.31 “常规选项”对话框 为菜单栏中不曾编写程序代码或子菜单项的菜单名称编写统一的代码。其方法是:在“常规选项”对话框的“过程”编辑框中输入需

17、要执行的程序代码,或者是单击“编辑”按钮,再单击“常规选项”对话框的“确定”按钮,激活“编辑”窗口,在“编辑”窗口中输入需要执行的过程代码。这个过程是对整个菜单系统都有效的全局代码。如果菜单栏中有若干个菜单名称不曾添加子菜单或编写程序代码,而在运行菜单时又被选中了,那么就会执行在这里编写的过程代码。这往往用于调试菜单系统。本例中该过程代码如下:=messagebox(对不起,该选项还未完工,暂时还不能使用!,0,系统提示)return设置主菜单的显示位置。设计的主菜单在运行时显示的位置可以在“常规选项”对话框中指定。在图1.31所示的“常规选项”对话框的“位置”框中,设计者可通过单选框的选择来

18、设置主菜单的显示位置。现说明如下:“替换”:程序运行时将用设计的主菜单取代VFP6系统菜单。“追加”:程序运行时将把所设计的主菜单追加到VFP6系统菜单的后面。“在之前”:程序运行时将把所设计的主菜单插入到指定的VFP6系统菜单标题的前面。“在之后”:程序运行时将把所设计的主菜单插入到指定的VFP6系统菜单标题的后面。上面后3种位置都将使得VFP6菜单成为应用程序菜单的一部分。在本例中选择“替换”。“顶层表单”检查框的设置。如果不选择“顶层表单”检查框,只允许设计的菜单在VFP6页框中使用;如果选择,则允许菜单在顶层表单中使用,从而成为一个SDI菜单。本例中不选择“顶层表单”检查框。菜单选项操

19、作。在菜单设计器窗口打开的情况下,在“菜单级”选择框中选择“菜单栏”,再选择系统“显示”菜单中的“菜单选项”,会出现如图1.32所示的“菜单选项”对话框。图1.32 “菜单选项”对话框在图1.32所示的“菜单选项”对话框的“过程”编辑框中可以输入任何程序代码。本程序代码的用途是作为对话框中“名称”文本框所指定菜单级的各选项的公用执行代码,也就是当运行菜单时如果选择了不曾为之编写代码的该级菜单的菜单项,则执行本过程代码。这些代码只是局部于本级菜单的过程,只在调用本级菜单时才起作用。本例中为该过程指定的菜单级是菜单栏,则意味着当主菜单在运行时,只要用户选择了任一菜单名称下的任一不曾编写代码的菜单项

20、,都会执行该代码,这为调试菜单程序提供了很大的方便。该过程代码内容为:=messagebox(对不起,工程还未完工,暂时还不能使用!,0,系统提示)return当然,如果在选择执行“菜单选项”之前,先在菜单设计器窗口中的“菜单级”选择框中选择其他子菜单,则在“菜单选项”对话框中的“名称”文本框中相应显示出所选择的菜单级的名称,在其“过程”编辑框中编辑的过程代码只对该级菜单有效。当上述操作都完成后,执行存盘操作或关闭菜单设计器,系统都会出现对话框询问是否保存,如选择“是”,则会出现“另存为”对话框, 保存到自建的文件夹中,文件名取名为mainmenu,单击“保存”按钮即可。生成菜单程序用菜单设计

21、器生成的菜单文件扩展名是.mnx,这种文件是不能直接执行的,设计者必须把它转换成扩展名为.mpr的菜单程序文件。可用下面的两种方法生成菜单程序文件:首先在项目管理器中选择上述设计好的菜单名称mainmenu,然后单击项目管理器的“修改”按钮,进入菜单设计器,选取VFP6系统菜单“菜单”下的“生成”选项,弹出如图1.34所示的“生成菜单”对话框。在“生成菜单”对话框中指定输出的菜单程序文件名为mainmenu.mpr(存放在自建的文件夹中),再单击“生成”按钮就行了。在项目管理器中选择上述设计好的的菜单名称mainmenu,然后单击项目管理器的“运行”按钮,也将自动生成一个.mpr文件。在生成菜

22、单程序文件过程中,如果发现错误,将会出现警告选择框,设计者可根据错误情况自由处理。说明如果设计者想把程序编译成.exe文件,脱离VFP6环境成为独立运行的应用程序,而且菜单是主文件,则必须注意两个问题:必须在菜单的“清理”过程代码中加入命令行read events,而在退出菜单系统的菜单选项的过程或程序代码中必须包括命令行clear events,否则菜单在屏幕上一晃即逝而不能应用。二、数据库及表的设计 在营销管理信息系统中,系统管理和销售管理两个子系统的功能结构已经体现在设计好的主菜单中。在本实验中要设计两个子系统使用的数据库和表,作为各菜单功能实现的设计基础。 两个子系统使用的表单、数据库

23、及表 1系统管理子系统使用的表单、数据库和表 在系统管理子系统中,又包含了“数据备份”、“数据恢复”、“代码管理”、“密码管理”和“退出系统”子模块。该子系统使用的表单、数据库及表的关系如表1.4所示。表1.4 系统管理子系统各子模块使用的表单、数据库和表子模块名称包含的子菜单调用的表单表单使用的表表所归属的数据库数据备份无databak.scx无无数据恢复无datarstore.scx无无代码管理地区代码管理dqdm.scxdiqudaima.dbfdaima产品代码管理cpdm.scxchpdaima.dbfdaima客户代码管理kehugl.scxkehu.dbfxshgl密码管理无mm

24、gl.scxpass.dbfdaima退出系统无无无无 从表1.4可以看出,系统管理子系统共调用了6个表单,使用了4张表,其中diqudaima.dbf(地区代码)、chpdaima.dbf(产品代码)和pass.dbf(用户密码表)属于daima(代码)数据库,kehu.dbf(客户基本信息表)属于xshgl(销售管理)数据库。 2销售管理子系统使用的表单、数据库和表 销售管理子系统的功能结构参见主菜单的各功能选项。该子系统使用的表单、数据库及表的关系如表1.5所示。表1.5 销售管理子系统各子模块使用的表单、数据库和表子模块名称包含的子菜单调用的表单表单使用的表表所归属的数据库销售信息销售

25、信息编辑xiaoshlr.scxchpdaima.dbfdaimajsfs.dbfxiaoshou.dbfxshglkehu.dbf 销售信息查询打印xshcx.scxxiaoshou.dbfxshgljsfs.dbfdaimaxshcxjg.scxxiaoshoucx.dbf自由表往来账款往来账款编辑zhangklr.scxkxxz.dbfdaimajzbb.dbfkehu.dbfxshglzhangk.dbfzhkwl往来账款查询打印zhangkcx.scxzhangk.dbfzhkwlkxxz.dbfdaimazhangkcxjg.scxzhankcx.dbf自由表收账政策收账政策编辑s

26、houzhlr.scxkehu.dbfxshgl shouzh.dbfzhkwl收账政策查询打印shouzhcx.scxshouzh.dbfzhkwlshouzhcxjg.scxshouzhcx.dbf自由表销售统计无xshtj.scxxiaoshou.dbfxshglxshtjjg.scxxiaoshoutj.dbf自由表 从表1.5可以看出,销售管理子系统直接或间接共调用了11个表单,使用了12张表,其中chpdaima.dbf(产品代码)、jsfs.dbf(结算方式)、kxxz.dbf(款项性质)、jzbb.dbf(记账币别)属于daima(代码)数据库,kehu.dbf(客户基本信息表

27、)和xiaoshou.dbf(销售基本信息表)属于xshgl(销售管理)数据库,Zhangk.dbf(往来账款信息)和shouzh.dbf(收账政策信息)表属于Zhkwl数据库,Xiaoshoucx.dbf(销售查询结果表)、Zhankcx.dbf(往来账款查询结果表)、Shouzhcx.dbf(收账政策查询结果表)和Xiaoshoutj.dbf(销售统计结果表)是自由表。上述4个自由表是程序在运行期间自动创建的,并作为信息输出的依据,是不需要设计者创建的。其余各表均需在设计表单及程序代码之前先行创建好,以备使用。 综合起来,系统管理和销售管理两个子系统设计中,需要创建3个数据库共10 个表。

28、 两个子系统使用的表的结构 两个子系统使用的表的结构及字段说明分别见表1.61.15。表1.6 chpdaima(产品代码)表的字段说明字段名称数据类型数据长度产品代码C12产品名称C40产品规格C16计量单位C6表1.7 diqudaima(地区代码)表的字段说明字段名称数据类型数据长度地区名称C30地区代码C6表1.8 jsfs(结算方式)表的字段说明字段名称数据类型数据长度结算方式C8表1.9 jzbb(记账币别)表的字段说明字段名称数据类型数据长度记账币别C10表1.10 kxxz(款项性质)表的字段说明字段名称数据类型数据长度款项性质C10表1.11 pass(用户密码)表的字段说明

29、字段名称数据类型数据长度字段含义YhmC20用户名YhmmC20用户密码YhlxC14用户类型表1.12 kehu(客户基本信息)表的字段说明字段名称数据类型数据长度客户名称C40客户代码C15客户地址C60地区代码C6客户级别C4行业类别C10客户电话C20联系人C8客户传真C20客户邮编C6开户银行C20备注M4表1.13 xiaoshou(销售基本信息)表的字段说明字段名称数据类型数据长度合同编号C11产品代码C12销售数量N12,2销售单价N10,2折扣率N6,4销售金额N16,2结算方式C6未结算金额N16,2结算期限D8发货单号C16发货日期D8客户代码C15备注M4表1.14 shouzh(收账政策信息)表的字段说明字段名称数据类型数据长度客户代码C15客户名称C40信用等级C6信用标准C20标准数量N12,2折扣率N6,4信用金额N12,2备注M4表1.15 zhangk(往来账款信息)表的字段说明字段名称数据类型数据长度客户代码C15客户名称C40合同期限D8款项性质

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1