VFP系统开发与程序连编.ppt

上传人:牧羊曲112 文档编号:5452157 上传时间:2023-07-08 格式:PPT 页数:51 大小:290.49KB
返回 下载 相关 举报
VFP系统开发与程序连编.ppt_第1页
第1页 / 共51页
VFP系统开发与程序连编.ppt_第2页
第2页 / 共51页
VFP系统开发与程序连编.ppt_第3页
第3页 / 共51页
VFP系统开发与程序连编.ppt_第4页
第4页 / 共51页
VFP系统开发与程序连编.ppt_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《VFP系统开发与程序连编.ppt》由会员分享,可在线阅读,更多相关《VFP系统开发与程序连编.ppt(51页珍藏版)》请在三一办公上搜索。

1、VFP系统开发与程序连编,临沧市技工学校甘云平,概论,VFP系统开发与程序连编作为VFP数据库系统课程的最后一章节,结合实例,我们将重点讲解VFP系统开发的流程,同时将有关的软件工程、数据库设计等知识融入其中。作为本课程的最后内容,要求学生重点掌握数据库应用系统的开发过程,学会利用VFP进行小型数据库应用系统的开发。,数据库应用系统概论,数据库应用系统根据以数据为中心和以处理为中心可分为两类:前者以提供数据为目的,重点在数据采集、建库及数据库维护等工作;后者虽然也包含这些内容,但重点是使用数据,即进行查询、统计、打印报表等工作,其数据量比前者小得多。以处理为中心的数据库应用系统适用于一般企事业

2、单位。,第一节、数据库应用系统的开发步骤,以处理为中心的数据库应用系统开发流程图,需求分析,数据分析,功能分析,数据库设计,应用程序设计,系统试运行(联调),满意否?,系统运行与维护,Y,N,N,一、需求分析,系统需求包括对数据的需求和对应用功能的需求两方面内容,进行需求分析应注意以下问题:确定需求必须建立在调查研究的基础上,包括访问用户,了解人工系统模型,采集和分析有关资料等工作。需求分析阶段应让最终用户更多地参与。,第一节、数据库应用系统的开发步骤,认真细致地规划将节省时间、精力和资金,二、数据库设计,VFP通过设置数据库来统一管理数据,组织严密的数据库能为以后的应用程序设计带来方便。1、

3、创建数据库的优点定义数据词典、建立表的关系等2、数据库的逻辑设计与物理设计3、代码设计代码设计的概念不同于编码(编程),为维持数据的一致性和提供操作的方便性,应用系统中常需为某类数据设置一套代码。,第一节、数据库应用系统的开发步骤,三、应用程序设计,以处理为中心的应用系统中,应用程序设计和数据库设计两方面的需求是相互制约的,在设计时,我们必须两者考虑。,第一节、数据库应用系统的开发步骤,三、应用程序设计,1、用户界面设计与编码2、数据输出设计包括查询、报表、标签和通过ActiveX控件来共享其它应用程序信息。3、数据库维护功能包括对数据库以及自由表的数据进行添加、删除、修改等。,第一节、数据库

4、应用系统的开发步骤,三、应用程序设计,4、构造VFP应用程序VFP将具有.app扩展名的文件称为应用程序(application),通常所说的应用程序是一种统称,例如具有.exe文件扩展名的可执行程序(executable program)也是一种应用程序。,第一节、数据库应用系统的开发步骤,4、构造VFP应用程序VFP的运行环境有两种。一种是VFP开发环境(启动VFP后的状态),各种程序都可在这种环境中用DO命令运行。例如:DO EX 运行扩展名为.prg的命令文件 DO EX.mpr 运行菜单程序 DO FORM EX运行扩展名为.scx的表单 DO EX.app运行应用程序 DO EX.

5、exe运行可执行程序,第一节、数据库应用系统的开发步骤,三、应用程序设计,4、构造VFP应用程序另一种环境是Windows中除VFP之外的环境,在上述各种程序中,仅.exe程序能脱离VFP独立运行。,第一节、数据库应用系统的开发步骤,三、应用程序设计,VFP应用程序的总体组成(1)应用程序主文件可以是.prg文件、菜单程序.mpr或表单文件.scx作用:对应用程序的环境进行初始化作为应用程序执行的起点控制事件循环恢复先前环境,第一节、数据库应用系统的开发步骤,三、应用程序设计,VFP应用程序的总体组成(2)初始化环境设置状态状态包括SET命令状态、窗口状态等如:SETTALKOFF初始化变量,

6、建立公共变量建立应用的一条默认路径打开需要的数据库、表及索引,第一节、数据库应用系统的开发步骤,三、应用程序设计,VFP应用程序的总体组成(3)显示初始的用户界面初始的用户界面可以是菜单或表单,通常为应用程序的封面或登录界面。如果.prg为主文件,则可用DO命令来调用相应的初始用户界面。,第一节、数据库应用系统的开发步骤,三、应用程序设计,VFP应用程序的总体组成(4)控制事件循环命令格式:READEVENTS功能:开始事件的循环,等待用户操作说明:*仅.exe应用程序需要建立事件循环,在VFP开发环境中运行的应用程序不必使用该命令。如:DOex.mpr调用主菜单 READ EVENTS显示菜

7、单,开始处理用户事件或:DO FORM ex调用主表单 READ EVENTS显示主表单,开始处理用户事件,第一节、数据库应用系统的开发步骤,三、应用程序设计,VFP应用程序的总体组成(4)控制事件循环注意:如果不设置READEVENTS命令,程序在VFP环境中能够正常运行,但在WINDOWS环境中刚开始就结束,即经典的一闪而过现象。必须在应应用程序中用CLEAREVENTS命令来结束事件的循环,使VFP能执行后继命令,通常我们将CLEAREVENTS命令设置在表单的“退出”按钮中或菜单中。,第一节、数据库应用系统的开发步骤,三、应用程序设计,VFP应用程序的总体组成(5)恢复先前的环境退出应

8、用程序时,应恢复初始环境以前的环境。,第一节、数据库应用系统的开发步骤,三、应用程序设计,综上所述,我们可以制作一个简单的.prg主文件。set talk off 设置不显示命令结果set defa to d:QCGL设置文件默认路径Clear all清除所有变量和屏幕信息DO FORMsetup调用主表单DO mainmenu.mpr调用主菜单READ EVENTS开始事件的循环DO cleanup退出之前,用cleanup.prg恢复先前环境,如果这里用quit命令,则环境恢复代码需在如“退出”菜单项中设置。,第一节、数据库应用系统的开发步骤,三、应用程序设计,四、软件测试,在设计的过程中

9、和设计结束时,我们都必须对应用反复测试,以便纠正错误,达到预定功能。在系统投入试运行时,我们需装入少量数据,等确认没有重大问题后再装入大批数据,以免导致较大的返工。,第一节、数据库应用系统的开发步骤,五、应用程序发布,为保障开发者的知识产权,应用程序最好能加密,并且能在Windows环境中独立运行,这就需要将应用程序“连编”为.exe程序,并进行应用程序发布。,第一节、数据库应用系统的开发步骤,六、系统运行与维护,试运行的结束标志着系统开发的基本完成,但是只要系统还在使用,就可能常需要调整、修改和升级,以便使应用程序更加完善。,第一节、数据库应用系统的开发步骤,第二节、“汽车修理管理系统”的开

10、发,本节以“汽车修理管理系统”为实例,简明描述开发一个VFP应用程序系统的的过程。,一、需求分析,某汽车修理厂根据业务发展的需要,决定建立一个“汽车修理管理系统”,以取代人工管理,开发的目的如下:能对汽车修理有关的各类数据进行输入、修改和查询。编制季度零件订货计划打印汽车修理发票和工资月报表,“汽车修理管理系统”的开发,用户提出开发应用系统的要求后,软件开发者应通过调查研究归纳出目标系统的数据需求和功能,一、需求分析,1、数据需求在调研的过程中,用户提供了该系统所需的输入、输出单据。输入单据包括修车登记单、汽车修理单、零件入库单和零件出库单等4种;输出单据包括季度零件订货计划、汽车修理发票和工

11、资月报表等3种。以上单据其结构如下:,“汽车修理管理系统”的开发,一、需求分析,“汽车修理管理系统”的开发,修车登记单,编号:5001,日期:04/12/11,一、需求分析,汽车修理单,“汽车修理管理系统”的开发,登记单编号:5005,汽车牌号:云S33333,完工日期:04/11/28,修理工:李平,一、需求分析,零件入库单,“汽车修理管理系统”的开发,日期:,验收人:,一、需求分析,零件出库单,“汽车修理管理系统”的开发,编号:,日期:,修理工:,一、需求分析,第1季度零件订货计划,“汽车修理管理系统”的开发,零件订货计划,一、需求分析,2、功能需求数据登记对修车登记单、汽车修理单、零件入

12、库单和零件出库单及时登记,并能够随时修改。查询能查询登记表、修理单、汽车、车主、修理工、零件库存的有关数据。编制并显示季度零件订货计划编制零件订货计划需要找出要订货的零件,订货条件为:零件库存量最低库存量订货量可由用户输入或修改,“汽车修理管理系统”的开发,一、需求分析,打印发票发票中除包含顾客、汽车及修理项目等数据外,还要计算出修车费,修车费包括修理费和零件费,按下列公式计算:零件费零件价格x耗用数量修理费小时工资x修理工时x3总计零件费修理费不难看出,发票包含的信息来自修车登记单、汽车修理单和零件出库单等各种单据。发票示例如图:,“汽车修理管理系统”的开发,一、需求分析,汽车修理发票,“汽

13、车修理管理系统”的开发,日期:04/10/25,一、需求分析,打印修理工工资月报表某修理工的月工资修理小时x小时工资,“汽车修理管理系统”的开发,二、数据库设计,1、逻辑设计设计从分析输入数据着手,输入数据中的某类相关数据可以归纳为一个表。对于同时调用的若干表,应使它们符合关联要求。如果发现有的输出数据不能从输入数据导出,须继续向用户征集数据。经过归纳,我们得出以下各表:,“汽车修理管理系统”的开发,二、数据库设计,(1)修理单:XLD(编号、牌号、工号、修理项目、修理小时、送修日期、完工日期)(2)汽车:QC(牌号、型号、生产厂、车主名)(3)车主:CZ(车主名、地址、电话)(4)修理工:X

14、LG(工号、姓名、地址、电话、出生日期、进厂日期、小时工资)(5)零件用量:LJYL(编号、零件号、数量)(6)零件库存:LJKC(零件号、零件名、成本、价格、库存量、最低库存、订货量),“汽车修理管理系统”的开发,二、数据库设计,根据系统数据处理需要,我们将这些表关联起来,如图所示:,“汽车修理管理系统”的开发,修理单,汽车,车主,修理工,零件用量,零件库存,牌号,工号,编号,车主名,零件号,二、数据库设计,两点说明:(1)为同时调用不同表中的数据,须将它们关联,故而有时要在表中补充字段。(2)数据库设计须注意合理性。若将不同类的数据放进同一表中,可能会产生数据冗余。例如:QC.DBF与CZ

15、.DBF的字段合并为一个表,由于一个车主可拥有多辆车,在登记这些汽车的牌号、型号和生产厂的同时也要登记车主名、地址和电话,那么这些记录中的车主信息将重复记载,数据冗余会多占存储容量,更会破坏数据的一致性,故我们将它们分为两个表来处理。,“汽车修理管理系统”的开发,二、数据库设计,2、物理设计(1)修理单(E:qcxlxld.dbf)结构:Xld(编号c(4),牌号c(8),修理项目c(12),送修日期d,完工日期 d,工号c(4)普通索引,修理小时n(4,1)(2)汽车(E:qcxlqc.dbf)结构:Qc(牌号c(8)普通索引,型号c(6),生产厂c(20),车主名c(8),“汽车修理管理系

16、统”的开发,二、数据库设计,(3)车主(E:qcxlcz.dbf)结构:CZ(车主c(8)普通索引,地址c(16),电话c(7)(4)修理工(E:qcxlxlg.dbf)结构:XLG(工号c(4)普通索引,姓名c(8),地址c(16),电话c(7),出生日期d,进厂日期d,小时工资n(5,2)),“汽车修理管理系统”的开发,二、数据库设计,(5)零件用量(E:qcxlljyl.dbf)结构:LJYL(编号c(4)普通索引,零件号c(6),数量n(2))(6)零件库存(E:qcxlljkc.dbf)结构:LJKC(零件号c(6)普通索引,零件名c(10),成本n(8,2),价格n(8,2),库存

17、量n(3),最低库存n(3),订货量n(3)),“汽车修理管理系统”的开发,除上述6个表外,零件入库、出库时还需有暂存表。零件入库表为LJRK.DBF,其结构与LJKC.DBF相同。零件出库表LJCK.DBF的结构为:ljck(零件号c(6),数量n(2)。,二、数据库设计,“汽车修理管理系统”的开发,1、总体设计,三、应用程序设计,“汽车修理管理系统”的开发,汽车修理管理系统,登记,零件管理,查询,打印,修车登记,汽车修理,修理工登记,零件订货计划,零件入库,零件出库,发票,修理工工资月报,退出,2、初始用户界面菜单设计(QCXLCD.MPR),三、应用程序设计,“汽车修理管理系统”的开发,

18、登录与密码校验界面(FM.SCX)登录界面的设计要求简洁,密码输入错误次数为3次,超过3次,系统自动关闭。密码 校验,我们采用password.dbf来存储用户所输入用户名和密码,这样做的好处是:我们在应用程序中可实现对用户名和密码的管理,如修改密码、添加用户等操作。,三、应用程序设计,“汽车修理管理系统”的开发,主文件(QCXL.PRG)数据环境(SJHJ.VUE)利用数据工作期窗口来建立,在数据工作期未关闭时,可选定文件菜单的“另存为”命令来建立视图文件,系统默认视图文件的扩展名为.vue。,三、应用程序设计,“汽车修理管理系统”的开发,二、应用程序设计,“汽车修理管理系统”的开发,利用数据工作期窗口建立的SJHJ.VUE,三、应用程序设计,“汽车修理管理系统”的开发,三、应用程序设计,“汽车修理管理系统”的开发,三、应用程序设计,“汽车修理管理系统”的开发,三、应用程序设计,“汽车修理管理系统”的开发,三、应用程序设计,“汽车修理管理系统”的开发,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号